HighLAND
ToyBoxB.hxx
1 #ifndef ToyBoxB_h
2 #define ToyBoxB_h
3 
4 #include "BasicTypes.hxx"
5 //#include "SubDetId.hxx"
6 
7 /// This is the container used to pass information from one stem to another in the selection.
8 /// It contains internal info needed by the selection as the number of branches and the accum_level of each of
9 /// each of the branches. The SoftReset method resets this internal information
10 /// The box should be extended by the selections to hold specific information needed
11 
12 
13 class ToyBoxB{
14 public :
15 
16  // Create the Toy Box
17  ToyBoxB();
18  virtual ~ToyBoxB();
19 
20  /// Mandatory method to be implemented by the derived class. Reset the top level derived box
21  virtual void Reset() = 0;
22 
23  /// Mandatory method to be implemented by the derived class. Reset the base class for the top level box
24  virtual void ResetBase() = 0;
25 
26  /// Reset the ToyBoxB
27  void SoftReset();
28 
29 public:
30 
31  /// The number of branches in the selection this ToyBox belongs to
32  UInt_t nBranches;
33 
34  /// Accum level for each branch in this toy in the selection this ToyBox belongs to
35  Int_t* AccumLevel;
36 
37  /// Max Accum level among all branches for this toy in the selection this ToyBox belongs to. TODO: could be computed
38  /// from the previous array but in this way is should be faster
40 
41  /// Array telling us which branches were successful. TODO: If we assume branches are mutually exclusive we dont need this variable,
42  /// all we need is SuccsessfulBranch
43  bool* BranchPassed;
44 
45  /// The branch that is successful for this toy in the selection this ToyBox belongs to
47 
48  /// The enabled index of this selection this ToyBox belongs to
50 
51  /// Indicate the FV we are interested in
52  SubDetId_h DetectorFV;
53 
54 protected:
55  bool _ResetCheckDone;
56 };
57 
58 #endif
Int_t MaxAccumLevel
Definition: ToyBoxB.hxx:39
Int_t SelectionEnabledIndex
The enabled index of this selection this ToyBox belongs to.
Definition: ToyBoxB.hxx:49
SubDetId_h DetectorFV
Indicate the FV we are interested in.
Definition: ToyBoxB.hxx:52
UInt_t nBranches
The number of branches in the selection this ToyBox belongs to.
Definition: ToyBoxB.hxx:32
Int_t SuccessfulBranch
The branch that is successful for this toy in the selection this ToyBox belongs to.
Definition: ToyBoxB.hxx:46
void SoftReset()
Reset the ToyBoxB.
Definition: ToyBoxB.cxx:55
Int_t * AccumLevel
Accum level for each branch in this toy in the selection this ToyBox belongs to.
Definition: ToyBoxB.hxx:35
virtual void Reset()=0
Mandatory method to be implemented by the derived class. Reset the top level derived box...
Definition: ToyBoxB.cxx:29
virtual void ResetBase()=0
Mandatory method to be implemented by the derived class. Reset the base class for the top level box...
Definition: ToyBoxB.cxx:47
bool * BranchPassed
Definition: ToyBoxB.hxx:43