34 std::cout<<
"Info in (PndGemMonitor::Instance): Making a new instance using the framework."<<std::endl;
43 FairTask(
"GEM Monitor",0),
52 FairRun*
run = FairRun::Instance();
56 run->AddTask((FairTask*)
this);
59 std::cout <<
"PndGemMonitor. No FairRun object found. If used in a macro take another constructor." << std::endl;
94 tempDigi->GetTimeStamp(),
113 pair<Int_t, Int_t>
a (statNr,sensNr);
128 sensor->ActivateChannel(ichan,
132 tempCluster->GetTimeStamp(),
140 std::cout <<
"--- PndGemMonitor :: Print () ---" << std::endl;
141 std::cout <<
"--- " <<
fSensorList->GetEntries() <<
" sensors" << std::endl;
142 for ( Int_t isens = 0 ; isens <
fSensorList->GetEntries() ; isens++ ) {
146 std::cout <<
"---------------------------------" << std::endl;
static PndGemMonitor * fInstance
Double_t ChannelLastActiveAt(Int_t channelNr, Int_t sideId, Double_t timeNow, Int_t eventNr=-1)
Int_t GetSensorNr() const
Int_t GetClusterBeg() const
cout<< "-----------------------------------------------> Quarter VOLUME<<endl;name="QuarterShape";QuarterShape=newTGeoArb8(name,dz,vertQuar);name="Quarter4Vol";TStringmedium="air";QuarterVol=newTGeoVolumeAssembly(name);name="SubunitShape";SubunitShape=newTGeoArb8(name,dz,vertSub);TStringmedium="air";name="SubunitVol";name1="SubunitVol1";name2="SubunitVol2";name3="SubunitVol3";name4="SubunitVol4";name5="SubunitVol5";name6="SubunitVol6";name7="SubunitVol7";name8="SubunitVol8";name9="SubunitVol9";SubunitVol=newTGeoVolumeAssembly(name);SubunitVol1=newTGeoVolumeAssembly(name1);SubunitVol2=newTGeoVolumeAssembly(name2);SubunitVol3=newTGeoVolumeAssembly(name3);SubunitVol4=newTGeoVolumeAssembly(name4);SubunitVol5=newTGeoVolumeAssembly(name5);SubunitVol6=newTGeoVolumeAssembly(name6);SubunitVol7=newTGeoVolumeAssembly(name7);SubunitVol8=newTGeoVolumeAssembly(name8);SubunitVol9=newTGeoVolumeAssembly(name9);name="BoxShape";BoxShape=newTGeoArb8(name,dz,vertBox);TStringmedium="air";name="BoxVol";BoxVol=newTGeoVolumeAssembly(name);name1="BoxVol1";name2="BoxVol2";name3="BoxVol3";name4="BoxVol4";BoxVol1=newTGeoVolumeAssembly(name1);BoxVol2=newTGeoVolumeAssembly(name2);BoxVol3=newTGeoVolumeAssembly(name3);BoxVol4=newTGeoVolumeAssembly(name4);for(Int_tb=0;b<kNumOfBoxes;b++){cout<<""<<endl;cout<<"---------------->BOXnumber:"<<b<<endl;if(b==0){trBox=newTGeoTranslation(tr+kSpaceInSub+kAlveoleThickness+0.5*kSpaceInBox,tr+kSpaceInSub+kAlveoleThickness+0.5*kSpaceInBox,0.);rotBox=newTGeoRotation();rotBox.RotateX(0.465518);rotBox.RotateY(-0.465518);}if(b==1){trBox=newTGeoTranslation(-tr-kSpaceInSub-kAlveoleThickness-0.5*kSpaceInBox,-tr-kSpaceInSub-kAlveoleThickness-0.5*kSpaceInBox,0.);rotBox=newTGeoRotation();rotBox.RotateX(-0.465518);rotBox.RotateY(0.465518);}if(b==2){trBox=newTGeoTranslation(tr+kSpaceInSub+kAlveoleThickness+0.5*kSpaceInBox,-tr-kSpaceInSub-kAlveoleThickness-0.5*kSpaceInBox,0.);rotBox=newTGeoRotation();rotBox.RotateX(-0.465518);rotBox.RotateY(-0.465518);}if(b==3){trBox=newTGeoTranslation(-tr-kSpaceInSub-kAlveoleThickness-0.5*kSpaceInBox,tr+kSpaceInSub+kAlveoleThickness+0.5*kSpaceInBox,0.);rotBox=newTGeoRotation();rotBox.RotateX(0.465518);rotBox.RotateY(0.465518);}TGeoCombiTrans*trrotBox=newTGeoCombiTrans(trBox,rotBox);name="BoxVol";name+=b;trrotBox->SetName(name);trrotBox->RegisterYourself();SubunitVol->AddNode(BoxVol,b,trrotBox);if(b==1){name+=b;trrotBox->SetName(name);trrotBox->RegisterYourself();SubunitVol1->AddNode(BoxVol,b,trrotBox);}if(b==2){name+=b;trrotBox->SetName(name);trrotBox->RegisterYourself();SubunitVol2->AddNode(BoxVol1,b,trrotBox);}if(b==0){name+=b;trrotBox-> SetName(name)
Int_t CreateSensorMonitor(const PndGemSensor &tempSensor)
Int_t GetStationNr() const
Double_t ChannelLastActiveAt(Int_t statNr, Int_t sensNr, Int_t sideId, Int_t chanNr)
Int_t GetStationNr() const
void EnableDigi(Int_t eventNr, Int_t digiNr, PndGemDigi *tempDigi)
Int_t GetSensorNr() const
h_MC_angle SetTitle("MC truth: opening angle of #pi^{0}")
void EnableCluster(Int_t eventNr, Int_t clusterNr, PndGemCluster *tempCluster)
static PndGemMonitor * Instance()
Double_t GetChannelNr() const
Int_t GetClusterEnd() const
Int_t GetSensorNr() const
Double_t GetCharge() const
Digitization Parameter Class for GEM part.
std::map< std::pair< Int_t, Int_t >, Int_t > fSensorMap
Double_t GetCharge() const
Int_t GetStationNr() const