Analysis  version 7.0 - august 2014
SpecUser2D.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file SpecUser2D.hh
3  *
4  * Déclaration de la classe SpecUser2D qui décrit les
5  * spectres utilisateurs 2D.
6  */
7 //======================================================================
8 
9 #ifndef SPEC_USER2D_HH
10 #define SPEC_USER2D_HH
11 
12 #include "Spec2Dim.hh"
13 
14 //======================================================================
15 /*! \class SpecUser2D
16  *
17  * Classe des spectres utilistaeurs 2D.
18  * Le contenu de l'histogramme associé n'est ni incrémenté ni mis à jour
19  * automatiquement.
20  * Le spectre est laissé à la charge de l'utilisateur.
21  */
22 class SpecUser2D : public Spec2Dim
23 {
24 //----------------------------------------------------------------------
25  /*! \object_doc */
27 //----------------------------------------------------------------------
28 
29  protected:
30 
31  public:
32 
33 //----------------------------------------------------------------------
34 // CONSTRUCTEUR / AFFECTATION / DESTRUCTEUR
35 //----------------------------------------------------------------------
36 
37  // Constructeur
38  SpecUser2D ( const string & spec_name,
39  const u_int nx, const double x1, const double x2,
40  const u_int ny, const double y1, const double y2 );
41 
42  // Constructeur de recopie
43  SpecUser2D ( const SpecUser2D & original );
44 
45  // Destructeur
46  virtual ~SpecUser2D ();
47 
48 //----------------------------------------------------------------------
49 
50  public:
51 
52  // mise à valeur et incrémentation manuelle du spectre
53  virtual bool Increment ( const double x, const double y, const double incr = 1. );
54  virtual bool Increment ( const int ix, const int iy, const double incr = 1. );
55  virtual bool SetValue ( const double x, const double y, const double val );
56  virtual bool SetValue ( const int ix, const int iy, const double val );
57 
58 //----------------------------------------------------------------------
59 
60  // Retourne une chaîne décrivant l'axe X du spectre.
61  virtual string XAxisDefinition ( ) const;
62 
63  // Retourne une chaîne décrivant l'axe Y du spectre.
64  virtual string YAxisDefinition ( ) const;
65 
66 
67  // Retourne l'identificateur du type de spectre.
68  u_int TypeId ( ) const;
69 
70  // Retourne le nom du type de spectre.
71  string Type ( ) const;
72 
73  // Retourne une chaîne décrivant le spectre.
74  virtual string Definition ( ) const;
75 
76  // Ecriture des données du spectre dans une chaîne de définition.
77  virtual string DefinitionString ( ) const;
78 
79 //----------------------------------------------------------------------
80 // pour ROOT...
81  public:
82  /*! Définition à usage de ROOT... */
84 } ;
85 
86 
87 //======================================================================
88 // METHODES INLINE
89 //======================================================================
90 
91 /*! Retourne l'identificateur du type de spectre.
92  */
93 inline u_int SpecUser2D::TypeId ( ) const
94  { return (spectrumTypeUser2D); }
95 
96 /*! Retourne le nom du type de spectre.
97  */
98 inline string SpecUser2D::Type ( ) const
99  { return (SPECTRUM_TYPE_TXT_USER2D); }
100 
101 
102 /*! Fonction qui retourne une chaîne décrivant l'axe X du spectre
103  */
104 inline string SpecUser2D::XAxisDefinition ( ) const
105  { return ( "X = (" + GGetString(Xdim(),dim_len) + ") ["
106  + GGetString(Xmin(),bound_len,bound_prec) + ";"
107  + GGetString(Xmax(),bound_len,bound_prec) + "]" ); }
108 
109 
110 /*! Fonction qui retourne une chaîne décrivant l'axe Y du spectre
111  */
112 inline string SpecUser2D::YAxisDefinition ( ) const
113  { return ( "Y = (" + GGetString(Ydim(),dim_len) + ") ["
114  + GGetString(Ymin(),bound_len,bound_prec) + ";"
115  + GGetString(Ymax(),bound_len,bound_prec) + "]" ); }
116 
117 //======================================================================
118 #endif
ClassDef(SpecUser2D, 0)
virtual double Ymax() const
Definition: Spec2Dim.hh:101
virtual bool SetValue(const double x, const double y, const double val)
Definition: SpecUser2D.cpp:150
virtual void Increment()
Definition: Spectrum.hh:620
Definition: Spec2Dim.hh:23
virtual u_int Ydim() const
Definition: Spec2Dim.hh:91
virtual double Xmax() const
Definition: Spec1Dim.hh:119
virtual string DefinitionString() const
Definition: SpecUser2D.cpp:88
virtual double Xmin() const
Definition: Spec1Dim.hh:114
virtual string XAxisDefinition() const
Definition: SpecUser2D.hh:104
static u_int dim_len
Longueur d'affichage des dimensions.
Definition: Spectrum.hh:237
GObject(SpecUser2D)
static u_int bound_len
Longueur d'affichage des limites de spectre.
Definition: Spectrum.hh:238
static u_int bound_prec
Précision d'affichage des limites de spectre.
Definition: Spectrum.hh:239
u_int TypeId() const
Definition: SpecUser2D.hh:93
virtual u_int Xdim() const
Definition: Spec1Dim.hh:109
virtual string YAxisDefinition() const
Definition: SpecUser2D.hh:112
virtual double Ymin() const
Definition: Spec2Dim.hh:96
Definition: SpecUser2D.hh:22
SpecUser2D(const string &spec_name, const u_int nx, const double x1, const double x2, const u_int ny, const double y1, const double y2)
Definition: SpecUser2D.cpp:26
virtual ~SpecUser2D()
Definition: SpecUser2D.cpp:61
#define SPECTRUM_TYPE_TXT_USER2D
Nom du type de spectre: utilisateur 2D.
Definition: Spectrum.hh:109
string Type() const
Definition: SpecUser2D.hh:98
virtual string Definition() const
Definition: SpecUser2D.cpp:71