CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
MeasurementTrackerImpl Class Reference

#include <MeasurementTrackerImpl.h>

Inheritance diagram for MeasurementTrackerImpl:
MeasurementTracker MeasurementDetSystem OnDemandMeasurementTracker

Public Types

typedef std::unordered_map
< unsigned int, MeasurementDet * > 
DetContainer
 
enum  QualityFlags {
  BadModules =1, BadAPVFibers =2, BadStrips =4, MaskBad128StripBlocks =8,
  BadROCs =2
}
 
- Public Types inherited from MeasurementTracker
enum  QualityFlags {
  BadModules =1, BadAPVFibers =2, BadStrips =4, MaskBad128StripBlocks =8,
  BadROCs =2
}
 

Public Member Functions

const DetContainerallDets () const
 For debug only. More...
 
const MeasurementDetfindDet (const DetId &id) const
 
const GeometricSearchTrackergeometricSearchTracker () const
 
const TrackingGeometrygeomTracker () const
 
const std::vector
< TkGluedMeasurementDet > & 
gluedDets () const
 
virtual MeasurementDetWithData idToDet (const DetId &id, const MeasurementTrackerEvent &data) const
 MeasurementDetSystem interface (won't be overloaded anymore) More...
 
virtual const MeasurementDetidToDetBare (const DetId &id, const MeasurementTrackerEvent &data) const
 This interface (will be overloaded by the OnDemand one) More...
 
 MeasurementTrackerImpl (const edm::ParameterSet &conf, const PixelClusterParameterEstimator *pixelCPE, const StripClusterParameterEstimator *stripCPE, const SiStripRecHitMatcher *hitMatcher, const TrackerGeometry *trackerGeom, const GeometricSearchTracker *geometricSearchTracker, const SiStripQuality *stripQuality, int stripQualityFlags, int stripQualityDebugFlags, const SiPixelQuality *pixelQuality, const SiPixelFedCabling *pixelCabling, int pixelQualityFlags, int pixelQualityDebugFlags, bool isRegional=false)
 
virtual const
PxMeasurementConditionSet
pixelDetConditions () const
 
const std::vector
< TkPixelMeasurementDet > & 
pixelDets () const
 
virtual const
StMeasurementConditionSet
stripDetConditions () const
 Provide templates to be filled in. More...
 
const std::vector
< TkStripMeasurementDet > & 
stripDets () const
 
virtual ~MeasurementTrackerImpl ()
 
- Public Member Functions inherited from MeasurementTracker
const GeometricSearchTrackergeometricSearchTracker () const
 
const TrackingGeometrygeomTracker () const
 
 MeasurementTracker (TrackerGeometry const *trackerGeom, GeometricSearchTracker const *geometricSearchTracker)
 
virtual ~MeasurementTracker ()
 

Protected Member Functions

void addGluedDet (const GluedGeomDet *gd)
 
void addPixelDet (const GeomDet *gd)
 
void addPixelDets (const TrackingGeometry::DetContainer &dets)
 
void addStripDet (const GeomDet *gd)
 
void addStripDets (const TrackingGeometry::DetContainer &dets)
 
void initGluedDet (TkGluedMeasurementDet &det)
 
void initialize ()
 
void initializePixelStatus (const SiPixelQuality *stripQuality, const SiPixelFedCabling *pixelCabling, int qualityFlags, int qualityDebugFlags)
 
void initializeStripStatus (const SiStripQuality *stripQuality, int qualityFlags, int qualityDebugFlags)
 
void initPxMeasurementConditionSet (std::vector< TkPixelMeasurementDet > &pixelDets)
 
void initStMeasurementConditionSet (std::vector< TkStripMeasurementDet > &stripDets)
 

Protected Attributes

const std::string name_
 
const edm::ParameterSetpset_
 
DetContainer theDetMap
 
std::vector
< TkGluedMeasurementDet > 
theGluedDets
 
const SiPixelFedCablingthePixelCabling
 
std::vector
< TkPixelMeasurementDet
thePixelDets
 
PxMeasurementConditionSet thePxDetConditions
 
StMeasurementConditionSet theStDetConditions
 
std::vector
< TkStripMeasurementDet > 
theStripDets
 
- Protected Attributes inherited from MeasurementTracker
const GeometricSearchTrackertheGeometricSearchTracker
 
const TrackerGeometrytheTrackerGeom
 

Detailed Description

Definition at line 45 of file MeasurementTrackerImpl.h.

Member Typedef Documentation

typedef std::unordered_map<unsigned int,MeasurementDet*> MeasurementTrackerImpl::DetContainer

Definition at line 99 of file MeasurementTrackerImpl.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

MeasurementTrackerImpl::MeasurementTrackerImpl ( const edm::ParameterSet conf,
const PixelClusterParameterEstimator pixelCPE,
const StripClusterParameterEstimator stripCPE,
const SiStripRecHitMatcher hitMatcher,
const TrackerGeometry trackerGeom,
const GeometricSearchTracker geometricSearchTracker,
const SiStripQuality stripQuality,
int  stripQualityFlags,
int  stripQualityDebugFlags,
const SiPixelQuality pixelQuality,
const SiPixelFedCabling pixelCabling,
int  pixelQualityFlags,
int  pixelQualityDebugFlags,
bool  isRegional = false 
)

Definition at line 71 of file MeasurementTrackerImpl.cc.

References initialize(), initializePixelStatus(), and initializeStripStatus().

84  :
85  MeasurementTracker(trackerGeom,geometricSearchTracker),
86  pset_(conf),
87  name_(conf.getParameter<std::string>("ComponentName")),
88  theStDetConditions(hitMatcher,stripCPE,isRegional),
89  thePxDetConditions(pixelCPE)
90 {
91  this->initialize();
92  this->initializeStripStatus(stripQuality, stripQualityFlags, stripQualityDebugFlags);
93  this->initializePixelStatus(pixelQuality, pixelCabling, pixelQualityFlags, pixelQualityDebugFlags);
94 }
T getParameter(std::string const &) const
StMeasurementConditionSet theStDetConditions
void initializeStripStatus(const SiStripQuality *stripQuality, int qualityFlags, int qualityDebugFlags)
void initializePixelStatus(const SiPixelQuality *stripQuality, const SiPixelFedCabling *pixelCabling, int qualityFlags, int qualityDebugFlags)
const edm::ParameterSet & pset_
MeasurementTracker(TrackerGeometry const *trackerGeom, GeometricSearchTracker const *geometricSearchTracker)
PxMeasurementConditionSet thePxDetConditions
MeasurementTrackerImpl::~MeasurementTrackerImpl ( )
virtual

Definition at line 96 of file MeasurementTrackerImpl.cc.

97 {
98 }

Member Function Documentation

void MeasurementTrackerImpl::addGluedDet ( const GluedGeomDet gd)
protected

Definition at line 215 of file MeasurementTrackerImpl.cc.

References StMeasurementConditionSet::matcher(), StMeasurementConditionSet::stripCPE(), theGluedDets, and theStDetConditions.

Referenced by addStripDets().

216 {
217  theGluedDets.push_back(TkGluedMeasurementDet( gd, theStDetConditions.matcher(), theStDetConditions.stripCPE() ));
218 }
StMeasurementConditionSet theStDetConditions
const SiStripRecHitMatcher * matcher() const
const StripClusterParameterEstimator * stripCPE() const
std::vector< TkGluedMeasurementDet > theGluedDets
void MeasurementTrackerImpl::addPixelDet ( const GeomDet gd)
protected

Definition at line 205 of file MeasurementTrackerImpl.cc.

References thePixelDets, thePxDetConditions, and cms::Exception::what().

Referenced by addPixelDets().

206 {
207  try {
209  }
210  catch(MeasurementDetException& err){
211  edm::LogError("MeasurementDet") << "Oops, got a MeasurementDetException: " << err.what() ;
212  }
213 }
virtual char const * what() const
Definition: Exception.cc:141
std::vector< TkPixelMeasurementDet > thePixelDets
PxMeasurementConditionSet thePxDetConditions
void MeasurementTrackerImpl::addPixelDets ( const TrackingGeometry::DetContainer dets)
protected

Definition at line 162 of file MeasurementTrackerImpl.cc.

References addPixelDet().

Referenced by initialize().

163 {
164  for (TrackerGeometry::DetContainer::const_iterator gd=dets.begin();
165  gd != dets.end(); gd++) {
166  addPixelDet(*gd);
167  }
168 }
void addPixelDet(const GeomDet *gd)
void MeasurementTrackerImpl::addStripDet ( const GeomDet gd)
protected

Definition at line 195 of file MeasurementTrackerImpl.cc.

References theStDetConditions, theStripDets, and cms::Exception::what().

Referenced by addStripDets().

196 {
197  try {
198  theStripDets.push_back(TkStripMeasurementDet( gd, theStDetConditions ));
199  }
200  catch(MeasurementDetException& err){
201  edm::LogError("MeasurementDet") << "Oops, got a MeasurementDetException: " << err.what() ;
202  }
203 }
virtual char const * what() const
Definition: Exception.cc:141
std::vector< TkStripMeasurementDet > theStripDets
StMeasurementConditionSet theStDetConditions
void MeasurementTrackerImpl::addStripDets ( const TrackingGeometry::DetContainer dets)
protected

Definition at line 170 of file MeasurementTrackerImpl.cc.

References addGluedDet(), and addStripDet().

Referenced by initialize().

171 {
172  for (TrackerGeometry::DetContainer::const_iterator gd=dets.begin();
173  gd != dets.end(); gd++) {
174 
175  const GeomDetUnit* gdu = dynamic_cast<const GeomDetUnit*>(*gd);
176 
177  // StripSubdetector stripId( (**gd).geographicalId());
178  // bool isDetUnit( gdu != 0);
179  // cout << "StripSubdetector glued? " << stripId.glued()
180  // << " is DetUnit? " << isDetUnit << endl;
181 
182  if (gdu != 0) {
183  addStripDet(*gd);
184  }
185  else {
186  const GluedGeomDet* gluedDet = dynamic_cast<const GluedGeomDet*>(*gd);
187  if (gluedDet == 0) {
188  throw MeasurementDetException("MeasurementTracker ERROR: GeomDet neither DetUnit nor GluedDet");
189  }
190  addGluedDet(gluedDet);
191  }
192  }
193 }
void addStripDet(const GeomDet *gd)
void addGluedDet(const GluedGeomDet *gd)
const DetContainer& MeasurementTrackerImpl::allDets ( ) const
inline

For debug only.

Definition at line 102 of file MeasurementTrackerImpl.h.

References theDetMap.

102 {return theDetMap;}
const MeasurementDet* MeasurementTrackerImpl::findDet ( const DetId id) const
inline

Definition at line 87 of file MeasurementTrackerImpl.h.

References theDetMap.

Referenced by idToDetBare(), and initGluedDet().

88  {
89  auto it = theDetMap.find(id);
90  if(it !=theDetMap.end()) {
91  return it->second;
92  }else{
93  //throw exception;
94  }
95 
96  return 0; //to avoid compile warning
97  }
const GeometricSearchTracker* MeasurementTrackerImpl::geometricSearchTracker ( ) const
inline

Definition at line 70 of file MeasurementTrackerImpl.h.

References MeasurementTracker::theGeometricSearchTracker.

const GeometricSearchTracker * theGeometricSearchTracker
const TrackingGeometry* MeasurementTrackerImpl::geomTracker ( ) const
inline

Definition at line 68 of file MeasurementTrackerImpl.h.

References MeasurementTracker::theTrackerGeom.

68 { return theTrackerGeom;}
const TrackerGeometry * theTrackerGeom
const std::vector<TkGluedMeasurementDet>& MeasurementTrackerImpl::gluedDets ( ) const
inline

Definition at line 105 of file MeasurementTrackerImpl.h.

References theGluedDets.

105 {return theGluedDets;}
std::vector< TkGluedMeasurementDet > theGluedDets
virtual MeasurementDetWithData MeasurementTrackerImpl::idToDet ( const DetId id,
const MeasurementTrackerEvent data 
) const
inlinevirtual

MeasurementDetSystem interface (won't be overloaded anymore)

Implements MeasurementTracker.

Definition at line 74 of file MeasurementTrackerImpl.h.

References idToDetBare().

74  {
75  return MeasurementDetWithData(*idToDetBare(id, data), data);
76  }
virtual const MeasurementDet * idToDetBare(const DetId &id, const MeasurementTrackerEvent &data) const
This interface (will be overloaded by the OnDemand one)
virtual const MeasurementDet* MeasurementTrackerImpl::idToDetBare ( const DetId id,
const MeasurementTrackerEvent data 
) const
inlinevirtual

This interface (will be overloaded by the OnDemand one)

Reimplemented in OnDemandMeasurementTracker.

Definition at line 80 of file MeasurementTrackerImpl.h.

References findDet().

Referenced by idToDet().

80  {
81  return findDet(id);
82  }
const MeasurementDet * findDet(const DetId &id) const
void MeasurementTrackerImpl::initGluedDet ( TkGluedMeasurementDet &  det)
protected

Definition at line 220 of file MeasurementTrackerImpl.cc.

References findDet(), GeomDet::geographicalId(), GluedGeomDet::monoDet(), GluedGeomDet::stereoDet(), and theDetMap.

Referenced by initialize().

221 {
222  const GluedGeomDet& gd = det.specificGeomDet();
223  const MeasurementDet* monoDet = findDet( gd.monoDet()->geographicalId());
224  const MeasurementDet* stereoDet = findDet( gd.stereoDet()->geographicalId());
225  if (monoDet == 0 || stereoDet == 0) {
226  edm::LogError("MeasurementDet") << "MeasurementTracker ERROR: GluedDet components not found as MeasurementDets ";
227  throw MeasurementDetException("MeasurementTracker ERROR: GluedDet components not found as MeasurementDets");
228  }
229  det.init(monoDet,stereoDet);
230  theDetMap[gd.geographicalId()] = &det;
231 }
const GeomDetUnit * monoDet() const
Definition: GluedGeomDet.h:20
const MeasurementDet * findDet(const DetId &id) const
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:72
const GeomDetUnit * stereoDet() const
Definition: GluedGeomDet.h:21
void MeasurementTrackerImpl::initialize ( )
protected

Definition at line 101 of file MeasurementTrackerImpl.cc.

References addPixelDets(), addStripDets(), TrackerGeometry::detsPXB(), TrackerGeometry::detsPXF(), TrackerGeometry::detsTEC(), TrackerGeometry::detsTIB(), TrackerGeometry::detsTID(), TrackerGeometry::detsTOB(), i, StMeasurementConditionSet::id(), PxMeasurementConditionSet::id(), initGluedDet(), initPxMeasurementConditionSet(), initStMeasurementConditionSet(), theDetMap, theGluedDets, thePixelDets, thePxDetConditions, theStDetConditions, theStripDets, and MeasurementTracker::theTrackerGeom.

Referenced by MeasurementTrackerImpl().

102 {
105 
110 
111  // fist all stripdets
112  sortTKD(theStripDets);
114  for (unsigned int i=0; i!=theStripDets.size(); ++i)
116 
117  // now the glued dets
118  sortTKD(theGluedDets);
119  for (unsigned int i=0; i!=theGluedDets.size(); ++i)
121 
122  // and then the pixels, at last
123  sortTKD(thePixelDets);
125  for (unsigned int i=0; i!=thePixelDets.size(); ++i)
127 
128 }
int i
Definition: DBlmapReader.cc:9
unsigned int id(int i) const
std::vector< TkStripMeasurementDet > theStripDets
StMeasurementConditionSet theStDetConditions
const TrackerGeometry * theTrackerGeom
void initGluedDet(TkGluedMeasurementDet &det)
void addPixelDets(const TrackingGeometry::DetContainer &dets)
void addStripDets(const TrackingGeometry::DetContainer &dets)
unsigned int id(int i) const
const DetContainer & detsTEC() const
std::vector< TkPixelMeasurementDet > thePixelDets
void initStMeasurementConditionSet(std::vector< TkStripMeasurementDet > &stripDets)
const DetContainer & detsPXB() const
const DetContainer & detsTIB() const
std::vector< TkGluedMeasurementDet > theGluedDets
PxMeasurementConditionSet thePxDetConditions
const DetContainer & detsPXF() const
const DetContainer & detsTOB() const
void initPxMeasurementConditionSet(std::vector< TkPixelMeasurementDet > &pixelDets)
const DetContainer & detsTID() const
void MeasurementTrackerImpl::initializePixelStatus ( const SiPixelQuality stripQuality,
const SiPixelFedCabling pixelCabling,
int  qualityFlags,
int  qualityDebugFlags 
)
protected

Definition at line 310 of file MeasurementTrackerImpl.cc.

References BadModules, BadROCs, cond::rpcobgas::detid, SiPixelQuality::getBadRocPositions(), SiPixelQuality::getBadRocs(), i, SiPixelQuality::IsModuleUsable(), thePixelDets, and MeasurementTracker::theTrackerGeom.

Referenced by MeasurementTrackerImpl().

310  {
311  if ((quality != 0) && (qualityFlags != 0)) {
312  edm::LogInfo("MeasurementTracker") << "qualityFlags = " << qualityFlags;
313  unsigned int on = 0, tot = 0, badrocs = 0;
314  for (std::vector<TkPixelMeasurementDet>::iterator i=thePixelDets.begin();
315  i!=thePixelDets.end(); i++) {
316  uint32_t detid = ((*i).geomDet().geographicalId()).rawId();
317  if (qualityFlags & BadModules) {
318  bool isOn = quality->IsModuleUsable(detid);
319  (i)->setActive(isOn);
320  tot++; on += (unsigned int) isOn;
321  if (qualityDebugFlags & BadModules) {
322  edm::LogInfo("MeasurementTracker")<< "MeasurementTrackerImpl::initializePixelStatus : detid " << detid << " is " << (isOn ? "on" : "off");
323  }
324  } else {
325  (i)->setActive(true);
326  }
327  if ((qualityFlags & BadROCs) && (quality->getBadRocs(detid) != 0)) {
328  std::vector<LocalPoint> badROCs = quality->getBadRocPositions(detid, *theTrackerGeom, pixelCabling);
329  badrocs += badROCs.size();
330  (i)->setBadRocPositions(badROCs);
331  } else {
332  (i)->clearBadRocPositions();
333  }
334  }
335  if (qualityDebugFlags & BadModules) {
336  edm::LogInfo("MeasurementTracker PixelModuleStatus") <<
337  " Total modules: " << tot << ", active " << on <<", inactive " << (tot - on);
338  }
339  if (qualityDebugFlags & BadROCs) {
340  edm::LogInfo("MeasurementTracker PixelROCStatus") << " Total of bad ROCs: " << badrocs ;
341  }
342  } else {
343  for (std::vector<TkPixelMeasurementDet>::iterator i=thePixelDets.begin();
344  i!=thePixelDets.end(); i++) {
345  (i)->setActive(true); // module ON
346  }
347  }
348 }
int i
Definition: DBlmapReader.cc:9
const TrackerGeometry * theTrackerGeom
std::vector< TkPixelMeasurementDet > thePixelDets
void MeasurementTrackerImpl::initializeStripStatus ( const SiStripQuality stripQuality,
int  qualityFlags,
int  qualityDebugFlags 
)
protected

Definition at line 233 of file MeasurementTrackerImpl.cc.

References BadAPVFibers, BadModules, StMeasurementConditionSet::badStripCuts_, BadStrips, cond::rpcobgas::detid, StMeasurementConditionSet::getBadStripBlocks(), edm::ParameterSet::getParameter(), i, StMeasurementConditionSet::id(), j, MaskBad128StripBlocks, StMeasurementConditionSet::nDet(), pset_, StMeasurementConditionSet::set128StripStatus(), StMeasurementConditionSet::setActive(), StMeasurementConditionSet::setMaskBad128StripBlocks(), SiStripDetId::TEC, theStDetConditions, SiStripDetId::TIB, SiStripDetId::TID, and SiStripDetId::TOB.

Referenced by MeasurementTrackerImpl().

233  {
234  edm::ParameterSet cutPset = pset_.getParameter<edm::ParameterSet>("badStripCuts");
235  if (qualityFlags & BadStrips) {
236  typedef StMeasurementConditionSet::BadStripCuts BadStripCuts;
241  }
243 
244 
245  if ((quality != 0) && (qualityFlags != 0)) {
246  edm::LogInfo("MeasurementTracker") << "qualityFlags = " << qualityFlags;
247  unsigned int on = 0, tot = 0;
248  unsigned int foff = 0, ftot = 0, aoff = 0, atot = 0;
249  for (int i=0; i!= theStDetConditions.nDet(); i++) {
250  uint32_t detid = theStDetConditions.id(i);
251  if (qualityFlags & BadModules) {
252  bool isOn = quality->IsModuleUsable(detid);
254  tot++; on += (unsigned int) isOn;
255  if (qualityDebugFlags & BadModules) {
256  edm::LogInfo("MeasurementTracker")<< "MeasurementTrackerImpl::initializeStripStatus : detid " << detid << " is " << (isOn ? "on" : "off");
257  }
258  } else {
260  }
261  // first turn all APVs and fibers ON
263  if (qualityFlags & BadAPVFibers) {
264  short badApvs = quality->getBadApvs(detid);
265  short badFibers = quality->getBadFibers(detid);
266  for (int j = 0; j < 6; j++) {
267  atot++;
268  if (badApvs & (1 << j)) {
270  aoff++;
271  }
272  }
273  for (int j = 0; j < 3; j++) {
274  ftot++;
275  if (badFibers & (1 << j)) {
278  foff++;
279  }
280  }
281  }
282  auto & badStrips = theStDetConditions.getBadStripBlocks(i);
283  badStrips.clear();
284  if (qualityFlags & BadStrips) {
285  SiStripBadStrip::Range range = quality->getRange(detid);
286  for (SiStripBadStrip::ContainerIterator bit = range.first; bit != range.second; ++bit) {
287  badStrips.push_back(quality->decode(*bit));
288  }
289  }
290  }
291  if (qualityDebugFlags & BadModules) {
292  edm::LogInfo("MeasurementTracker StripModuleStatus") <<
293  " Total modules: " << tot << ", active " << on <<", inactive " << (tot - on);
294  }
295  if (qualityDebugFlags & BadAPVFibers) {
296  edm::LogInfo("MeasurementTracker StripAPVStatus") <<
297  " Total APVs: " << atot << ", active " << (atot-aoff) <<", inactive " << (aoff);
298  edm::LogInfo("MeasurementTracker StripFiberStatus") <<
299  " Total Fibers: " << ftot << ", active " << (ftot-foff) <<", inactive " << (foff);
300  }
301  } else {
302  for (int i=0; i!=theStDetConditions.nDet(); i++) {
303  theStDetConditions.setActive(i,true); // module ON
304  theStDetConditions.set128StripStatus(i,true); // all APVs and fibers ON
305  }
306  }
307 
308 }
T getParameter(std::string const &) const
int i
Definition: DBlmapReader.cc:9
StMeasurementConditionSet theStDetConditions
std::vector< unsigned int >::const_iterator ContainerIterator
unsigned int id(int i) const
void setActive(int i, bool active)
Turn on/off the module for reconstruction, for the full run or lumi (using info from DB...
std::vector< BadStripBlock > & getBadStripBlocks(int i)
int j
Definition: DBlmapReader.cc:9
const edm::ParameterSet & pset_
void setMaskBad128StripBlocks(bool maskThem)
std::pair< ContainerIterator, ContainerIterator > Range
void set128StripStatus(int i, bool good, int idx=-1)
void MeasurementTrackerImpl::initPxMeasurementConditionSet ( std::vector< TkPixelMeasurementDet > &  pixelDets)
protected

Definition at line 146 of file MeasurementTrackerImpl.cc.

References i, PxMeasurementConditionSet::id_, PxMeasurementConditionSet::init(), findQualityFiles::size, and thePxDetConditions.

Referenced by initialize().

147 {
148  // assume vector is full and ordered!
149  int size = pixelDets.size();
150  thePxDetConditions.init(size);
151 
152  for (int i=0; i!=size; ++i) {
153  auto & mdet = pixelDets[i];
154  mdet.setIndex(i);
155  thePxDetConditions.id_[i] = mdet.specificGeomDet().geographicalId().rawId();
156  }
157 }
int i
Definition: DBlmapReader.cc:9
const std::vector< TkPixelMeasurementDet > & pixelDets() const
std::vector< unsigned int > id_
PxMeasurementConditionSet thePxDetConditions
tuple size
Write out results.
void MeasurementTrackerImpl::initStMeasurementConditionSet ( std::vector< TkStripMeasurementDet > &  stripDets)
protected

Definition at line 130 of file MeasurementTrackerImpl.cc.

References i, StMeasurementConditionSet::id_, StMeasurementConditionSet::init(), findQualityFiles::size, DetId::subdetId(), StMeasurementConditionSet::subId_, theStDetConditions, and StMeasurementConditionSet::totalStrips_.

Referenced by initialize().

131 {
132  // assume vector is full and ordered!
133  int size = stripDets.size();
134  theStDetConditions.init(size);
135  for (int i=0; i!=size; ++i) {
136  auto & mdet = stripDets[i];
137  mdet.setIndex(i);
138  //intialize the detId !
139  theStDetConditions.id_[i] = mdet.specificGeomDet().geographicalId().rawId();
141  //initalize the total number of strips
142  theStDetConditions.totalStrips_[i] = mdet.specificGeomDet().specificTopology().nstrips();
143  }
144 }
int i
Definition: DBlmapReader.cc:9
StMeasurementConditionSet theStDetConditions
std::vector< unsigned char > subId_
const std::vector< TkStripMeasurementDet > & stripDets() const
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
std::vector< int > totalStrips_
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:17
std::vector< unsigned int > id_
tuple size
Write out results.
virtual const PxMeasurementConditionSet& MeasurementTrackerImpl::pixelDetConditions ( ) const
inlinevirtual

Implements MeasurementTracker.

Definition at line 108 of file MeasurementTrackerImpl.h.

References thePxDetConditions.

108 { return thePxDetConditions; }
PxMeasurementConditionSet thePxDetConditions
const std::vector<TkPixelMeasurementDet>& MeasurementTrackerImpl::pixelDets ( ) const
inline

Definition at line 104 of file MeasurementTrackerImpl.h.

References thePixelDets.

104 {return thePixelDets;}
std::vector< TkPixelMeasurementDet > thePixelDets
virtual const StMeasurementConditionSet& MeasurementTrackerImpl::stripDetConditions ( ) const
inlinevirtual

Provide templates to be filled in.

Implements MeasurementTracker.

Definition at line 107 of file MeasurementTrackerImpl.h.

References theStDetConditions.

107 { return theStDetConditions; }
StMeasurementConditionSet theStDetConditions
const std::vector<TkStripMeasurementDet>& MeasurementTrackerImpl::stripDets ( ) const
inline

Definition at line 103 of file MeasurementTrackerImpl.h.

References theStripDets.

103 {return theStripDets;}
std::vector< TkStripMeasurementDet > theStripDets

Member Data Documentation

const std::string MeasurementTrackerImpl::name_
protected

Definition at line 112 of file MeasurementTrackerImpl.h.

const edm::ParameterSet& MeasurementTrackerImpl::pset_
protected

Definition at line 111 of file MeasurementTrackerImpl.h.

Referenced by initializeStripStatus().

DetContainer MeasurementTrackerImpl::theDetMap
protected
std::vector<TkGluedMeasurementDet> MeasurementTrackerImpl::theGluedDets
protected

Definition at line 121 of file MeasurementTrackerImpl.h.

Referenced by addGluedDet(), gluedDets(), and initialize().

const SiPixelFedCabling* MeasurementTrackerImpl::thePixelCabling
protected

Definition at line 123 of file MeasurementTrackerImpl.h.

std::vector<TkPixelMeasurementDet> MeasurementTrackerImpl::thePixelDets
protected
PxMeasurementConditionSet MeasurementTrackerImpl::thePxDetConditions
protected
StMeasurementConditionSet MeasurementTrackerImpl::theStDetConditions
protected
std::vector<TkStripMeasurementDet> MeasurementTrackerImpl::theStripDets
protected

Definition at line 120 of file MeasurementTrackerImpl.h.

Referenced by addStripDet(), initialize(), and stripDets().