11 #include "FairRootManager.h"
12 #include "FairRuntimeDb.h"
14 #include "TParticle.h"
19 :lProto192Tree(prototree),lTaggerTree(taggertree),lStoreHits(StoreHits),lDebug(debuglevel),IsInit(kFALSE),signal(256),lTaggerTreeOffset(0),lEventNumOverflow(0) {
20 for(Int_t
i = 0;
i<64;
i++){
28 FairRootManager* ioman = FairRootManager::Instance();
30 printf(
"-E- PndEmcHitProducer::Init: RootManager not instantiated!\n");
34 lWaveArray =
new TClonesArray(
"PndEmcMultiWaveform");
41 printf(
"PndEmcReadProto192Data: Init successfull\n");
61 FairRun*
run = FairRun::Instance();
62 if ( ! run ) Fatal(
"SetParContainers",
"No analysis run");
64 FairRuntimeDb* db = run->GetRuntimeDb();
65 if ( ! db ) Fatal(
"SetParContainers",
"No runtime database");
75 lBaseParSet = (FairBaseParSet *)db->getContainer(
"FairBaseParSet");
78 printf(
"Got PndEmcDigiPar from database\n");
81 printf(
"could not get PndEmcDigiPar from database\n");
89 for(Int_t
i = 0;
i<64;
i++){
95 for(Int_t
i = 0;
i<64;
i++){
102 printf(
"Not Initialised! You have to call Init() first.\n");
108 WaveArrayRef.Delete();
111 std::map<Long_t, PndEmcMultiWaveform *> wavemap;
112 std::map<Long_t, PndEmcMultiWaveform *>::iterator it;
114 for(Int_t channel =0; channel < 64; channel++){
117 it = wavemap.find(detid);
118 if(it != wavemap.end()){
119 waveform = (*it).second;
121 waveform =
new (WaveArrayRef[WaveArrayRef.GetEntriesFast()])
PndEmcMultiWaveform(1,detid,256,channel);
122 wavemap.insert(std::pair<Long_t,PndEmcMultiWaveform*>(detid,waveform));
124 for(Int_t
i = 0;
i<256;
i++){
135 printf(
"-E- PndEmcReadProto192Data: No Matching Tagger Event found for event %li\n",cbevent);
139 lEventNumOverflow+=65536;
std::vector< Double_t > signal
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
virtual InitStatus Init()
void SetMapperVersion(Int_t mapperVersion)
virtual void Exec(Option_t *opt)
void SetWaveformMap(Long_t *map)
TProtoUnpackEvent * lProto192Event
TClonesArray * lTaggerArray
Int_t waveform[ConfiguredProtoChannels][256]
parameter set of Emc digitisation
FairBaseParSet * lBaseParSet
PndGeoPassivePar * lGeoPassivePar
TClonesArray * lWaveArray
virtual void SetParContainers()
PndEmcReadProto192Data(TTree *prototree, TTree *taggertree=NULL, Bool_t StoreHits=kTRUE, Int_t debuglevel=0)
void SetIndexMap(Long_t *map)