Analysis  version 7.0 - august 2014
Event.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file Event.hh
3  *
4  * Déclaration des méthodes de la classe Event qui décrit
5  * une structure d'événement.
6  */
7 //======================================================================
8 
9 #ifndef EVENT_HH
10 #define EVENT_HH
11 
12 #include "GVectT.hh"
13 #include "Param.hh"
14 
15 //======================================================================
16 /*! \class Event
17  *
18  * Cette classe décrit la structure d'événement, comme un tableau
19  * de paramètres de type variable.
20  */
21 
22 class Event : public GVectT<Param>
23 {
24 //----------------------------------------------------------------------
25  /*! \object_doc */
26  GObject(Event);
27 //----------------------------------------------------------------------
28 
29  /// Codes d'information
30  enum EventInfo
31  {
32  undefinedParam = -1 // paramètre non défini
33  };
34 
35  protected:
36 
37 
38  public:
39 
40 //----------------------------------------------------------------------
41 // CONSTRUCTEUR / AFFECTATION / DESTRUCTEUR
42 //----------------------------------------------------------------------
43 
44  // Constructeur par défaut.
45  Event ( );
46 
47  // Constructeur de recopie.
48  Event ( const Event & );
49 
50  // Operateur d'affectation.
51  Event & operator = ( const Event & );
52 
53  // Destructeur
54  virtual ~Event ( );
55 
56 //----------------------------------------------------------------------
57 
58  // Ajout d'un paramètre
59  Param * AddParam ( const Param & );
60 
61  // Remise à séro d'un événement
62  void Reset ( );
63 
64 //----------------------------------------------------------------------
65 
66  // Ecriture de la structure des paramètres sur la sortie standard.
67  void Print ( ) const;
68 
69  // Ecriture de la structure des paramètres dans un fichier.
70  void Print ( const string &file_name ) const;
71 
72  // Ecriture de la structure des paramètres dans un flux de sortie.
73  void Print ( ostream &os ) const;
74 
75  /// Ecriture de l'événement dans son état actuel (avec les valeurs des
76  // paramètres affectés) sur la sortie standard.
77  void Dump ( const u_int pmin = 0,
78  const u_int pmax = 0,
79  const bool all = false ) const;
80 
81  // Ecriture de l'événement dans son état (avec les valeurs des
82  // paramètres affectés) dans un fichier.
83  void Dump ( const string &file_name, const u_int pmin = 0,
84  const u_int pmax = 0,
85  const bool all = false ) const;
86 
87  // Ecriture de l'événement dans son état (avec les valeurs des
88  // paramètres affectés) dans un flux de sortie.
89  void Dump ( ostream &os, const u_int pmin = 0,
90  const u_int pmax = 0,
91  const bool all = false ) const;
92 
93  // Renvoi l'index (numéro) ou le pointeur d'un paramètre à partir
94  // de son nom ou de son numéro
95  int GetParamIndex ( const string &par_name ) const;
96  const Param * GetParamPtr ( const string &par_name ) const;
97  const Param * GetParamPtr ( const u_int n ) const;
98  const string GetParamName ( const u_int n ) const;
99 
100  int GetParamDimension ( const u_int n ) const;
101  int GetParamDimension ( const string &par_name ) const;
102 
103 //----------------------------------------------------------------------
104 // pour ROOT...
105  public:
106  /*! Définition à usage de ROOT... */
107  ClassDef(Event,0);
108 };
109 
110 
111 //======================================================================
112 // METHODES INLINE
113 //======================================================================
114 
115 
116 /*! Ecriture de la structure des paramètres sur la sortie standard.
117  */
118 inline void Event::Print ( ) const
119  { Print (cout); }
120 
121 /*! Ecriture de l'événement dans son état actuel (avec les valeurs des
122  * paramètres affectés) sur la sortie standard.
123  * \param pmin numéro du 1er paramètre à écrire
124  * \param pmax numéro du dernier paramètre à écrire
125  * \param all indique s'il faut aussi écrire les paramètres non affectés */ inline void Event::Dump ( const u_int pmin, const u_int pmax, const bool all ) const { Dump (cout, pmin, pmax, all); } //====================================================================== #endif
126  */
127 inline void Event::Dump ( const u_int pmin,
128  const u_int pmax,
129  const bool all ) const
130  { Dump (cout, pmin, pmax, all); }
131 
132 //======================================================================
133 #endif
ClassDef(Event, 0)
virtual ~Event()
Definition: Event.cpp:48
Event & operator=(const Event &)
Definition: Event.cpp:37
const Param * GetParamPtr(const string &par_name) const
Definition: Event.cpp:149
EventInfo
Codes d&#39;information.
Definition: Event.hh:30
GObject(Event)
void Dump(const u_int pmin=0, const u_int pmax=0, const bool all=false) const
Ecriture de l&#39;événement dans son état actuel (avec les valeurs des.
Definition: Event.hh:127
Param * AddParam(const Param &)
Definition: Event.cpp:61
Definition: Param.hh:83
int GetParamIndex(const string &par_name) const
Definition: Event.cpp:102
void Print() const
Definition: Event.hh:118
int GetParamDimension(const u_int n) const
Definition: Event.cpp:136
Event()
Definition: Event.cpp:20
const string GetParamName(const u_int n) const
Definition: Event.cpp:183
void Reset()
Definition: Event.cpp:88
Definition: Event.hh:22