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