#ifndef CBMLITDETECTORLAYOUT_H_ #define CBMLITDETECTORLAYOUT_H_ #include "TObject.h" #include class CbmLitDetectorLayout { public: CbmLitDetectorLayout(); virtual ~CbmLitDetectorLayout(); void SetNofStations(Int_t nofStations) {fNofStations = nofStations;} void SetNofLayers(Int_t nofLayers) {fNofLayers = nofLayers;} void SetNofLayersPerStation(const std::vector& nofLayersPerStation) { fNofLayersPerStation = nofLayersPerStation; } void SetLayerZ(const std::vector& layerZPos) { fLayerZPos = layerZPos; } Int_t GetNofStations() { return fNofStations; } Int_t GetNofLayers() { return fNofLayers; } Int_t GetNofLayers(Int_t station) { return fNofLayersPerStation[station]; } Double_t GetLayerZ(Int_t layer) { return fLayerZPos[layer]; } Double_t GetLayerZ(Int_t station, Int_t layer) { Int_t sum = 0; for (Int_t i = 0; i < station; i++) sum += GetNofLayers(i); return GetLayerZ(sum + layer); } void Print(); private: Int_t fNofStations; Int_t fNofLayers; std::vector fNofLayersPerStation; std::vector fLayerZPos; ClassDef(CbmLitDetectorLayout, 1); }; #endif /*CBMLITDETECTORLAYOUT_H_*/