KaliVeda
Toolkit for HIC analysis
StatWeight.h
1 
4 #ifndef __STATWEIGHT_H
5 #define __STATWEIGHT_H
6 
7 #include "TObject.h"
8 
9 class KVEvent;
10 class KVNucleus;
11 
12 namespace MicroStat {
13 
21  class StatWeight : public TObject {
22  private:
23  void init();
24 
25  Double_t fWeight; //calculated weight
26  Long64_t fIndex; //index of corresponding partition
27  Double_t fEDisp; //available kinetic energy - set by SetWeight(KVEvent*, Double_t)
28 
29  protected:
31  {
32  fWeight = w;
33  }
35  {
36  fEDisp = e;
37  }
38 
39  public:
40  StatWeight();
41  virtual ~StatWeight();
42 
43  virtual void SetWeight(KVEvent* e, Double_t E) = 0;
45  {
46  return fWeight;
47  }
49  {
50  return fEDisp;
51  }
52 
54  {
55  fIndex = i;
56  }
58  {
59  return fIndex;
60  }
61 
62  void ls(Option_t* = "") const;
64  {
65  return kTRUE;
66  }
67 
68  Int_t Compare(const TObject* obj) const;
69 
70  void GenerateEvent(KVEvent* partition, KVEvent* event);
71  virtual void initGenerateEvent(KVEvent* partition) = 0;
72  virtual void resetGenerateEvent() = 0;
74 
75  ClassDef(StatWeight, 1) //Abstract base class for calculating statistical weights for events
76  };
77 
78 }/* namespace MicroStat */
79 
80 #endif
int Int_t
#define e(i)
bool Bool_t
double Double_t
constexpr Bool_t kTRUE
const char Option_t
#define ClassDef(name, id)
winID w
Abstract base class container for multi-particle events.
Definition: KVEvent.h:67
Description of properties and kinematics of atomic nuclei.
Definition: KVNucleus.h:126
Abstract base class for calculating statistical weights for events .
Definition: StatWeight.h:21
void SetIndex(Long64_t i)
Definition: StatWeight.h:53
virtual void SetWeight(KVEvent *e, Double_t E)=0
StatWeight()
Default constructor.
Definition: StatWeight.cpp:27
void init()
Default initialisations.
Definition: StatWeight.cpp:15
void GenerateEvent(KVEvent *partition, KVEvent *event)
Definition: StatWeight.cpp:79
virtual ~StatWeight()
Destructor.
Definition: StatWeight.cpp:39
Bool_t IsSortable() const
Definition: StatWeight.h:63
void setAvailableEnergy(Double_t e)
Definition: StatWeight.h:34
virtual void initGenerateEvent(KVEvent *partition)=0
Double_t GetAvailableEnergy() const
Definition: StatWeight.h:48
void setWeight(Double_t w)
Definition: StatWeight.h:30
void ls(Option_t *="") const
Definition: StatWeight.cpp:48
Int_t Compare(const TObject *obj) const
sort according to weight
Definition: StatWeight.cpp:60
virtual void resetGenerateEvent()=0
Double_t GetWeight() const
Definition: StatWeight.h:44
virtual void nextparticleGenerateEvent(Int_t, KVNucleus *)=0
Long64_t GetIndex() const
Definition: StatWeight.h:57
long long Long64_t