KaliVeda
Toolkit for HIC analysis
KVSimReader_MMM.cpp
1 //Created by KVClassFactory on Tue Jul 6 16:48:05 2010
2 //Author: Eric Bonnet
3 
4 #include "KVSimReader_MMM.h"
5 
7 
8 
9 
10 
14 {
15  // Default constructor
16  init();
17 }
18 
19 
20 
22 
24 {
25  init();
27 }
28 
29 
30 
32 
34 {
35  Int_t natt = 0;
36  mult = 0;
37 
38  ReadLine(" ");
39 
40  Int_t res = GetNparRead();
41  switch (res) {
42  case 0:
43  return kFALSE;
44  default:
45  idx = 0;
46  mult = GetIntReadPar(idx++);
47  natt = 6 * mult + 4 + 1;
48  if (natt != res) {
49  Info("ReadEvent", "Nombre de parametres (%d) different de celui attendu (%d)", res, natt);
50  return kFALSE;
51  }
52  evt->GetParameters()->SetValue("Eth", GetDoubleReadPar(idx++));
53  evt->GetParameters()->SetValue("Eclb", GetDoubleReadPar(idx++));
54  evt->GetParameters()->SetValue("Eexci", GetDoubleReadPar(idx++));
55  evt->GetParameters()->SetValue("Ebind", GetDoubleReadPar(idx++));
56  return kTRUE;
57  }
58  return kFALSE;
59 }
60 
61 
62 
64 
66 {
67  for (Int_t mm = 0; mm < mult; mm += 1) {
68  auto nuc = evt->AddParticle();
69  ReadNucleus(nuc);
70  }
71 
72  evt->SetNumber(GetEventNumber());
73 
74  return kTRUE;
75 }
76 
77 
78 
80 
82 {
83 
84  Int_t aa = GetIntReadPar(idx++);
85  nuc->SetZ(GetIntReadPar(idx++));
86  nuc->SetA(aa);
87  Double_t exci = GetDoubleReadPar(idx++);
88  Double_t px = GetDoubleReadPar(idx++);
89  Double_t py = GetDoubleReadPar(idx++);
90  Double_t pz = GetDoubleReadPar(idx++);
91 
92  nuc->SetExcitEnergy(exci);
93  nuc->SetMomentum(px, py, pz);
94 
95  return kTRUE;
96 
97 }
98 
99 
int Int_t
bool Bool_t
constexpr Bool_t kFALSE
double Double_t
constexpr Bool_t kTRUE
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
virtual void SetNumber(UInt_t num)
Definition: KVBase.h:224
KVNameValueList * GetParameters() const
Definition: KVEvent.h:180
ReadStatus ReadLine(const KVString &pattern="")
Definition: KVFileReader.h:243
Double_t GetDoubleReadPar(Int_t pos) const
Definition: KVFileReader.h:334
Int_t GetIntReadPar(Int_t pos) const
Definition: KVFileReader.h:338
Int_t GetNparRead() const
Definition: KVFileReader.h:325
void SetValue(const Char_t *name, value_type value)
void SetExcitEnergy(Double_t e)
Definition: KVNucleus.cpp:867
void SetA(Int_t a)
Definition: KVNucleus.cpp:658
void SetZ(Int_t z, Char_t mt=-1)
Definition: KVNucleus.cpp:709
void SetMomentum(const TVector3 &v)
Definition: KVParticle.h:581
Container class for simulated nuclei, KVSimNucleus.
Definition: KVSimEvent.h:22
Nucleus in a simulated event.
Definition: KVSimNucleus.h:32
Read ascii file for events of the MMM code at Freeze Out.
Bool_t ReadNucleus(KVSimNucleus *) override
Bool_t ReadEvent(KVSimEvent *) override
KVSimReader_MMM()
Default constructor.
Bool_t ReadEventHeader(KVSimEvent *) override
void ConvertEventsInFile(KVString filename)
Definition: KVSimReader.cpp:24
int GetEventNumber() const
Definition: KVSimReader.h:190
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:73
Particle * AddParticle()
virtual void Info(const char *method, const char *msgfmt,...) const
void init()
ClassImp(TPyArg)