KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
KVIntegerList Class Reference

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:

Example 1

Fill() can be used to fill the list from an array of values and update relevant quantities: ~~~~{.cpp} KVIntegerList ilist; int tab[] = {1,3,6,4,9,7,3,59,8,160}; ilist->Fill(tab,10); ilist->Print();

Info in <KVIntegerList::Print>: 160 59 9 8 7 6 4 3(2) 1 : population 1 ~~~~{.cpp}

Example 2

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 &nbsp &nbsp !!! pour le nom RIEN A CHANGER
ilist->GetNbre();
(const Int_t)7 &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp le nombre, lui est mis à jour
ilist->CheckForUpdate();
ilist->Print();
Info in <KVIntegerList::Print>: 23(3) 12 6 3 1 : population 1 &nbsp &nbsp OK : les modifs ont été prises en compte
ilist->GetNbre()
(const Int_t)7
END_HTML

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 68 of file KVIntegerList.h.

Public Types

enum  { kHastobeComputed = BIT(14) }
 
- Public Types inherited from TObject
enum  EDeprecatedStatusBits
 
enum  EStatusBits
 

Public Member Functions

 KVIntegerList ()
 Default constructor. More...
 
virtual ~KVIntegerList ()
 Destructor. More...
 
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())) More...
 
void Add (Double_t val)
 Ajout de la valeur val version Double_t (Conversion Double_t -> Int_t (arrondi, TMath::Nint())) More...
 
void Add (Double_t val, Int_t freq)
 Ajout de "freq" fois la valeur val. More...
 
void Add (Int_t *tab, Int_t mult)
 Ajout d'un tableau d'entiers de "mult" valeurs. More...
 
void Add (Int_t val)
 Ajout de la valeur val (Int_t) More...
 
void Add (Int_t val, Int_t freq)
 Ajout de "freq" fois la valeur val. More...
 
void Add (TArrayI *tab)
 void Fill(Double_t* tab,Int_t mult); More...
 
void AddPopulation (Int_t pop)
 Incrémente la population de "pop" fois. More...
 
void CheckForUpdate ()
 
void Clear (Option_t *option="")
 Classe dérivée de TNamed, Reinitialisation de l'object. More...
 
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. More...
 
Int_tCreateTableOfValues ()
 
TArrayICreateTArrayI ()
 
TNamedCreateTNamed ()
 KVPartition* CreateKVPartition(Int_t mom_max=5);. More...
 
void Fill (Int_t *tab, Int_t mult)
 void Fill(TArrayI* tab); More...
 
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. More...
 
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) More...
 
void SetPopulation (Int_t pop)
 Initialise la population à "pop". More...
 
- 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 ()
 
virtual TObjectClone (const char *newname="") const
 
virtual void FillBuffer (char *&buffer)
 
virtual const char * GetName () const
 
virtual const char * GetTitle () const
 
virtual ULong_t Hash () const
 
virtual Bool_t IsSortable () const
 
virtual void ls (Option_t *option="") const
 
TNamedoperator= (const TNamed &rhs)
 
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
 
- 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 TObjectDrawClone (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=0)
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 
virtual TObjectFindObject (const char *name) const
 
virtual TObjectFindObject (const TObject *obj) const
 
virtual Option_tGetDrawOption () const
 
virtual const char * GetIconName () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 
virtual Option_tGetOption () 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)
 
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)
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (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)
 
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=0, Int_t option=0, Int_t bufsize=0)
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 

Protected Member Functions

virtual void add_values (Int_t val, Int_t freq)
 
virtual void DeducePartitionFromName ()
 protected method, utilisee par le Streamer More...
 
virtual void DeducePartitionFromTNamed ()
 
virtual void DeducePopulationFromTitle ()
 protected method, utilisee par le Streamer More...
 
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 More...
 
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 More...
 
virtual void Update ()
 
- 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

Ssiz_t fLength
 Longueur du nom de la liste/partition usilisée dans Compare. More...
 
Int_t fLimiteRegle
 taille max de fRegle More...
 
Int_t fMult
 Nombre d'éléments dans la liste. More...
 
Int_t fPop
 population de la liste/partition consideree, permet le comptage de partitions identiques dansun lot de donée More...
 
TArrayIfRegle
 tableau d'entiers où sont stockée l'occurence des valeurs More...
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TObject
 kOnlyPrepStep
 

Additional Inherited Members

- Static Public Member Functions inherited from TObject
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
 

#include <KVIntegerList.h>

Inheritance diagram for KVIntegerList:
Inheritance graph
[legend]

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kHastobeComputed 

Definition at line 94 of file KVIntegerList.h.

Constructor & Destructor Documentation

◆ KVIntegerList()

KVIntegerList::KVIntegerList ( )

Default constructor.

Definition at line 35 of file KVIntegerList.cpp.

◆ ~KVIntegerList()

KVIntegerList::~KVIntegerList ( )
virtual

Destructor.

Definition at line 46 of file KVIntegerList.cpp.

Member Function Documentation

◆ Add() [1/7]

void KVIntegerList::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()))

Definition at line 341 of file KVIntegerList.cpp.

◆ Add() [2/7]

void KVIntegerList::Add ( Double_t  val)

Ajout de la valeur val version Double_t (Conversion Double_t -> Int_t (arrondi, TMath::Nint()))

Definition at line 364 of file KVIntegerList.cpp.

◆ Add() [3/7]

void KVIntegerList::Add ( Double_t  val,
Int_t  freq 
)

Ajout de "freq" fois la valeur val.

Definition at line 375 of file KVIntegerList.cpp.

◆ Add() [4/7]

void KVIntegerList::Add ( Int_t tab,
Int_t  mult 
)

Ajout d'un tableau d'entiers de "mult" valeurs.

Definition at line 316 of file KVIntegerList.cpp.

◆ Add() [5/7]

void KVIntegerList::Add ( Int_t  val)

Ajout de la valeur val (Int_t)

Definition at line 353 of file KVIntegerList.cpp.

◆ Add() [6/7]

void KVIntegerList::Add ( Int_t  val,
Int_t  freq 
)

Ajout de "freq" fois la valeur val.

Definition at line 304 of file KVIntegerList.cpp.

◆ Add() [7/7]

void KVIntegerList::Add ( TArrayI tab)

void Fill(Double_t* tab,Int_t mult);

Ajout de valeurs via un TArrayI.

Definition at line 328 of file KVIntegerList.cpp.

◆ add_values()

void KVIntegerList::add_values ( Int_t  val,
Int_t  freq 
)
protectedvirtual

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.

◆ AddPopulation()

void KVIntegerList::AddPopulation ( Int_t  pop)

Incrémente la population de "pop" fois.

Definition at line 510 of file KVIntegerList.cpp.

◆ CheckForUpdate()

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.

◆ Clear()

void KVIntegerList::Clear ( Option_t option = "")
virtual

Classe dérivée de TNamed, Reinitialisation de l'object.

Reimplemented from TNamed.

Reimplemented in KVPartition.

Definition at line 73 of file KVIntegerList.cpp.

◆ Compare()

Int_t KVIntegerList::Compare ( const TObject obj) const
virtual

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 TNamed.

Definition at line 625 of file KVIntegerList.cpp.

◆ Contains()

Bool_t KVIntegerList::Contains ( Int_t  val) const

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.

◆ Copy()

void KVIntegerList::Copy ( TObject named) const
virtual

Classe dérivée de TNamed, fait une copie vers l'objet obj.

Reimplemented from TNamed.

Reimplemented in KVPartition.

Definition at line 88 of file KVIntegerList.cpp.

◆ CreateTableOfValues()

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.

◆ CreateTArrayI()

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.

◆ CreateTNamed()

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.

◆ DeducePartitionFromName()

void KVIntegerList::DeducePartitionFromName ( )
protectedvirtual

protected method, utilisee par le Streamer

Definition at line 750 of file KVIntegerList.cpp.

◆ DeducePartitionFromTNamed()

void KVIntegerList::DeducePartitionFromTNamed ( )
protectedvirtual

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.

◆ DeducePopulationFromTitle()

void KVIntegerList::DeducePopulationFromTitle ( )
protectedvirtual

protected method, utilisee par le Streamer

Definition at line 737 of file KVIntegerList.cpp.

◆ Fill()

void KVIntegerList::Fill ( Int_t tab,
Int_t  mult 
)

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.

◆ GetFrequency()

Int_t KVIntegerList::GetFrequency ( Int_t  val) const

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.

◆ GetLengthName()

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.

◆ GetNbre()

Int_t KVIntegerList::GetNbre ( ) const

Definition at line 531 of file KVIntegerList.cpp.

◆ GetPopulation()

Int_t KVIntegerList::GetPopulation ( ) const

Definition at line 500 of file KVIntegerList.cpp.

◆ init()

void KVIntegerList::init ( void  )
protected

Initialisation La population est mise à 1

Definition at line 19 of file KVIntegerList.cpp.

◆ Print()

void KVIntegerList::Print ( Option_t option = "") const
virtual

Classe dérivée de TNamed, Imprime la liste formattée et la population associée.

Reimplemented from TNamed.

Reimplemented in KVPartition.

Definition at line 102 of file KVIntegerList.cpp.

◆ Remove() [1/2]

Bool_t KVIntegerList::Remove ( Int_t  val)

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.

◆ Remove() [2/2]

Bool_t KVIntegerList::Remove ( Int_t  val,
Int_t  freq 
)

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.

◆ remove_values()

Bool_t KVIntegerList::remove_values ( Int_t  val,
Int_t  freq 
)
protectedvirtual

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.

◆ RemoveAll()

Bool_t KVIntegerList::RemoveAll ( Int_t  val)

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.

◆ ResetPopulation()

void KVIntegerList::ResetPopulation ( )

Remet à 1 la population (comme dans le ctor)

Definition at line 490 of file KVIntegerList.cpp.

◆ ResetRegle()

void KVIntegerList::ResetRegle ( )
protectedvirtual

protected method, Mise a zero de l'ensemble des valeurs

Definition at line 60 of file KVIntegerList.cpp.

◆ SetPartition()

void KVIntegerList::SetPartition ( const Char_t par)
protectedvirtual

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.

◆ SetPopulation()

void KVIntegerList::SetPopulation ( Int_t  pop)

Initialise la population à "pop".

Definition at line 521 of file KVIntegerList.cpp.

◆ ToBeUpdated()

Bool_t KVIntegerList::ToBeUpdated ( )
protected

protected method, test si les grandeurs associées à la liste doivent etre mises a jour

Definition at line 150 of file KVIntegerList.cpp.

◆ Update()

void KVIntegerList::Update ( )
protectedvirtual

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.

Member Data Documentation

◆ fLength

Ssiz_t KVIntegerList::fLength
protected

Longueur du nom de la liste/partition usilisée dans Compare.

Definition at line 76 of file KVIntegerList.h.

◆ fLimiteRegle

Int_t KVIntegerList::fLimiteRegle
protected

taille max de fRegle

Definition at line 73 of file KVIntegerList.h.

◆ fMult

Int_t KVIntegerList::fMult
protected

Nombre d'éléments dans la liste.

Definition at line 75 of file KVIntegerList.h.

◆ fPop

Int_t KVIntegerList::fPop
protected

population de la liste/partition consideree, permet le comptage de partitions identiques dansun lot de donée

Definition at line 74 of file KVIntegerList.h.

◆ fRegle

TArrayI* KVIntegerList::fRegle
protected

tableau d'entiers où sont stockée l'occurence des valeurs

Definition at line 72 of file KVIntegerList.h.


The documentation for this class was generated from the following files: