EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FairBoxSetDraw.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file FairBoxSetDraw.h
1 // -------------------------------------------------------------------------
2 // ----- FairBoxSetDraw header file -----
3 // ----- Created 26/03/09 by T. Stockmanns -----
4 // -------------------------------------------------------------------------
5 
6 
18 #ifndef FAIRBOXSETDRAW_H
19 #define FAIRBOXSETDRAW_H
20 
21 
22 #include "FairTask.h"
23 
24 #include "FairTSBufferFunctional.h"
25 
26 class FairBoxSet;
27 class TObject;
28 class TVector3;
29 class TClonesArray;
30 class FairEventManager;
31 class FairRootManager;
32 
33 class FairBoxSetDraw : public FairTask
34 {
35 
36  public:
37 
40 
41 
46  FairBoxSetDraw(const char* name, Int_t iVerbose = 1);
47 
49  virtual ~FairBoxSetDraw();
50 
51  virtual Double_t GetTimeWindowPlus() {return fTimeWindowPlus;}
52  virtual Double_t GetTimeWindowMinus() {return fTimeWindowMinus;}
53 
55  virtual void SetVerbose(Int_t iVerbose) {fVerbose = iVerbose;};
56  virtual void SetBoxDimensions(Double_t x, Double_t y, Double_t z) {
57  fX = x;
58  fY = y;
59  fZ = z;
60  }
61 
62  virtual void SetTimeWindowMinus(Double_t val);
63  virtual void SetTimeWindowPlus(Double_t val);
64  virtual void SetStartTime(Double_t val) {fStartTime = val;}
65  virtual void UseEventTimeAsStartTime(Bool_t val = kTRUE) {fUseEventTime = val;}
66 
68  virtual void Exec(Option_t* option);
69 
71 
72  void Reset();
73 
74  protected:
75 
76  Int_t fVerbose; // Verbosity level
77  virtual void SetParContainers() ;
78  virtual InitStatus Init();
80  virtual void Finish();
81 
82  virtual TVector3 GetVector(TObject* obj) = 0;
83  virtual Int_t GetValue(TObject* obj,Int_t i);
84  virtual void AddBoxes(FairBoxSet* set, TObject* obj, Int_t i = 0);
85 
86  TClonesArray* fList;
90  Double_t fX, fY, fZ;
91 
92  Double_t fTimeWindowPlus;
93  Double_t fTimeWindowMinus;
94  Double_t fStartTime;
95  Bool_t fUseEventTime;
96 
97 
98  private:
103 
105 
106 };
107 
108 
109 #endif