KaliVeda
Toolkit for HIC analysis
KVIntegerList.h
1 
4 #ifndef __KVINTEGERLIST_H
5 #define __KVINTEGERLIST_H
6 #include "KVString.h"
7 #include "TArrayI.h"
8 #include "TNamed.h"
9 
69 class KVIntegerList : public TNamed {
70 
71 protected:
72 
78 
79  void init();
81  virtual void Update();
82  virtual void ResetRegle();
83 
84  virtual void SetPartition(const Char_t* par);
85  virtual void DeducePartitionFromTNamed();
86  virtual void DeducePopulationFromTitle();
87  virtual void DeducePartitionFromName();
88 
89  virtual void add_values(Int_t val, Int_t freq);
90  virtual Bool_t remove_values(Int_t val, Int_t freq);
91 
92 
93 public:
94 
95  enum {
96  kHastobeComputed = BIT(14) //Variables has to be recalculated or not
97  };
98 
99  KVIntegerList();
100  virtual ~KVIntegerList();
101 
102  Int_t Compare(const TObject* obj) const;
103  void Clear(Option_t* option = "");
104  void Copy(TObject& named) const;
105  void Print(Option_t* option = "") const;
106 
107  void CheckForUpdate();
108 
110  void Fill(Int_t* tab, Int_t mult);
112 
113  void Add(TArrayI* tab);
114  void Add(Int_t* tab, Int_t mult);
115  void Add(Double_t* tab, Int_t mult);
116 
117  void Add(Int_t val);
118  void Add(Int_t val, Int_t freq);
119 
120  void Add(Double_t val);
121  void Add(Double_t val, Int_t freq);
122 
123  Bool_t Remove(Int_t val, Int_t freq);
124  Bool_t Remove(Int_t val);
125  Bool_t RemoveAll(Int_t val);
126 
127  void ResetPopulation();
128  Int_t GetPopulation() const;
129  void AddPopulation(Int_t pop);
130  void SetPopulation(Int_t pop);
131 
132  Int_t GetNbre() const;
133 
134  Int_t GetFrequency(Int_t val) const;
135  Bool_t Contains(Int_t val) const;
136  Ssiz_t GetLengthName() const;
137 
139  TNamed* CreateTNamed();
142 
143  ClassDef(KVIntegerList, 1) //Permet de gerer une liste de nombres entiers positifs
144 };
145 
146 #endif
int Int_t
bool Bool_t
int Ssiz_t
char Char_t
double Double_t
const char Option_t
#define ClassDef(name, id)
#define BIT(n)
Handle a list of positive integers (partition)
Definition: KVIntegerList.h:69
Int_t fMult
Nombre d'éléments dans la liste.
Definition: KVIntegerList.h:76
Int_t * CreateTableOfValues()
void Add(TArrayI *tab)
void Fill(Double_t* tab,Int_t mult);
virtual Bool_t remove_values(Int_t val, Int_t freq)
Ssiz_t fLength
Longueur du nom de la liste/partition usilisée dans Compare.
Definition: KVIntegerList.h:77
virtual void DeducePartitionFromName()
protected method, utilisee par le Streamer
void Clear(Option_t *option="")
Classe dérivée de TNamed, Reinitialisation de l'object.
virtual void SetPartition(const Char_t *par)
Int_t Compare(const TObject *obj) const
Int_t fLimiteRegle
taille max de fRegle
Definition: KVIntegerList.h:74
void ResetPopulation()
Remet à 1 la population (comme dans le ctor)
void Print(Option_t *option="") const
Classe dérivée de TNamed, Imprime la liste formattée et la population associée.
virtual void add_values(Int_t val, Int_t freq)
virtual void DeducePartitionFromTNamed()
void Copy(TObject &named) const
Classe dérivée de TNamed, fait une copie vers l'objet obj.
Ssiz_t GetLengthName() const
void AddPopulation(Int_t pop)
Incrémente la population de "pop" fois.
Int_t GetFrequency(Int_t val) const
Int_t fPop
population de la liste/partition consideree, permet le comptage de partitions identiques dansun lot d...
Definition: KVIntegerList.h:75
Bool_t Contains(Int_t val) const
TNamed * CreateTNamed()
KVPartition* CreateKVPartition(Int_t mom_max=5);.
TArrayI * fRegle
tableau d'entiers où sont stockée l'occurence des valeurs
Definition: KVIntegerList.h:73
void Fill(Int_t *tab, Int_t mult)
void Fill(TArrayI* tab);
Int_t GetNbre() const
virtual void DeducePopulationFromTitle()
protected method, utilisee par le Streamer
void SetPopulation(Int_t pop)
Initialise la population à "pop".
Int_t GetPopulation() const
Bool_t Remove(Int_t val, Int_t freq)
TArrayI * CreateTArrayI()
Bool_t RemoveAll(Int_t val)
virtual ~KVIntegerList()
Destructor.
virtual void ResetRegle()
protected method, Mise a zero de l'ensemble des valeurs
Bool_t ToBeUpdated()
protected method, test si les grandeurs associées à la liste doivent etre mises a jour
virtual void Update()
KVIntegerList()
Default constructor.