PandaRoot
PndSttFindTracks.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndSttFindTracks header file -----
3 // ----- Created 29/03/06 by V. Friese -----
4 // -------------------------------------------------------------------------
5 
16 #ifndef PNDSTTFINDTRACKS
17 #define PNDSTTFINDTRACKS 1
18 
19 #include <PndPersistencyTask.h>
20 #include "PndGeoSttPar.h"
21 
22 #include <string>
23 #include <vector>
24 
25 class PndSttTrackFinder;
26 class TClonesArray;
27 
29 
30  public:
33 
38  PndSttFindTracks(PndSttTrackFinder *finder, Int_t verbose = 1);
39 
46  PndSttFindTracks(const char *name, const char *title = "PndPersistencyTask", PndSttTrackFinder *finder = nullptr, Int_t verbose = 1);
47 
49  virtual ~PndSttFindTracks();
50 
52  virtual InitStatus Init();
53 
55  virtual void Exec(Option_t *opt);
56 
58  virtual void Finish();
59 
60  void SetParContainers();
61 
63  PndSttTrackFinder *GetFinder() { return fFinder; };
64  Int_t GetNofTracks() { return fNofTracks; };
65 
67  void UseFinder(PndSttTrackFinder *finder) { fFinder = finder; };
68 
70  void AddHitCollectionName(char *hitCollectionName, char *pointCollectionName);
71 
73  void SetPersistence(Bool_t persistence) { SetPersistency(persistence); }
74 
76  void SetHelixHitProduction(Bool_t hhprod = kTRUE) { fHelixHitProduction = hhprod; }
77 
78  private:
79  void AddAllCollections();
80  void AddHitCollection(char const *collectionName, char const *pointCollectionName);
81 
82  PndSttTrackFinder *fFinder; // Pointer to TrackFinder concrete class
83  TClonesArray *fTrackCandArray; // Output array of PndTrackCand
84  TClonesArray *fTrackArray; // Output array of PndTrack
85 
86  TClonesArray *fHelixHitArray; // Output array of PndSttHelixHit
87 
88  Int_t fNofTracks; // Number of tracks created
89  Int_t fVerbose; // Verbosity level
90 
91  std::vector<std::string> fHitCollectionNames;
92  std::vector<std::string> fPointCollectionNames;
93 
94  Bool_t fCollectionsComplete;
95 
97  Bool_t fHelixHitProduction;
98 
99  Int_t fEventCounter;
100  // CHECK added
102  TClonesArray *fTubeArray;
103 
104  PndGeoSttPar *fSttParameters; // CHECK added
105 
106  ClassDef(PndSttFindTracks, 1);
107 };
108 
109 #endif
PndSttTrackFinder * GetFinder()
void SetPersistence(Bool_t persistence)
void SetPersistency(Bool_t val=kTRUE)
virtual InitStatus Init()
virtual void Finish()
void SetHelixHitProduction(Bool_t hhprod=kTRUE)
virtual void Exec(Option_t *opt)
void UseFinder(PndSttTrackFinder *finder)
void SetParContainers()
void AddHitCollectionName(char *hitCollectionName, char *pointCollectionName)
virtual ~PndSttFindTracks()