15 std::pair< std::vector<SensitiveTkDetector*>,
16 std::vector<SensitiveCaloDetector*> >
23 std::pair< std::vector<SensitiveTkDetector *>,std::vector<SensitiveCaloDetector*> > detList;
24 const std::vector<std::string>& rouNames = clg.
readoutNames();
26 <<
" AttachSD: Initialising " << rouNames.size() <<
" SDs";
27 for (
auto & rname : rouNames) {
31 std::unique_ptr<SensitiveDetector>
sd{
temp->make(rname,cpv,clg,p,man,reg)};
34 ss <<
" AttachSD: created a " << className <<
" with name " << rname;
37 detList.second.push_back(static_cast<SensitiveCaloDetector*>(
sd.release()));
40 detList.first.push_back(static_cast<SensitiveTkDetector*>(
sd.release()));
41 ss <<
" + tracking SD";
Compact representation of the geometrical detector hierarchy.
std::string className(const std::string &readoutName) const
const std::vector< std::string > & readoutNames(const std::string &className) const
std::pair< std::vector< SensitiveTkDetector * >, std::vector< SensitiveCaloDetector * > > create(const DDCompactView &, const SensitiveDetectorCatalog &, edm::ParameterSet const &, const SimTrackManager *, SimActivityRegistry ®) const
T get(const Candidate &c)
std::string className(const T &t)