star-travex
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
StiHifyTreeMaker.cxx
Go to the documentation of this file.
2 
3 #include "TBranch.h"
4 
5 #include "StEvent/StEnumerations.h"
6 #include "Sti/StiToolkit.h"
7 #include "Sti/StiHitContainer.h"
8 #include "Sti/StiTrackContainer.h"
9 #include "StiMaker/StiMaker.h"
10 
12 #include "StiHify/StiHifyEvent.h"
13 
15 
16 
17 StiHifyTreeMaker::StiHifyTreeMaker(const std::string &name) : StiTreeMaker(name, "stihify"),
18  fStiVolumeFilter(StiVolumeFilter::GetInstance())
19 {
20 }
21 
22 
24 {
25  // Pass detector Id to event to constrain type of track nodes to save in event
27  fTree->Branch("e.", "StiHifyEvent", &fEvent, 64000, 99);
28 }
29 
30 
32 {
33  // Fill event with information from Sti tracks
34  StiMaker* stiMaker = (StiMaker*) GetMaker("Sti");
35  assert(stiMaker);
36 
37  StiToolkit *stiToolkit = stiMaker->getToolkit();
38 
39  StiHitContainer *stiHitContainer = stiToolkit->getHitContainer();
40  fEvent->Fill(*stiHitContainer);
41 
42  StiTrackContainer *stiTrackContainer = stiToolkit->getTrackContainer();
43  fEvent->Fill(*stiTrackContainer);
44 
45  // Fill other quantities which depend on already filled track and hit containers
46  fEvent->PostFill();
47 
48  fTree->Fill();
49 
50  return kStOk;
51 }
virtual void SetEventTree()
TTree * fTree
Definition: StiTreeMaker.h:30
virtual EReturnCodes PostFill()
Definition: TStiEvent.cxx:67
virtual Int_t Make()
A singleton to manage constraints on save Sti objects such as tracks and track nodes.
TStiEvent * fEvent
Definition: StiTreeMaker.h:31
const StiVolumeFilter & fStiVolumeFilter
Reference to singleton with selection criteria.
ClassImp(StiHifyTreeMaker) StiHifyTreeMaker
virtual EReturnCodes Fill(const StiTrackContainer &stiTrackContainer)
Definition: TStiEvent.cxx:40