#ifndef PNDFTSMAPCREATOR_H #define PNDFTSMAPCREATOR_H #include #include #include "TObject.h" class PndFtsTube; class PndGeoFtsPar; class PndFtsMapCreator : public TObject { public: /** Public method Instance() ** for access to a singleton object **/ static PndFtsMapCreator* Instance(); PndFtsMapCreator(); PndFtsMapCreator(Int_t geoType); PndFtsMapCreator(PndGeoFtsPar *par); ~PndFtsMapCreator(); // general functions void SetGeneralParameters(); // general functions, to be specified depending on geo type Int_t GetTubeIDFromPath(TString path); //Int_t GetTubeIDFromName(TString name); Int_t GetChamberIDFromPath(TString path); Int_t GetLayerID(Int_t chamberid, Int_t tubeid, TString path); Int_t GetTubeIDTot(Int_t chamberid,Int_t layerid, Int_t tubeid, TString path); private: // geometry type 1 specific functions Int_t GetTubeIDFromPathGeoType1(TString path); Int_t GetTubeIDFromNameGeoType1(TString name); TString GetNameFromPathGeoType1(TString path); Int_t fGeoType; PndGeoFtsPar *fFtsParameters; Double_t fTubeInRad, fTubeOutRad; // fGeoType1 std::map copy_map; static PndFtsMapCreator* fgMapperInstance; protected: ClassDef(PndFtsMapCreator,1) }; #endif