16 #include <boost/function.hpp>
17 #include <boost/bind.hpp>
32 vector<BarrelDetLayer*> thePxlBarLayers;
33 vector<BarrelDetLayer*> theTIBLayers;
34 vector<BarrelDetLayer*> theTOBLayers;
35 vector<ForwardDetLayer*> theNegPxlFwdLayers;
36 vector<ForwardDetLayer*> thePosPxlFwdLayers;
37 vector<ForwardDetLayer*> theNegTIDLayers;
38 vector<ForwardDetLayer*> thePosTIDLayers;
39 vector<ForwardDetLayer*> theNegTECLayers;
40 vector<ForwardDetLayer*> thePosTECLayers;
42 using namespace trackerTrie;
51 typedef TrackingGeometry::DetUnitContainer::const_iterator Iter;
52 Iter
b=modules.begin();
58 unsigned int rawid = (*b)->geographicalId().rawId();
64 unsigned int rawid = (*last)->geographicalId().rawId();
65 int subdetid = (*last)->geographicalId().subdetId();
66 std::cout << rawid <<
" " << subdetid << std::endl;
71 unsigned int layerId[] = {1,3,5,21,22,41,42,61,62};
86 for (
int i=0;
i<9;
i++) {
88 if (layerId[
i]>9) s+=char(layerId[
i]/10);
89 s+=char(layerId[
i]%10);
99 vector<const GeometricDet*> theGeometricDetLayers = theGeometricTracker->
components();
100 for(vector<const GeometricDet*>::const_iterator it=theGeometricDetLayers.begin();
101 it!=theGeometricDetLayers.end(); it++){
104 vector<const GeometricDet*> thePxlBarGeometricDetLayers = (*it)->components();
105 for(vector<const GeometricDet*>::const_iterator it2=thePxlBarGeometricDetLayers.begin();
106 it2!=thePxlBarGeometricDetLayers.end(); it2++){
107 thePxlBarLayers.push_back( aPixelBarrelLayerBuilder.
build(*it2,theGeomDetGeometry) );
112 vector<const GeometricDet*> theTIBGeometricDetLayers = (*it)->components();
113 for(vector<const GeometricDet*>::const_iterator it2=theTIBGeometricDetLayers.begin();
114 it2!=theTIBGeometricDetLayers.end(); it2++){
115 theTIBLayers.push_back( aTIBLayerBuilder.
build(*it2,theGeomDetGeometry) );
120 vector<const GeometricDet*> theTOBGeometricDetLayers = (*it)->components();
121 for(vector<const GeometricDet*>::const_iterator it2=theTOBGeometricDetLayers.begin();
122 it2!=theTOBGeometricDetLayers.end(); it2++){
123 theTOBLayers.push_back( aTOBLayerBuilder.
build(*it2,theGeomDetGeometry) );
129 vector<const GeometricDet*> thePxlFwdGeometricDetLayers = (*it)->components();
130 for(vector<const GeometricDet*>::const_iterator it2=thePxlFwdGeometricDetLayers.begin();
131 it2!=thePxlFwdGeometricDetLayers.end(); it2++){
132 if((*it2)->positionBounds().z() < 0)
133 theNegPxlFwdLayers.push_back( aPixelForwardLayerBuilder.
build(*it2,theGeomDetGeometry) );
134 if((*it2)->positionBounds().z() > 0)
135 thePosPxlFwdLayers.push_back( aPixelForwardLayerBuilder.
build(*it2,theGeomDetGeometry) );
142 vector<const GeometricDet*> theTIDGeometricDetLayers = (*it)->components();
143 for(vector<const GeometricDet*>::const_iterator it2=theTIDGeometricDetLayers.begin();
144 it2!=theTIDGeometricDetLayers.end(); it2++){
145 if((*it2)->positionBounds().z() < 0)
146 theNegTIDLayers.push_back( aTIDLayerBuilder.
build(*it2,theGeomDetGeometry) );
147 if((*it2)->positionBounds().z() > 0)
148 thePosTIDLayers.push_back( aTIDLayerBuilder.
build(*it2,theGeomDetGeometry) );
153 vector<const GeometricDet*> theTECGeometricDetLayers = (*it)->components();
154 for(vector<const GeometricDet*>::const_iterator it2=theTECGeometricDetLayers.begin();
155 it2!=theTECGeometricDetLayers.end(); it2++){
156 if((*it2)->positionBounds().z() < 0)
157 theNegTECLayers.push_back( aTECLayerBuilder.
build(*it2,theGeomDetGeometry) );
158 if((*it2)->positionBounds().z() > 0)
159 thePosTECLayers.push_back( aTECLayerBuilder.
build(*it2,theGeomDetGeometry) );
168 theNegPxlFwdLayers,theNegTIDLayers,theNegTECLayers,
169 thePosPxlFwdLayers,thePosTIDLayers,thePosTECLayers);
virtual char const * what() const
PixelBarrelLayer * build(const GeometricDet *aPixelBarrelLayer, const TrackerGeometry *theGeomDetGeometry)
std::string trackerHierarchy(unsigned int id)
virtual const DetUnitContainer & detUnits() const
Returm a vector of all GeomDetUnit.
void insert(std::string const &str, const T &value)
TECLayer * build(const GeometricDet *aTECLayer, const TrackerGeometry *theGeomDetGeometry)
TIBLayer * build(const GeometricDet *aTIBLayer, const TrackerGeometry *theGeomDetGeometry)
TOBLayer * build(const GeometricDet *aTOBLayer, const TrackerGeometry *theGeomDetGeometry)
PixelForwardLayer * build(const GeometricDet *aPixelForwardLayer, const TrackerGeometry *theGeomDetGeometry)
std::vector< GeomDetUnit * > DetUnitContainer
GeometricSearchTracker * build(const GeometricDet *theGeometricTracker, const TrackerGeometry *theGeomDetGeometry)
GeometricDetContainer & components()
TIDLayer * build(const GeometricDet *aTIDLayer, const TrackerGeometry *theGeomDetGeometry)
const TrieNode< T > * node(std::string const &str) const
get node matching a string