28 std::cout<<
"GeometricDetLoader::GeometricDetLoader"<<std::endl;
33 std::cout<<
"GeometricDetLoader::~GeometricDetLoader"<<std::endl;
39 std::cout<<
"GeometricDetLoader::beginJob"<<std::endl;
43 std::cout<<
"PoolDBOutputService unavailable"<<std::endl;
54 std::vector<const GeometricDet*> tc = tracker->
components();
55 std::cout <<
"Tracker has " << tc.size() <<
" components." << std::endl;
56 std::vector<const GeometricDet*>::const_iterator git = tc.begin();
57 std::vector<const GeometricDet*>::const_iterator egit = tc.end();
60 for (; git!= egit; ++git) {
62 std::vector<const GeometricDet*> inone = (*git)->components();
65 if ( inone.empty() ) ++count;
66 std::vector<const GeometricDet*>::const_iterator git2 = inone.begin();
67 std::vector<const GeometricDet*>::const_iterator egit2 = inone.end();
69 for (; git2 != egit2; ++git2) {
71 std::vector<const GeometricDet*> intwo= (*git2)->components();
73 if ( intwo.empty() ) ++count;
74 std::vector<const GeometricDet*>::const_iterator git3 = intwo.begin();
75 std::vector<const GeometricDet*>::const_iterator egit3 = intwo.end();
77 for (; git3 != egit3; ++git3) {
79 std::vector<const GeometricDet*> inthree= (*git3)->components();
81 if ( inthree.empty() ) ++count;
82 std::vector<const GeometricDet*>::const_iterator git4 = inthree.begin();
83 std::vector<const GeometricDet*>::const_iterator egit4 = inthree.end();
85 for (; git4 != egit4; ++git4) {
87 std::vector<const GeometricDet*> infour= (*git4)->components();
89 if ( infour.empty() ) ++count;
90 std::vector<const GeometricDet*>::const_iterator git5 = infour.begin();
91 std::vector<const GeometricDet*>::const_iterator egit5 = infour.end();
93 for (; git5 != egit5; ++git5) {
95 std::vector<const GeometricDet*> infive= (*git5)->components();
97 if ( infive.empty() ) ++count;
98 std::vector<const GeometricDet*>::const_iterator git6 = infive.begin();
99 std::vector<const GeometricDet*>::const_iterator egit6 = infive.end();
101 for (; git6 != egit6; ++git6) {
103 std::vector<const GeometricDet*> insix= (*git6)->components();
105 if ( insix.empty() ) ++count;
118 std::cout <<
" No. of Tracker components \"deepComponents\" = " << modules.size() << std::endl;
119 std::cout <<
" Counted # of lowest \"leaves\" = " << count << std::endl;
124 ,
"PGeometricDetRcd");
126 std::cout <<
"PGeometricDetRcd Tag is already present." << std::endl;
140 rot.GetComponents(x, y, z);
ROOT::Math::Rotation3D DDRotationMatrix
A DDRotationMatrix is currently implemented with a ROOT Rotation3D.
DDSolidShape const & shape() const
std::vector< Item > pgeomdets_
DetId geographicalID() const
GeometricDetLoader(const edm::ParameterSet &iConfig)
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
ConstGeometricDetContainer & components()
std::vector< double > const & params() const
DDName const & name() const
#define DEFINE_FWK_MODULE(type)
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DD3Vector
A DD Translation is currently implemented with Root Vector3D.
bool isNewTagRequest(const std::string &recordName)
cond::Time_t beginOfTime() const
DDTranslation const & translation() const
double pixROCCols() const
DDRotationMatrix const & rotation() const
void createNewIOV(T *firstPayloadObj, cond::Time_t firstSinceTime, cond::Time_t firstTillTime, const std::string &recordName, bool withlogging=false)
void putOne(const GeometricDet *gd, PGeometricDet *pgd, int lev)
cond::Time_t endOfTime() const
ConstGeometricDetContainer deepComponents() const
~GeometricDetLoader() override
void beginRun(edm::Run const &iEvent, edm::EventSetup const &) override
double siliconAPVNum() const
double pixROCRows() const
const std::string & name() const
Returns the name.
GeometricEnumType type() const