8 #include "FairBoxSet.h"
10 #include "TObjArray.h"
11 #include "TObjString.h"
12 #include "TEveManager.h"
13 #include "TEveBoxSet.h"
17 #include "FairRootManager.h"
26 FairBoxSetDraw(TrackCandName, iVerbose), fTrackCandList(0){
33 cout <<
"PndTrackCandDraw::Init()" << endl;
34 fManager = FairRootManager::Instance();
35 TList* branchNames = fManager->GetBranchNameList();
37 TIter
next(branchNames);
39 while ((brName = (TObjString*)
next())){
40 TClonesArray *array = (TClonesArray *) fManager->GetObject(brName->GetString().Data());
42 std::cout <<
"-I- PndTrackCandDraw::Init() branch " << brName->GetString().Data() <<
" not found!" << std::endl;
53 if (0 == strcmp(obj->ClassName(),
"GFTrackCand")
54 || 0 == strcmp(obj->ClassName(),
"PndLhePidTrack"))
56 else if (0 == strcmp(obj->ClassName(),
"PndTrackCand"))
63 if (0 == strcmp(obj->ClassName(),
"GFTrackCand")) {
65 std::cout <<
"fTrackCandList is full of GFTrackCands" << std::endl;
67 std::cout <<
"fTrackCandList is full of UNKNOWN " << obj->ClassName()
73 for (
size_t j = 0; j < tc->
getNHits(); j++) {
74 unsigned int detId, hitId;
75 tc->
getHit(j, detId, hitId);
77 set->AddBox(point.X(), point.Y(), point.Z());
85 std::cout <<
"Hits in TrackCand: " << std::endl;
87 ((FairMultiLinkedData_Interface*) pndtc)->
Print();
88 for (
size_t j = 0; j < pndtc->
GetNHits(); j++) {
90 set->AddBox(point.X(), point.Y(), point.Z());
91 std::cout <<
" color: " << i << std::endl;
98 FairRootManager* ioman = FairRootManager::Instance();
99 TString branchName = ioman->GetBranchName(detId);
100 TClonesArray* data = (TClonesArray*) (ioman->GetObject(branchName));
101 p =
dynamic_cast<FairHit*
>(data->At(hitId));
103 std::cout <<
"Hit in " << branchName <<
"(" << p->GetX() <<
"/" << p->GetY() <<
"/" << p->GetZ() <<
")" << std::endl;
104 return (TVector3(p->GetX(), p->GetY(), p->GetZ()));
111 FairRootManager* ioman = FairRootManager::Instance();
112 TString branchName = ioman->GetBranchName(link.GetType());
114 p = (FairHit*) ioman->GetCloneOfLinkData(link);
117 TVector3
vec(p->GetX(), p->GetY(), p->GetZ());
118 std::cout <<
"Hit in " << branchName <<
"Link: " << link <<
"(" << p->GetX() <<
"/" << p->GetY() <<
"/" << p->GetZ() <<
")";
virtual void AddBoxesTrackCand(FairBoxSet *set, TObject *obj, Int_t i=0)
PndTrackCandHit GetSortedHit(UInt_t i)
unsigned int getNHits() const
virtual ~PndTrackCandDraw()
void getHit(unsigned int i, unsigned int &detId, unsigned int &hitId) const
Get detector ID and cluster index (hitId) for hit number i.
Track candidate – a list of cluster indices.
virtual void AddBoxesPndTrackCand(FairBoxSet *set, TObject *obj, Int_t i=0)
virtual InitStatus Init()
virtual void AddBoxes(FairBoxSet *set, TObject *obj, Int_t i=0)
virtual TVector3 GetVector(TObject *obj)