FairRoot/PandaRoot
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
PndCaloDraw Class Referenceabstract

#include <PndCaloDraw.h>

Inheritance diagram for PndCaloDraw:
PndEmcDigiCaloDraw PndEmcHitCaloDraw

Public Member Functions

 PndCaloDraw ()
 
 PndCaloDraw (const char *name, Int_t iVerbose=1)
 
virtual ~PndCaloDraw ()
 
virtual Double_t GetTimeWindowPlus ()
 
virtual Double_t GetTimeWindowMinus ()
 
virtual void SetVerbose (Int_t iVerbose)
 
virtual void SetTimeWindowMinus (Double_t val)
 
virtual void SetTimeWindowPlus (Double_t val)
 
virtual void SetStartTime (Double_t val)
 
virtual void UseEventTimeAsStartTime (Bool_t val=kTRUE)
 
virtual void Exec (Option_t *option)
 
FairBoxSet * CreateBoxSet ()
 
void Reset ()
 

Protected Member Functions

virtual void SetParContainers ()
 
virtual InitStatus Init ()
 
virtual void Finish ()
 
virtual void FillHisto (TObject *obj)
 
virtual TVector3 GetVector (TObject *obj)=0
 
virtual Double_t GetEnergy (TObject *obj)=0
 

Protected Attributes

Int_t fVerbose
 
TClonesArray * fList
 
FairEventManager * fEventManager
 
FairRootManager * fManager
 
TH2F * fCaloHisto
 
TEveCaloDataHist * fEveHist
 
TEveCalo3D * fCalo3D
 
Double_t fTimeWindowPlus
 
Double_t fTimeWindowMinus
 
Double_t fStartTime
 
Bool_t fUseEventTime
 

Private Member Functions

 PndCaloDraw (const PndCaloDraw &)
 
PndCaloDrawoperator= (const PndCaloDraw &)
 
 ClassDef (PndCaloDraw, 1)
 

Private Attributes

BinaryFunctor * fStartFunctor
 
BinaryFunctor * fStopFunctor
 

Detailed Description

Definition at line 44 of file PndCaloDraw.h.

Constructor & Destructor Documentation

PndCaloDraw::PndCaloDraw ( )

Default constructor

Definition at line 37 of file PndCaloDraw.cxx.

38  : FairTask("PndCaloDraw",0),
39  fVerbose(0),
40  fList(NULL),
41  fEventManager(NULL),
42  fManager(NULL),
43  fTimeWindowPlus(0.),
44  fTimeWindowMinus(0.),
45  fStartTime(0.),
46  fUseEventTime(kTRUE),
47  fStartFunctor(),
48  fStopFunctor()
49 {
50 }
BinaryFunctor * fStartFunctor
Definition: PndCaloDraw.h:108
TClonesArray * fList
Definition: PndCaloDraw.h:92
Double_t fStartTime
Definition: PndCaloDraw.h:101
Double_t fTimeWindowMinus
Definition: PndCaloDraw.h:100
Double_t fTimeWindowPlus
Definition: PndCaloDraw.h:99
BinaryFunctor * fStopFunctor
Definition: PndCaloDraw.h:109
FairEventManager * fEventManager
Definition: PndCaloDraw.h:93
Int_t fVerbose
Definition: PndCaloDraw.h:82
Bool_t fUseEventTime
Definition: PndCaloDraw.h:102
FairRootManager * fManager
Definition: PndCaloDraw.h:94
PndCaloDraw::PndCaloDraw ( const char *  name,
Int_t  iVerbose = 1 
)

Standard constructor

Parameters
nameName of task
iVerboseVerbosity level

Definition at line 56 of file PndCaloDraw.cxx.

57  : FairTask(name, iVerbose),
59  fList(NULL),
60  fEventManager(NULL),
61  fManager(NULL),
62  fTimeWindowPlus(0.),
63  fTimeWindowMinus(0.),
64  fStartTime(0.),
65  fUseEventTime(kTRUE),
66  fStartFunctor(),
67  fStopFunctor()
68 {
69 }
BinaryFunctor * fStartFunctor
Definition: PndCaloDraw.h:108
TClonesArray * fList
Definition: PndCaloDraw.h:92
Double_t fStartTime
Definition: PndCaloDraw.h:101
Double_t fTimeWindowMinus
Definition: PndCaloDraw.h:100
Double_t fTimeWindowPlus
Definition: PndCaloDraw.h:99
BinaryFunctor * fStopFunctor
Definition: PndCaloDraw.h:109
TString name
FairEventManager * fEventManager
Definition: PndCaloDraw.h:93
Int_t fVerbose
Definition: PndCaloDraw.h:82
Bool_t fUseEventTime
Definition: PndCaloDraw.h:102
Int_t iVerbose
FairRootManager * fManager
Definition: PndCaloDraw.h:94
PndCaloDraw::~PndCaloDraw ( )
virtual

Destructor

Definition at line 168 of file PndCaloDraw.cxx.

169 {
170 }
PndCaloDraw::PndCaloDraw ( const PndCaloDraw )
private

Member Function Documentation

PndCaloDraw::ClassDef ( PndCaloDraw  ,
 
)
private
FairBoxSet* PndCaloDraw::CreateBoxSet ( )
void PndCaloDraw::Exec ( Option_t *  option)
virtual

Executed task

Definition at line 115 of file PndCaloDraw.cxx.

References Double_t, fCalo3D, fCaloHisto, fEveHist, FillHisto(), fList, fStartFunctor, fStartTime, fStopFunctor, fTimeWindowMinus, fTimeWindowPlus, fUseEventTime, fVerbose, i, p, and Reset().

116 {
117  if(IsActive()) {
118  TObject* p;
119  Reset();
120  // cout<< "PndCaloDraw::Init() Exec! " << fList->GetEntriesFast() << endl;
121  if (FairRunAna::Instance()->IsTimeStamp()) {
122  fList->Clear();
123  Double_t eventTime = FairRootManager::Instance()->GetEventTime();
124  if (fUseEventTime) { fStartTime = eventTime - fTimeWindowMinus; }
125  cout << "EventTime: " << eventTime << " TimeWindow: " << fStartTime << " - " << eventTime + fTimeWindowPlus << std::endl;
126 
127  fList = FairRootManager::Instance()->GetData(GetName(), fStartFunctor, fStartTime, fStopFunctor, eventTime + fTimeWindowPlus); //FairRootManager::Instance()->GetEventTime() +
128 
129  }
130 
131  //fList = (TClonesArray *)fManager->GetObject(GetName());
132  if (fVerbose > 1) {
133  std::cout << GetName() << " fList: " << fList->GetEntries() << std::endl;
134  }
135  fCaloHisto->Reset();
136  for (Int_t i=0; i<fList->GetEntriesFast(); ++i) {
137  p=fList->At(i);
138  FillHisto(p);
139  }
140  fCalo3D->SetMaxValAbs(fCaloHisto->GetBinContent(fCaloHisto->GetMaximumBin()));
141  std::cout << "CaloHisto MaxValue: " << fEveHist->GetMaxVal(kTRUE) << " " << fCaloHisto->GetBinContent(fCaloHisto->GetMaximumBin()) << std::endl;
142  fCalo3D->DataChanged();
143  gEve->Redraw3D(kFALSE);
144  }
145 }
Double_t p
Definition: anasim.C:58
BinaryFunctor * fStartFunctor
Definition: PndCaloDraw.h:108
TClonesArray * fList
Definition: PndCaloDraw.h:92
TH2F * fCaloHisto
Definition: PndCaloDraw.h:95
Int_t i
Definition: run_full.C:25
Double_t fStartTime
Definition: PndCaloDraw.h:101
Double_t fTimeWindowMinus
Definition: PndCaloDraw.h:100
Double_t fTimeWindowPlus
Definition: PndCaloDraw.h:99
Double_t
BinaryFunctor * fStopFunctor
Definition: PndCaloDraw.h:109
Int_t fVerbose
Definition: PndCaloDraw.h:82
TEveCalo3D * fCalo3D
Definition: PndCaloDraw.h:97
TEveCaloDataHist * fEveHist
Definition: PndCaloDraw.h:96
Bool_t fUseEventTime
Definition: PndCaloDraw.h:102
virtual void FillHisto(TObject *obj)
void PndCaloDraw::FillHisto ( TObject *  obj)
protectedvirtual

Definition at line 148 of file PndCaloDraw.cxx.

References Double_t, energy, fCaloHisto, GetEnergy(), and GetVector().

Referenced by Exec().

149 {
150  TVector3 position = GetVector(obj);
151  Double_t energy = GetEnergy(obj);
152 
153  fCaloHisto->Fill(position.PseudoRapidity(), position.Phi(), energy);
154 }
virtual TVector3 GetVector(TObject *obj)=0
TH2F * fCaloHisto
Definition: PndCaloDraw.h:95
Double_t
virtual Double_t GetEnergy(TObject *obj)=0
Double_t energy
Definition: plot_dirc.C:15
void PndCaloDraw::Finish ( )
protectedvirtual

Action after each event

Definition at line 178 of file PndCaloDraw.cxx.

179 {
180 }
virtual Double_t PndCaloDraw::GetEnergy ( TObject *  obj)
protectedpure virtual

Implemented in PndEmcDigiCaloDraw, and PndEmcHitCaloDraw.

Referenced by FillHisto().

virtual Double_t PndCaloDraw::GetTimeWindowMinus ( )
inlinevirtual

Definition at line 63 of file PndCaloDraw.h.

References fTimeWindowMinus.

63 {return fTimeWindowMinus;}
Double_t fTimeWindowMinus
Definition: PndCaloDraw.h:100
virtual Double_t PndCaloDraw::GetTimeWindowPlus ( )
inlinevirtual

Definition at line 62 of file PndCaloDraw.h.

References fTimeWindowPlus.

62 {return fTimeWindowPlus;}
Double_t fTimeWindowPlus
Definition: PndCaloDraw.h:99
virtual TVector3 PndCaloDraw::GetVector ( TObject *  obj)
protectedpure virtual

Implemented in PndEmcDigiCaloDraw, and PndEmcHitCaloDraw.

Referenced by FillHisto().

InitStatus PndCaloDraw::Init ( )
protectedvirtual

Definition at line 71 of file PndCaloDraw.cxx.

References fCalo3D, fCaloHisto, fEveHist, fEventManager, fList, fManager, fStartFunctor, fStopFunctor, fVerbose, and Pi.

72 {
73  if(fVerbose>1) {
74  cout<< "PndCaloDraw::Init()" << endl;
75  }
76  fManager = FairRootManager::Instance();
77 
78  fList = (TClonesArray*)FairRootManager::Instance()->GetObject(GetName());
79  //std::cout << fList << std::endl;
80  if (fList==0) {
81  cout << "PndCaloDraw::Init() branch " << GetName() << " Not found! Task will be deactivated "<< endl;
82  SetActive(kFALSE);
83  return kERROR;
84  }
85  if(fVerbose>2) {
86  cout<< "PndCaloDraw::Init() get track list" << fList<< endl;
87  }
88  fEventManager =FairEventManager::Instance();
89  if(fVerbose>2) {
90  cout<< "PndCaloDraw::Init() get instance of FairEventManager " << endl;
91  }
92 
93  fCaloHisto = new TH2F("hBarrelCal","BarrelCal", 350, -5.191, 5.191, 200, -TMath::Pi(), TMath::Pi());
94  fEveHist = new TEveCaloDataHist();
95  fEveHist->AddHistogram(fCaloHisto);
96  fEveHist->RefSliceInfo(0).Setup("BarrelCalorimeter",0.01, kRed);
97  fEveHist->IncDenyDestroy();
98 // gEve->AddToListTree(fEveHist, kFALSE);
99 
100  fCalo3D = new TEveCalo3D(fEveHist);
101  fCalo3D->SetBarrelRadius(64.00);
102  fCalo3D->SetForwardEndCapPos(212);
103  fCalo3D->SetBackwardEndCapPos(-64);
104  fCalo3D->SetMaxTowerH(200.0);
105  fCalo3D->SetScaleAbs(kTRUE);
106  gEve->AddElement(fCalo3D, fEventManager );
107 
108 
109  fStartFunctor = new StopTime();
110  fStopFunctor = new StopTime();
111 
112  return kSUCCESS;
113 }
BinaryFunctor * fStartFunctor
Definition: PndCaloDraw.h:108
TClonesArray * fList
Definition: PndCaloDraw.h:92
TH2F * fCaloHisto
Definition: PndCaloDraw.h:95
BinaryFunctor * fStopFunctor
Definition: PndCaloDraw.h:109
FairEventManager * fEventManager
Definition: PndCaloDraw.h:93
Int_t fVerbose
Definition: PndCaloDraw.h:82
TEveCalo3D * fCalo3D
Definition: PndCaloDraw.h:97
TEveCaloDataHist * fEveHist
Definition: PndCaloDraw.h:96
Double_t Pi
FairRootManager * fManager
Definition: PndCaloDraw.h:94
PndCaloDraw& PndCaloDraw::operator= ( const PndCaloDraw )
private
void PndCaloDraw::Reset ( )

Definition at line 182 of file PndCaloDraw.cxx.

References fEventManager, and fq.

Referenced by Exec().

183 {
184  if(fq!=0) {
185  fq->Reset();
186  gEve->RemoveElement(fq, fEventManager );
187  }
188 }
FairBoxSet * fq
Definition: PndCaloDraw.cxx:33
FairEventManager * fEventManager
Definition: PndCaloDraw.h:93
void PndCaloDraw::SetParContainers ( )
protectedvirtual

Definition at line 172 of file PndCaloDraw.cxx.

173 {
174 
175 }
virtual void PndCaloDraw::SetStartTime ( Double_t  val)
inlinevirtual

Definition at line 70 of file PndCaloDraw.h.

References fStartTime, and val.

70 {fStartTime = val;}
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
Double_t fStartTime
Definition: PndCaloDraw.h:101
void PndCaloDraw::SetTimeWindowMinus ( Double_t  val)
virtual

Definition at line 157 of file PndCaloDraw.cxx.

References fTimeWindowMinus, and val.

158 {
160 }
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
Double_t fTimeWindowMinus
Definition: PndCaloDraw.h:100
void PndCaloDraw::SetTimeWindowPlus ( Double_t  val)
virtual

Definition at line 162 of file PndCaloDraw.cxx.

References fTimeWindowPlus, and val.

163 {
165 }
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
Double_t fTimeWindowPlus
Definition: PndCaloDraw.h:99
virtual void PndCaloDraw::SetVerbose ( Int_t  iVerbose)
inlinevirtual

Set verbosity level. For this task and all of the subtasks.

Definition at line 66 of file PndCaloDraw.h.

References fVerbose, and iVerbose.

66 {fVerbose = iVerbose;};
Int_t fVerbose
Definition: PndCaloDraw.h:82
Int_t iVerbose
virtual void PndCaloDraw::UseEventTimeAsStartTime ( Bool_t  val = kTRUE)
inlinevirtual

Definition at line 71 of file PndCaloDraw.h.

References fUseEventTime, and val.

71 {fUseEventTime = val;}
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
Bool_t fUseEventTime
Definition: PndCaloDraw.h:102

Member Data Documentation

TEveCalo3D* PndCaloDraw::fCalo3D
protected

Definition at line 97 of file PndCaloDraw.h.

Referenced by Exec(), and Init().

TH2F* PndCaloDraw::fCaloHisto
protected

Definition at line 95 of file PndCaloDraw.h.

Referenced by Exec(), FillHisto(), and Init().

TEveCaloDataHist* PndCaloDraw::fEveHist
protected

Definition at line 96 of file PndCaloDraw.h.

Referenced by Exec(), and Init().

FairEventManager* PndCaloDraw::fEventManager
protected

Definition at line 93 of file PndCaloDraw.h.

Referenced by Init(), and Reset().

TClonesArray* PndCaloDraw::fList
protected

Definition at line 92 of file PndCaloDraw.h.

Referenced by Exec(), and Init().

FairRootManager* PndCaloDraw::fManager
protected

Definition at line 94 of file PndCaloDraw.h.

Referenced by Init().

BinaryFunctor* PndCaloDraw::fStartFunctor
private

Definition at line 108 of file PndCaloDraw.h.

Referenced by Exec(), and Init().

Double_t PndCaloDraw::fStartTime
protected

Definition at line 101 of file PndCaloDraw.h.

Referenced by Exec(), and SetStartTime().

BinaryFunctor* PndCaloDraw::fStopFunctor
private

Definition at line 109 of file PndCaloDraw.h.

Referenced by Exec(), and Init().

Double_t PndCaloDraw::fTimeWindowMinus
protected

Definition at line 100 of file PndCaloDraw.h.

Referenced by Exec(), GetTimeWindowMinus(), and SetTimeWindowMinus().

Double_t PndCaloDraw::fTimeWindowPlus
protected

Definition at line 99 of file PndCaloDraw.h.

Referenced by Exec(), GetTimeWindowPlus(), and SetTimeWindowPlus().

Bool_t PndCaloDraw::fUseEventTime
protected

Definition at line 102 of file PndCaloDraw.h.

Referenced by Exec(), and UseEventTimeAsStartTime().

Int_t PndCaloDraw::fVerbose
protected

Definition at line 82 of file PndCaloDraw.h.

Referenced by Exec(), Init(), and SetVerbose().


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