Analysis  version 7.0 - august 2014
SpecInv.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file SpecInv.hh
3  *
4  * Déclaration de la classe des spectres obtenus par inversion des valeurs
5  * d'un spectre opérande.
6  */
7 //======================================================================
8 
9 #ifndef SPEC_INV_HH
10 #define SPEC_INV_HH
11 
12 #include "SpecOper1.hh"
13 
14 //======================================================================
15 /*! \class SpecInv
16  *
17  * Classe des spectres obtenus par inversion des valeurs
18  * d'un spectre opérande.
19  * Ce type de spectre utilise 3 coefficients:
20  * - S' = a / S0 + b si S0 est différent de 0
21  * - S' = c si S0 ~ 0 (voir SpecOper::epsilon)
22  */
23 
24 class SpecInv : public SpecOper1
25 {
26 //----------------------------------------------------------------------
27  /*! \object_doc */
29 //----------------------------------------------------------------------
30 
31  protected:
32 
33  public:
34 
35 //----------------------------------------------------------------------
36 // CONSTRUCTEUR / AFFECTATION / DESTRUCTEUR
37 //----------------------------------------------------------------------
38 
39  // Constructeur
40  SpecInv ( const string & spec_name, Spectrum * spec,
41  const Double_t c0 = 1.,
42  const Double_t c1 = 0.,
43  const Double_t c2 = 0. );
44 
45  // Constructeur de recopie
46  SpecInv ( const SpecInv & original );
47 
48  // Destructeur
49  virtual ~SpecInv ();
50 
51 //----------------------------------------------------------------------
52 
53  public:
54  // Fonction de mise à jour du spectre (calculés)
55  virtual void Update ( );
56 
57  // Définition d'un spectre du type de la classe
58  static Spectrum * NewSpectrumDef ( const string & sp_name, const string & def_str, const EventManager * evt_mgr, int & error );
59 
60  // Retourne l'identificateur du type de spectre.
61  u_int TypeId ( ) const;
62 
63  // Retourne le nom du type de spectre.
64  string Type ( ) const;
65 
66 //----------------------------------------------------------------------
67 // pour ROOT...
68  public:
69  /*! Définition à usage de ROOT... */
70  ClassDef(SpecInv,0);
71 } ;
72 
73 
74 //======================================================================
75 // FONCTIONS INLINE
76 //======================================================================
77 
78 
79 /*! Retourne l'identificateur du type de spectre.
80  */
81 inline u_int SpecInv::TypeId ( ) const
82  { return (spectrumTypeInv); }
83 
84 /*! Retourne le nom du type de spectre.
85  */
86 inline string SpecInv::Type ( ) const
87  { return (SPECTRUM_TYPE_TXT_INV); }
88 
89 //----------------------------------------------------------------------
90 
91 
92 //======================================================================
93 #endif
string Type() const
Definition: SpecInv.hh:86
ClassDef(SpecInv, 0)
Definition: SpecOper1.hh:20
SpecInv(const string &spec_name, Spectrum *spec, const Double_t c0=1., const Double_t c1=0., const Double_t c2=0.)
Definition: SpecInv.cpp:26
Definition: Spectrum.hh:222
static Spectrum * NewSpectrumDef(const string &sp_name, const string &def_str, const EventManager *evt_mgr, int &error)
Definition: SpecInv.cpp:143
virtual ~SpecInv()
Definition: SpecInv.cpp:72
u_int TypeId() const
Definition: SpecInv.hh:81
#define SPECTRUM_TYPE_TXT_INV
Nom du type de spectre: opération inversion.
Definition: Spectrum.hh:112
GObject(SpecInv)
Definition: EventManager.hh:59
virtual void Update()
Definition: SpecInv.cpp:81
Definition: SpecInv.hh:24