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