1 #ifndef Fireworks_Core_FWGeometry_h 2 #define Fireworks_Core_FWGeometry_h 21 #include "TEveVSDStructs.h" 22 #include "TGeoMatrix.h" 34 enum SubDetector {
PixelBarrel = 1,
PixelEndcap = 2,
TIB = 3,
TID = 4,
TOB = 5,
TEC = 6,
CSC = 7,
DT = 8,
RPCBarrel = 9,
RPCEndcap = 10,
GEM = 11,
ME0 = 12};
41 Range(
void ) : min1( 9999 ), max1( -9999 ), min2( 9999 ), max2( -9999 ) {
52 bool haveExtraDet(
const char*)
const;
65 const TGeoMatrix*
getMatrix(
unsigned int id )
const;
67 static TFile*
findFile(
const char* fileName );
70 TGeoShape*
getShape(
unsigned int id )
const;
82 const float*
getCorners(
unsigned int id )
const;
87 void localToGlobal(
unsigned int id,
const float*
local,
float* global,
bool translatep=
true )
const;
88 void localToGlobal(
unsigned int id,
const float* local1,
float* global1,
const float* local2,
float* global2,
bool translatep=
true )
const;
100 return ( this->
id <
id );
105 unsigned int id = o.
id;
106 return (((((
id >> kDetOffset ) & 0xF ) << 4) | ((
id >> kSubdetOffset ) & 0x7 )) == mask );
109 typedef std::vector<FWGeometry::GeomDetInfo>
IdToInfo;
110 typedef std::vector<FWGeometry::GeomDetInfo>::const_iterator
IdToInfoItr;
120 IdToInfoItr
find(
unsigned int )
const;
std::unique_ptr< TrackerTopology > m_trackerTopology
static TFile * findFile(const char *fileName)
TObjArray * extraDetectors
void initMap(const FWRecoGeom::InfoMap &map)
IdToInfoItr find(unsigned int) const
const float * getParameters(unsigned int id) const
bool match_id(const GeomDetInfo &o, unsigned int mask) const
TGeoShape * getShape(unsigned int id) const
const TGeoMatrix * getMatrix(unsigned int id) const
const VersionInfo & versionInfo() const
std::map< unsigned int, TGeoMatrix * > m_idToMatrix
const float * getShapePars(unsigned int id) const
bool operator<(const FedChannelConnection &, const FedChannelConnection &)
IdToInfoItr mapEnd() const
VersionInfo m_versionInfo
TEveGeoShape * getEveShape(unsigned int id) const
void loadMap(const char *fileName)
void localToGlobal(unsigned int id, const float *local, float *global, bool translatep=true) const
bool contains(unsigned int id) const
std::vector< FWRecoGeom::Info > InfoMap
static const int kSubdetOffset
int getProducerVersion() const
const float * getCorners(unsigned int id) const
std::vector< unsigned int > getMatchedIds(Detector det, SubDetector subdet) const
std::vector< FWGeometry::GeomDetInfo > IdToInfo
static const int kDetOffset
const TrackerTopology * getTrackerTopology() const
std::vector< FWGeometry::GeomDetInfo >::const_iterator IdToInfoItr