StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StiDetectorTreeBuilder.h
1 //StiDetectorTreeBuilder.h
2 //M.L. Miller (Yale Software)
3 //07/01
4 
47 #ifndef StiDetectorTreeBuilder_HH
48 #define StiDetectorTreeBuilder_HH
49 
50 #include <vector>
51 using std::vector;
52 #include "Sti/Base/Factory.h"
53 #include "StiCompositeTreeNode.h"
54 #include "StiDetector.h"
55 class StiDetectorBuilder;
56 
58 {
59 public:
60 
63 
65  virtual ~StiDetectorTreeBuilder();
66 
68 
78 
79 protected:
81  void loopOnDetectors();
82 
84  void buildRoot();
85 
87  void addToTree(StiDetector*);
88 
91  string& keystring,int newOne=0);
92 
96 
100 
103 
106 
108 
109 };
110 
111 #endif
StiDetectorNode * hangWhere(StiDetectorNode *parent, const StiOrderKey &order, string &keystring, int newOne=0)
Decide where to hang the detector object on the tree.
void addToTree(StiDetector *)
Actually hang an individual detector object on the tree.
StiDetectorNode * mroot
Store a pointer to the root of the tree.
StiDetectorNode * build(StiDetectorBuilder *builder)
Build the Detector model.
void loopOnDetectors()
Iterate over the detector objects served by StiDetectorBuilder.
StiDetectorTreeBuilder()
Default Contstructor.
Factory< StiDetectorNode > * mnodefactory
This object is assumed not to be owned by this class.
void buildRoot()
Assemble detector objects into tree.
StiDetectorBuilder * mDetectorBuilder
Store a pointer to the StiDetectorBuilder instance.
virtual ~StiDetectorTreeBuilder()
Default Destructor.
StiDetectorNode * mregion
Pointer to the current region in the tree (e.g., mid rapidity)