KaliVeda
Toolkit for HIC analysis
|
Handle a list of positive integers (partition)
Created by KVClassFactory on Mon Mar 29 14:58:00 2010 Author: bonnet
Values are sorted into decreasing order.
Two examples of filling a list:
Fill() can be used to fill the list from an array of values and update relevant quantities:
{.cpp}
Les methodes de type Add(), remplit successivement la liste, avant d'utiliser les grandeurs reliées
l'utilisateur doit appeler la méthode CheckForUpdate(), pour que la mise a jour du nom soit faite
par contre le nombre d'elements est mis a jour automatiquement
KVIntegerList* ilist = new KVIntegerList();
ilist->Add(23,6);
ilist->Add(12);
Int_t tab[3]={1,3,6};
ilist->Add(tab,3);
ilist->CheckForUpdate();
ilist->Print();
Info in <KVIntegerList::Print>: 23(6) 12 6 3 1 : population 1
ilist->Remove(23,3);
ilist->Print();
Info in <KVIntegerList::Print>: 23(6) 12 6 3 1 : population 1     !!! pour le nom RIEN A CHANGER
ilist->GetNbre();
END_HTML
(const Int_t)7                 le nombre, lui est mis à jour
ilist->CheckForUpdate();
ilist->Print();
Info in <KVIntegerList::Print>: 23(3) 12 6 3 1 : population 1     OK : les modifs ont été prises en compte
ilist->GetNbre()
(const Int_t)7
Les methodes de type Remove(), retirent des valeurs de la liste, là encore l'utilisateur doit appeler la méthode CheckForUpdate(), pour que la mise a jour soit faite Les grandeurs disponibles sont:
Definition at line 69 of file KVIntegerList.h.
#include <KVIntegerList.h>
Public Types | |
enum | { kHastobeComputed = BIT(14) } |
Public Types inherited from TObject | |
enum | EDeprecatedStatusBits |
enum | EStatusBits |
Public Member Functions | |
KVIntegerList () | |
Default constructor. | |
virtual | ~KVIntegerList () |
Destructor. | |
void | Add (Double_t *tab, Int_t mult) |
Ajout d'un tableau de "mult" valeurs, version Double_t (Conversion Double_t -> Int_t (arrondi, TMath::Nint())) | |
void | Add (Double_t val) |
Ajout de la valeur val version Double_t (Conversion Double_t -> Int_t (arrondi, TMath::Nint())) | |
void | Add (Double_t val, Int_t freq) |
Ajout de "freq" fois la valeur val. | |
void | Add (Int_t *tab, Int_t mult) |
Ajout d'un tableau d'entiers de "mult" valeurs. | |
void | Add (Int_t val) |
Ajout de la valeur val (Int_t) | |
void | Add (Int_t val, Int_t freq) |
Ajout de "freq" fois la valeur val. | |
void | Add (TArrayI *tab) |
void Fill(Double_t* tab,Int_t mult); | |
void | AddPopulation (Int_t pop) |
Incrémente la population de "pop" fois. | |
void | CheckForUpdate () |
void | Clear (Option_t *option="") |
Classe dérivée de TNamed, Reinitialisation de l'object. | |
Int_t | Compare (const TObject *obj) const |
Bool_t | Contains (Int_t val) const |
void | Copy (TObject &named) const |
Classe dérivée de TNamed, fait une copie vers l'objet obj. | |
Int_t * | CreateTableOfValues () |
TArrayI * | CreateTArrayI () |
TNamed * | CreateTNamed () |
KVPartition* CreateKVPartition(Int_t mom_max=5);. | |
void | Fill (Int_t *tab, Int_t mult) |
void Fill(TArrayI* tab); | |
Int_t | GetFrequency (Int_t val) const |
Ssiz_t | GetLengthName () const |
Int_t | GetNbre () const |
Int_t | GetPopulation () const |
void | Print (Option_t *option="") const |
Classe dérivée de TNamed, Imprime la liste formattée et la population associée. | |
Bool_t | Remove (Int_t val) |
Bool_t | Remove (Int_t val, Int_t freq) |
Bool_t | RemoveAll (Int_t val) |
void | ResetPopulation () |
Remet à 1 la population (comme dans le ctor) | |
void | SetPopulation (Int_t pop) |
Initialise la population à "pop". | |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TNamed &named) | |
TNamed (const TString &name, const TString &title) | |
virtual | ~TNamed () |
void | Clear (Option_t *option="") override |
TObject * | Clone (const char *newname="") const override |
Int_t | Compare (const TObject *obj) const override |
void | Copy (TObject &named) const override |
virtual void | FillBuffer (char *&buffer) |
const char * | GetName () const override |
const char * | GetTitle () const override |
ULong_t | Hash () const override |
TClass * | IsA () const override |
Bool_t | IsSortable () const override |
void | ls (Option_t *option="") const override |
TNamed & | operator= (const TNamed &rhs) |
void | Print (Option_t *option="") const override |
virtual void | SetName (const char *name) |
virtual void | SetNameTitle (const char *name, const char *title) |
virtual void | SetTitle (const char *title="") |
virtual Int_t | Sizeof () const |
void | Streamer (TBuffer &) override |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TObject | |
TObject () | |
TObject (const TObject &object) | |
virtual | ~TObject () |
void | AbstractMethod (const char *method) const |
virtual void | AppendPad (Option_t *option="") |
virtual void | Browse (TBrowser *b) |
ULong_t | CheckedHash () |
virtual const char * | ClassName () const |
virtual void | Delete (Option_t *option="") |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
virtual void | Draw (Option_t *option="") |
virtual void | DrawClass () const |
virtual TObject * | DrawClone (Option_t *option="") const |
virtual void | Dump () const |
virtual void | Error (const char *method, const char *msgfmt,...) const |
virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
virtual TObject * | FindObject (const char *name) const |
virtual TObject * | FindObject (const TObject *obj) const |
virtual Option_t * | GetDrawOption () const |
virtual const char * | GetIconName () const |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
virtual Option_t * | GetOption () const |
virtual UInt_t | GetUniqueID () const |
virtual Bool_t | HandleTimer (TTimer *timer) |
Bool_t | HasInconsistentHash () const |
virtual void | Info (const char *method, const char *msgfmt,...) const |
virtual Bool_t | InheritsFrom (const char *classname) const |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
virtual void | Inspect () const |
void | InvertBit (UInt_t f) |
Bool_t | IsDestructed () const |
virtual Bool_t | IsEqual (const TObject *obj) const |
virtual Bool_t | IsFolder () const |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
R__ALWAYS_INLINE Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
virtual Bool_t | Notify () |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, void *vp) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, void *vp) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
virtual void | Paint (Option_t *option="") |
virtual void | Pop () |
virtual Int_t | Read (const char *name) |
virtual void | RecursiveRemove (TObject *obj) |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
virtual void | SetDrawOption (Option_t *option="") |
virtual void | SetUniqueID (UInt_t uid) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Private Member Functions | |
virtual void | add_values (Int_t val, Int_t freq) |
virtual void | DeducePartitionFromName () |
protected method, utilisee par le Streamer | |
virtual void | DeducePartitionFromTNamed () |
virtual void | DeducePopulationFromTitle () |
protected method, utilisee par le Streamer | |
void | init () |
virtual Bool_t | remove_values (Int_t val, Int_t freq) |
virtual void | ResetRegle () |
protected method, Mise a zero de l'ensemble des valeurs | |
virtual void | SetPartition (const Char_t *par) |
Bool_t | ToBeUpdated () |
protected method, test si les grandeurs associées à la liste doivent etre mises a jour | |
virtual void | Update () |
Private Attributes | |
Ssiz_t | fLength |
Longueur du nom de la liste/partition usilisée dans Compare. | |
Int_t | fLimiteRegle |
taille max de fRegle | |
Int_t | fMult |
Nombre d'éléments dans la liste. | |
Int_t | fPop |
population de la liste/partition consideree, permet le comptage de partitions identiques dansun lot de donée | |
TArrayI * | fRegle |
tableau d'entiers où sont stockée l'occurence des valeurs | |
Additional Inherited Members | |
Static Public Member Functions inherited from TNamed | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Longptr_t | GetDtorOnly () |
static Bool_t | GetObjectStat () |
static void | SetDtorOnly (void *obj) |
static void | SetObjectStat (Bool_t stat) |
Public Attributes inherited from TObject | |
kBitMask | |
kCanDelete | |
kCannotPick | |
kHasUUID | |
kInconsistent | |
kInvalidObject | |
kIsOnHeap | |
kIsReferenced | |
kMustCleanup | |
kNoContextMenu | |
kNotDeleted | |
kObjInCanvas | |
kOverwrite | |
kSingleKey | |
kWriteDelete | |
kZombie | |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
void | MakeZombie () |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Protected Attributes inherited from TObject | |
kOnlyPrepStep | |
anonymous enum |
Enumerator | |
---|---|
kHastobeComputed |
Definition at line 95 of file KVIntegerList.h.
KVIntegerList::KVIntegerList | ( | ) |
Default constructor.
Definition at line 35 of file KVIntegerList.cpp.
|
virtual |
Destructor.
Definition at line 46 of file KVIntegerList.cpp.
Ajout d'un tableau de "mult" valeurs, version Double_t (Conversion Double_t -> Int_t (arrondi, TMath::Nint()))
Definition at line 341 of file KVIntegerList.cpp.
Ajout de la valeur val version Double_t (Conversion Double_t -> Int_t (arrondi, TMath::Nint()))
Definition at line 364 of file KVIntegerList.cpp.
Ajout de "freq" fois la valeur val.
Definition at line 375 of file KVIntegerList.cpp.
Ajout d'un tableau d'entiers de "mult" valeurs.
Definition at line 316 of file KVIntegerList.cpp.
Ajout de la valeur val (Int_t)
Definition at line 353 of file KVIntegerList.cpp.
Ajout de "freq" fois la valeur val.
Definition at line 304 of file KVIntegerList.cpp.
void Fill(Double_t* tab,Int_t mult);
Ajout de valeurs via un TArrayI.
Definition at line 328 of file KVIntegerList.cpp.
protected method, Ajout de "freq" fois la valeur val Verification de la taille du tableau (fLimiteRegle) et extension si besoin
Routine appelée par toutes les autres routines Add(...), c'est celle-ci qui doit etre derivée dans les classes filles Le bit kHastobeComputed es mis à 1 pour indiquer la nécéssité de mettre a jour la partition voir KVIntegerList::CheckForUpdate()
Cette methode incremente la multiplicité fMult
Reimplemented in KVPartition.
Definition at line 276 of file KVIntegerList.cpp.
Incrémente la population de "pop" fois.
Definition at line 510 of file KVIntegerList.cpp.
void KVIntegerList::CheckForUpdate | ( | ) |
Methode permettant de mettre à jour la liste, elle est a appeler si l'utilisateur a appelé précédemment une méthode Add ou Remove
Definition at line 163 of file KVIntegerList.cpp.
Classe dérivée de TNamed, Reinitialisation de l'object.
Reimplemented from TObject.
Reimplemented in KVPartition.
Definition at line 73 of file KVIntegerList.cpp.
Classe dérivée de TNamed Compare deux objets de type KVIntegerList, le premier test concerne la longueur du nom (KVIntegerList::GetLengthName()) Si elle est identique, on test caractere par caractere, les deux noms TNamed::GetName() Retourne 0 si les noms des deux KVIntegerList sont exactement les memes, -1 sinon;
Reimplemented from TObject.
Definition at line 625 of file KVIntegerList.cpp.
Retourne kTRUE si la valeur "val" est dans la liste, kFALSE sinon dans la liste retourne -1
Definition at line 668 of file KVIntegerList.cpp.
Classe dérivée de TNamed, fait une copie vers l'objet obj.
Reimplemented from TObject.
Reimplemented in KVPartition.
Definition at line 88 of file KVIntegerList.cpp.
Int_t * KVIntegerList::CreateTableOfValues | ( | ) |
Cree un objet tableau d'entier de dimension fMult ( KVIntegerList::GetNbre() ) et rempli par ordre decroissant toutes les valeurs de la partition L'objet cree doit etre effacé après utilisation par l'utilisateur
Definition at line 599 of file KVIntegerList.cpp.
TArrayI * KVIntegerList::CreateTArrayI | ( | ) |
Cree un objet TArrayI de dimension fMult ( KVIntegerList::GetNbre() ) et rempli par ordre decroissant toutes les valeurs de la partition L'objet cree doit etre effacé après utilisation par l'utilisateur
Definition at line 576 of file KVIntegerList.cpp.
TNamed * KVIntegerList::CreateTNamed | ( | ) |
KVPartition* CreateKVPartition(Int_t mom_max=5);.
Cree un objet TNamed le nom de la partition est le champ TNamed::fName et la population de la partition dans le champ TNamed::fTitle voir TNamed L'objet cree doit etre effacé après utilisation par l'utilisateur
Definition at line 559 of file KVIntegerList.cpp.
|
privatevirtual |
protected method, utilisee par le Streamer
Definition at line 750 of file KVIntegerList.cpp.
|
privatevirtual |
protected method, Methode utilisee par le Streamer Récupère les champs de TNamed:fName et TNamed:fTitle et met à jour
Definition at line 723 of file KVIntegerList.cpp.
|
privatevirtual |
protected method, utilisee par le Streamer
Definition at line 737 of file KVIntegerList.cpp.
void Fill(TArrayI* tab);
La liste est re initialisée via KVIntegerList::Clear() remplie, puis mise à jour KVIntegerList::Update()
Definition at line 222 of file KVIntegerList.cpp.
Retourne l'occurence de la valeur "val", si elle n'est pas présente dans la liste retourne -1
Definition at line 654 of file KVIntegerList.cpp.
Ssiz_t KVIntegerList::GetLengthName | ( | ) | const |
Retourne la longueur du nom de la partition formatée GetName() utilisée dans la methode Compare
Definition at line 682 of file KVIntegerList.cpp.
Int_t KVIntegerList::GetNbre | ( | ) | const |
Definition at line 531 of file KVIntegerList.cpp.
Int_t KVIntegerList::GetPopulation | ( | ) | const |
Definition at line 500 of file KVIntegerList.cpp.
|
private |
Initialisation La population est mise à 1
Definition at line 19 of file KVIntegerList.cpp.
Classe dérivée de TNamed, Imprime la liste formattée et la population associée.
Reimplemented from TObject.
Reimplemented in KVPartition.
Definition at line 102 of file KVIntegerList.cpp.
On retire 1 fois la valeur val la methode retourne kTRUE si cette valeur etait effectivement presente, kFALSE sinon Le bit kHastobeComputed es mis à 1 pour indiquer la nécéssité de mettre a jour la partition voir KVIntegerList::CheckForUpdate()
Definition at line 451 of file KVIntegerList.cpp.
On retire "freq" fois la valeur val la methode retourne kTRUE si cette valeur etait effectivement presente, kFALSE sinon Si freq > la frequence initiale ( KVIntegerList::GetFrequency(Int_t ) )de la valeur, on la retire complétement
Definition at line 432 of file KVIntegerList.cpp.
protected method, On retire "freq" fois la valeur val la methode retourne kTRUE si cette valeur etait effectivement presente, kFALSE sinon Si freq > la frequence initiale ( KVIntegerList::GetFrequency(Int_t ) )de la valeur, on la retire complétement Le bit kHastobeComputed es mis à 1 pour indiquer la nécéssité de mettre a jour la partition voir KVIntegerList::CheckForUpdate() Cette methode est appelée par les autres routines de type Remove...(...), c'est celle-ci qui doit etre derivée dans les classes filles
Cette methode décremente la multiplicité fMult
Reimplemented in KVPartition.
Definition at line 397 of file KVIntegerList.cpp.
Reture completement la valeur val la methode retourne kTRUE si cette valeur etait effectivement presente, kFALSE sinon
Le bit kHastobeComputed es mis à 1 pour indiquer la nécéssité de mettre a jour la partition voir KVIntegerList::CheckForUpdate()
Definition at line 473 of file KVIntegerList.cpp.
void KVIntegerList::ResetPopulation | ( | ) |
Remet à 1 la population (comme dans le ctor)
Definition at line 490 of file KVIntegerList.cpp.
|
privatevirtual |
protected method, Mise a zero de l'ensemble des valeurs
Definition at line 60 of file KVIntegerList.cpp.
protected method, utilisée par le Streamer qui utilise le champ fName de la classe TNamed voir également KVIntegerList::DeducePartitionFromTNamed
Definition at line 114 of file KVIntegerList.cpp.
Initialise la population à "pop".
Definition at line 521 of file KVIntegerList.cpp.
|
private |
protected method, test si les grandeurs associées à la liste doivent etre mises a jour
Definition at line 150 of file KVIntegerList.cpp.
|
privatevirtual |
protected method, Mise a jour du nom de la partition (via SetName()), de sa longueur (fLength) Le bit kHastobeComputed es mis à 0 pour indiquer que la mise à jour a été faite
Reimplemented in KVPartition.
Definition at line 178 of file KVIntegerList.cpp.
|
private |
Longueur du nom de la liste/partition usilisée dans Compare.
Definition at line 77 of file KVIntegerList.h.
|
private |
taille max de fRegle
Definition at line 74 of file KVIntegerList.h.
|
private |
Nombre d'éléments dans la liste.
Definition at line 76 of file KVIntegerList.h.
|
private |
population de la liste/partition consideree, permet le comptage de partitions identiques dansun lot de donée
Definition at line 75 of file KVIntegerList.h.
|
private |
tableau d'entiers où sont stockée l'occurence des valeurs
Definition at line 73 of file KVIntegerList.h.