#ifndef IStrawTrkGeomId_hxx_seen #define IStrawTrkGeomId_hxx_seen #include "IGeometryId.hxx" #include "IStrawTrkGeomId.hxx" namespace COMET { /// Define the geometry identifiers for elements in the COMET geometry. namespace GeomId { /// Define the Straw Tracker specific geometry identifiers. namespace StrawTrk { /// Direction of detected position by a straw layer (See GetStrawDirection()) enum kStrawDirectionDefinitions { kStrawTrkDirectionX = 0, kStrawTrkDirectionY = 1 }; /// Define a geometry identifier to the entire Str detector. IGeometryId Detector(); IGeometryId Module(int station, int manifoldXY, int layer, int strawTube, int strawGas, int strawWire); /// Check if the id is for the Str. bool IsStrawTrk(IGeometryId id); /// Check if the id is for the StrawGas bool IsStrawGas(IGeometryId id); /// Return Station Id int GetStationId(IGeometryId id); /// Return manifold Id of detected position (X:0 Y:1) int GetManifoldId(IGeometryId id); /// Return StrawTube Id int GetStrawId(IGeometryId id); } } } #endif