#ifndef CBMSTTFINDVERTICES #define CBMSTTFINDVERTICES #include "CbmTask.h" class CbmSttVertexFinder; class CbmSttFindVertices : public CbmTask { public: /** Default constructor **/ CbmSttFindVertices(); /** Standard constructor *@param finder Pointer to STT track finder concrete class *@param verbose Verbosity level **/ CbmSttFindVertices(CbmSttVertexFinder* finder, Int_t verbose = 1); /** Constructor with name and title *@param name Name of class *@param title Task title *@param finder Pointer to STT track finder concrete class *@param verbose Verbosity level **/ CbmSttFindVertices(const char* name, const char* title = "CbmTask", CbmSttVertexFinder* finder = NULL, Int_t verbose = 1); /** Destructor **/ virtual ~CbmSttFindVertices(); /** Initialisation at beginning of each event **/ virtual InitStatus Init(); /** Task execution **/ virtual void Exec(Option_t* opt); /** Finish at the end of each event **/ virtual void Finish(); /** Accessors **/ CbmSttVertexFinder* GetFinder() { return fFinder; }; Int_t GetNofVertices() { return fNofVertices; }; /** Set concrete track finder **/ void UseFinder(CbmSttVertexFinder* finder) { fFinder = finder; }; private: CbmSttVertexFinder* fFinder; // Pointer to TrackFinder concrete class TClonesArray* fVertexArray; // Output array of CbmSttVertices Int_t fNofVertices; // Number of vertices created Int_t fVerbose; // Verbosity level ClassDef(CbmSttFindVertices,1); }; #endif