CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
TrackerRemapper Class Reference
Inheritance diagram for TrackerRemapper:
edm::one::EDAnalyzer< edm::one::SharedResources > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Types

enum  AnalyzeData { RECHITS = 1, DIGIS, CLUSTERS }
 
enum  OpMode { MODE_ANALYZE = 0, MODE_REMAP = 1 }
 
enum  PixelLayerEnum {
  INVALID = 0, PXB_L1, PXB_L2, PXB_L3,
  PXB_L4, PXF_R1, PXF_R2
}
 
- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 

Public Member Functions

template<>
void analyzeGeneric (const edm::Event &iEvent, const edm::EDGetTokenT< reco::TrackCollection > &t)
 
 TrackerRemapper (const edm::ParameterSet &)
 
 ~TrackerRemapper () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::SharedResources >
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
template<class T >
void analyzeGeneric (const edm::Event &iEvent, const edm::EDGetTokenT< T > &src)
 
void analyzeRechits (const edm::Event &iEvent, const edm::EDGetTokenT< reco::TrackCollection > &src)
 
void beginJob () override
 
void bookBins ()
 
void endJob () override
 
void fillBarrelRemap (TFile *rootFileHandle, const TrackerGeometry *theTrackerGeometry, const TrackerTopology *tt)
 
void fillEndcapRemap (TFile *rootFileHandle, const TrackerGeometry *theTrackerGeometry, const TrackerTopology *tt)
 
void fillPixelRemap (const TrackerGeometry *theTrackerGeometry, const TrackerTopology *tt)
 
void fillStripRemap ()
 
void preparePixelNames ()
 
void prepareStripNames ()
 
void readVertices (double &minx, double &maxx, double &miny, double &maxy)
 

Private Attributes

edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clusterSrcToken
 
edm::EDGetTokenT< edmNew::DetSetVector< SiStripDigi > > digiSrcToken
 
edm::Service< TFileServicefs
 
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecordgeomToken_
 
const edm::ParameterSetiConfig
 
int m_analyzeMode
 
std::map< unsigned, std::string > m_analyzeModeNameMap
 
std::map< long, TGraph * > m_bins
 
std::vector< unsigned > m_detIdVector
 
int m_opMode
 
std::string m_pixelBaseDir
 
std::string m_pixelDesiredHistogramBarrel
 
std::string m_pixelDesiredHistogramDisk
 
std::map< unsigned, std::string > m_pixelHistnameMap
 
std::string m_pixelRemapFile
 
std::string m_stripBaseDir
 
std::string m_stripDesiredHistogram
 
std::map< unsigned, std::string > m_stripHistnameMap
 
std::string m_stripRemapFile
 
const TkDetMapm_tkdetmap
 
edm::EDGetTokenT< reco::TrackCollectionrechitSrcToken
 
std::string runString
 
const edm::ESGetToken< TkDetMap, TrackerTopologyRcdtkDetMapToken_
 
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtopoToken_
 
TH2Poly * trackerMap {nullptr}
 

Additional Inherited Members

- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Definition at line 53 of file TrackerRemapper.cc.

Member Enumeration Documentation

◆ AnalyzeData

Enumerator
RECHITS 
DIGIS 
CLUSTERS 

Definition at line 72 of file TrackerRemapper.cc.

◆ OpMode

Enumerator
MODE_ANALYZE 
MODE_REMAP 

Definition at line 78 of file TrackerRemapper.cc.

◆ PixelLayerEnum

Enumerator
INVALID 
PXB_L1 
PXB_L2 
PXB_L3 
PXB_L4 
PXF_R1 
PXF_R2 

Definition at line 60 of file TrackerRemapper.cc.

Constructor & Destructor Documentation

◆ TrackerRemapper()

TrackerRemapper::TrackerRemapper ( const edm::ParameterSet iConfig)
explicit

Definition at line 164 of file TrackerRemapper.cc.

References CLUSTERS, clusterSrcToken, DIGIS, digiSrcToken, Exception, edm::ParameterSet::getParameter(), iConfig, m_analyzeMode, m_analyzeModeNameMap, m_opMode, m_pixelBaseDir, m_pixelDesiredHistogramBarrel, m_pixelDesiredHistogramDisk, m_pixelRemapFile, m_stripBaseDir, m_stripDesiredHistogram, m_stripRemapFile, MODE_ANALYZE, MODE_REMAP, preparePixelNames(), prepareStripNames(), RECHITS, rechitSrcToken, runString, and AlCaHLTBitMon_QueryRunRegistry::string.

165  : geomToken_(esConsumes()),
168  iConfig(iConfig),
169  m_opMode(iConfig.getParameter<int>("opMode")),
170  m_analyzeMode(iConfig.getParameter<int>("analyzeMode")) {
171  usesResource("TFileService");
172 
173  if (m_opMode == MODE_REMAP) {
174  m_stripRemapFile = iConfig.getParameter<std::string>("stripRemapFile");
176  runString = iConfig.getParameter<std::string>("runString");
177 
178  m_pixelRemapFile = std::string("DQM_V0001_PixelPhase1_R000305516.root");
179 
180  m_stripBaseDir = std::string("DQMData/Run " + runString + "/SiStrip/Run summary/MechanicalView/");
181  m_pixelBaseDir = std::string("DQMData/Run " + runString + "/PixelPhase1/Run summary/Phase1_MechanicalView/");
182 
183  m_pixelDesiredHistogramBarrel = std::string("adc_per_SignedModule_per_SignedLadder");
184  m_pixelDesiredHistogramDisk = std::string("adc_per_PXDisk_per_SignedBladePanel");
185 
188  } else if (m_opMode == MODE_ANALYZE) {
189  m_analyzeModeNameMap[RECHITS] = "# Rechits";
190  m_analyzeModeNameMap[DIGIS] = "# Digis";
191  m_analyzeModeNameMap[CLUSTERS] = "# Clusters";
192 
193  switch (m_analyzeMode) {
194  case RECHITS:
195  rechitSrcToken = consumes<reco::TrackCollection>(iConfig.getParameter<edm::InputTag>("src"));
196  break;
197  case DIGIS:
198  digiSrcToken = consumes<edmNew::DetSetVector<SiStripDigi>>(iConfig.getParameter<edm::InputTag>("src"));
199  break;
200  case CLUSTERS:
201  clusterSrcToken = consumes<edmNew::DetSetVector<SiStripCluster>>(iConfig.getParameter<edm::InputTag>("src"));
202  break;
203  default:
204  edm::LogError("LogicError") << "Unrecognized analyze mode!" << std::endl;
205  }
206  } else {
207  throw cms::Exception("TrackerRemapper") << "Unrecognized operations mode!" << std::endl;
208  }
209 
210  // TColor::SetPalette(1);
211 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
std::string m_stripBaseDir
edm::EDGetTokenT< reco::TrackCollection > rechitSrcToken
std::string m_stripRemapFile
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clusterSrcToken
std::string m_pixelRemapFile
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > topoToken_
Log< level::Error, false > LogError
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > geomToken_
std::string m_pixelDesiredHistogramDisk
std::string m_stripDesiredHistogram
edm::EDGetTokenT< edmNew::DetSetVector< SiStripDigi > > digiSrcToken
const edm::ParameterSet & iConfig
const edm::ESGetToken< TkDetMap, TrackerTopologyRcd > tkDetMapToken_
std::string runString
std::map< unsigned, std::string > m_analyzeModeNameMap
std::string m_pixelDesiredHistogramBarrel
std::string m_pixelBaseDir

◆ ~TrackerRemapper()

TrackerRemapper::~TrackerRemapper ( )
override

Definition at line 310 of file TrackerRemapper.cc.

310 {}

Member Function Documentation

◆ analyze()

void TrackerRemapper::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 313 of file TrackerRemapper.cc.

References analyzeGeneric(), bookBins(), clusterSrcToken, digiSrcToken, fillPixelRemap(), fillStripRemap(), geomToken_, edm::EventSetup::getData(), iEvent, m_analyzeMode, m_opMode, m_tkdetmap, MODE_ANALYZE, MODE_REMAP, rechitSrcToken, tkDetMapToken_, topoToken_, trackerMap, and groupFilesInBlocks::tt.

315 {
316  // get the ES products
317 
318  const TrackerGeometry* theTrackerGeometry = &iSetup.getData(geomToken_);
319  const TrackerTopology* tt = &iSetup.getData(topoToken_);
320  m_tkdetmap = &iSetup.getData(tkDetMapToken_);
321 
322  if (!trackerMap)
323  bookBins();
324 
325  if (m_opMode == MODE_ANALYZE) {
326  switch (m_analyzeMode) {
327  case AnalyzeData::RECHITS:
329  break;
330  case AnalyzeData::DIGIS:
332  break;
333  case AnalyzeData::CLUSTERS:
335  break;
336  default:
337  edm::LogError("LogicError") << "Unrecognized Analyze mode!" << std::endl;
338  return;
339  }
340  } else if (m_opMode == MODE_REMAP) {
341  fillStripRemap();
342  fillPixelRemap(theTrackerGeometry, tt);
343  }
344 }
edm::EDGetTokenT< reco::TrackCollection > rechitSrcToken
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clusterSrcToken
void analyzeGeneric(const edm::Event &iEvent, const edm::EDGetTokenT< T > &src)
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > topoToken_
Log< level::Error, false > LogError
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > geomToken_
int iEvent
Definition: GenABIO.cc:224
bool getData(T &iHolder) const
Definition: EventSetup.h:122
void fillPixelRemap(const TrackerGeometry *theTrackerGeometry, const TrackerTopology *tt)
const TkDetMap * m_tkdetmap
edm::EDGetTokenT< edmNew::DetSetVector< SiStripDigi > > digiSrcToken
const edm::ESGetToken< TkDetMap, TrackerTopologyRcd > tkDetMapToken_

◆ analyzeGeneric() [1/2]

template<class T >
void TrackerRemapper::analyzeGeneric ( const edm::Event iEvent,
const edm::EDGetTokenT< T > &  src 
)
private

Definition at line 137 of file TrackerRemapper.cc.

References iEvent, input, and TrackRefitter_38T_cff::src.

Referenced by analyze().

139 {
141  iEvent.getByToken(src, input);
142 
143  if (!input.isValid()) {
144  edm::LogError("TrackerRemapper") << "<GENERIC> not found... Aborting...\n";
145  return;
146  }
147 
148  typename T::const_iterator it;
149  for (it = input->begin(); it != input->end(); ++it) {
150  auto id = DetId(it->detId());
151  trackerMap->Fill(TString::Format("%ld", (long)id.rawId()), it->size());
152  }
153 }
Log< level::Error, false > LogError
static std::string const input
Definition: EdmProvDump.cc:47
int iEvent
Definition: GenABIO.cc:224
Definition: DetId.h:17

◆ analyzeGeneric() [2/2]

template<>
void TrackerRemapper::analyzeGeneric ( const edm::Event iEvent,
const edm::EDGetTokenT< reco::TrackCollection > &  t 
)

Definition at line 157 of file TrackerRemapper.cc.

References iEvent, and submitPVValidationJobs::t.

159 {
161 }
int iEvent
Definition: GenABIO.cc:224
void analyzeRechits(const edm::Event &iEvent, const edm::EDGetTokenT< reco::TrackCollection > &src)

◆ analyzeRechits()

void TrackerRemapper::analyzeRechits ( const edm::Event iEvent,
const edm::EDGetTokenT< reco::TrackCollection > &  src 
)
private

Definition at line 347 of file TrackerRemapper.cc.

References mps_fire::i, iEvent, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, rpcPointValidation_cfi::recHit, TrackRefitter_38T_cff::src, HLT_2022v11_cff::track, trackerMap, and tracks.

349 {
351  iEvent.getByToken(src, tracks);
352  if (!tracks.isValid()) {
353  LogInfo("Analyzer") << "reco::TrackCollection not found... Aborting...\n";
354  return;
355  }
356 
357  for (auto const& track : *tracks) {
358  auto recHitsBegin = track.recHitsBegin();
359  for (unsigned i = 0; i < track.recHitsSize(); ++i) {
360  auto recHit = *(recHitsBegin + i);
361  if (!recHit->isValid())
362  continue;
363 
364  DetId id = recHit->geographicalId();
365  unsigned subdetId = id.subdetId();
366 
367  //reject Pixel
368  if (subdetId == PixelSubdetector::PixelBarrel || subdetId == PixelSubdetector::PixelEndcap)
369  continue;
370 
371  // NRECHITS
372  trackerMap->Fill(TString::Format("%ld", (long)id.rawId()), 1);
373  }
374  }
375 }
int iEvent
Definition: GenABIO.cc:224
Log< level::Info, false > LogInfo
Definition: DetId.h:17
auto const & tracks
cannot be loose

◆ beginJob()

void TrackerRemapper::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 623 of file TrackerRemapper.cc.

623 {}

◆ bookBins()

void TrackerRemapper::bookBins ( )
private

Definition at line 378 of file TrackerRemapper.cc.

References fs, TFileService::getBareDirectory(), m_analyzeMode, m_analyzeModeNameMap, m_bins, m_opMode, m_stripDesiredHistogram, TFileService::make(), margin, MODE_ANALYZE, MODE_REMAP, readVertices(), runString, AlCaHLTBitMon_QueryRunRegistry::string, and trackerMap.

Referenced by analyze().

380 {
381  // Read vertices from file
382  double minx = 0xFFFFFF, maxx = -0xFFFFFF, miny = 0xFFFFFF, maxy = -0xFFFFFFF;
383  readVertices(minx, maxx, miny, maxy);
384 
385  TObject* ghostObj = fs->make<TH2Poly>("ghost", "ghost", -1, 1, -1, 1);
386 
387  TDirectory* topDir = fs->getBareDirectory();
388  topDir->cd();
389 
390  int margin = 50;
391  std::string mapTitle;
392  switch (m_opMode) {
393  case MODE_ANALYZE:
395  break;
396  case MODE_REMAP:
397  mapTitle = std::string(m_stripDesiredHistogram + " - " + runString);
398  break;
399  }
400 
401  trackerMap = new TH2Poly("Tracker Map", mapTitle.c_str(), minx - margin, maxx + margin, miny - margin, maxy + margin);
402  trackerMap->SetFloat();
403  trackerMap->SetOption("COLZ");
404  trackerMap->SetStats(false);
405 
406  for (auto pair : m_bins) {
407  trackerMap->AddBin(pair.second->Clone());
408  }
409 
410  topDir->Add(trackerMap);
411 
412  ghostObj->Delete(); //not needed any more
413 }
Double_t margin
std::string m_stripDesiredHistogram
TDirectory * getBareDirectory(const std::string &subdir="") const
Definition: TFileService.h:52
edm::Service< TFileService > fs
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
void readVertices(double &minx, double &maxx, double &miny, double &maxy)
std::string runString
std::map< unsigned, std::string > m_analyzeModeNameMap
std::map< long, TGraph * > m_bins

◆ endJob()

void TrackerRemapper::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 625 of file TrackerRemapper.cc.

625 {}

◆ fillBarrelRemap()

void TrackerRemapper::fillBarrelRemap ( TFile *  rootFileHandle,
const TrackerGeometry theTrackerGeometry,
const TrackerTopology tt 
)
private

Definition at line 541 of file TrackerRemapper.cc.

References TrackerGeometry::detsPXB(), GeomDet::geographicalId(), mps_fire::i, PixelBarrelName::ladderName(), phase1PixelTopology::layer, m_pixelHistnameMap, callgraph::module, DetId::rawId(), PixelBarrelName::shell(), trackerMap, groupFilesInBlocks::tt, and heppy_batch::val.

Referenced by fillPixelRemap().

545 {
546  TrackingGeometry::DetContainer pxb = theTrackerGeometry->detsPXB();
547 
548  for (auto& i : pxb) {
549  const GeomDet* det = i;
550 
551  PXBDetId id = det->geographicalId();
552  long rawid = id.rawId();
553 
554  int module = tt->pxbModule(id);
555  int layer = tt->pxbLayer(id);
556 
557  int signedOnlineModule = module - 4;
558  if (signedOnlineModule <= 0)
559  --signedOnlineModule;
560 
561  PixelBarrelName pixelBarrelName = PixelBarrelName(id, tt, true);
562  int onlineShell = pixelBarrelName.shell();
563 
564  int signedOnlineLadder = ((onlineShell & 1) ? -pixelBarrelName.ladderName() : pixelBarrelName.ladderName());
565 
566  const TProfile2D* histHandle = (TProfile2D*)rootFileHandle->Get(m_pixelHistnameMap[layer].c_str());
567 
568  unsigned nx = histHandle->GetNbinsX();
569  unsigned ny = histHandle->GetNbinsY();
570 
571  unsigned binX = signedOnlineModule + ((nx + 1) >> 1);
572  unsigned binY = (signedOnlineLadder) + ((ny + 1) >> 1);
573 
574  double val = histHandle->GetBinContent(binX, binY);
575 
576  trackerMap->Fill(TString::Format("%ld", rawid), val);
577  }
578 }
const DetContainer & detsPXB() const
std::map< unsigned, std::string > m_pixelHistnameMap
constexpr std::array< uint8_t, layerIndexSize > layer
std::vector< const GeomDet * > DetContainer
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
Shell shell() const
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
int ladderName() const
ladder id (index in phi)

◆ fillDescriptions()

void TrackerRemapper::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 628 of file TrackerRemapper.cc.

References edm::ConfigurationDescriptions::addWithDefaultLabel(), submitPVResolutionJobs::desc, HLT_2022v11_cff::InputTag, and or.

630 {
632  desc.setComment(
633  "Creates TH2Poly Strip Tracker maps by either analyzing the event or remapping exising DQM historams");
634  desc.add<edm::InputTag>("src", edm::InputTag("generalTracks"));
635  desc.ifValue(edm::ParameterDescription<int>("opMode", 0, true),
637  1 >> (edm::ParameterDescription<std::string>("stripRemapFile", "", true) and
638  edm::ParameterDescription<std::string>("stripHistogram", "", true) and
639  edm::ParameterDescription<std::string>("runString", "", true)))
640  ->setComment("0 for Analyze, 1 for Remap");
641 
642  desc.ifValue(edm::ParameterDescription<int>("analyzeMode", 1, true), edm::allowedValues<int>(1, 2, 3))
643  ->setComment("1=Rechits, 2=Digis, 3=Clusters");
644 
645  //desc.add<unsigned int>("analyzeMode", 1)->setComment("1=Rechits, 2=Digis, 3=Clusters");
646  //desc.add<unsigned int>("opMode", 0)->setComment("0 for Analyze, 1 for Remap");
647  //desc.addOptional<std::string>("stripRemapFile","" )->setComment("file name to analyze, will come from the config file");
648  //desc.addOptional<std::string>("stripHistogram","TkHMap_NumberValidHits" )->setComment("histogram to use to remap");
649  //desc.addOptional<std::string>("runString", "")->setComment("run number, will come form config file");
650  descriptions.addWithDefaultLabel(desc);
651 }
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12

◆ fillEndcapRemap()

void TrackerRemapper::fillEndcapRemap ( TFile *  rootFileHandle,
const TrackerGeometry theTrackerGeometry,
const TrackerTopology tt 
)
private

Definition at line 581 of file TrackerRemapper.cc.

References PixelEndcapName::bladeName(), TrackerGeometry::detsPXF(), GeomDet::geographicalId(), PixelEndcapName::halfCylinder(), mps_fire::i, phase1PixelTopology::layer, m_pixelHistnameMap, PixelEndcapName::pannelName(), PixelEndcapName::ringName(), trackerMap, groupFilesInBlocks::tt, and heppy_batch::val.

Referenced by fillPixelRemap().

585 {
586  TrackingGeometry::DetContainer pxf = theTrackerGeometry->detsPXF();
587 
588  for (auto& i : pxf) {
589  const GeomDet* det = i;
590 
591  PXFDetId id = det->geographicalId();
592 
593  int side = tt->side(id);
594  int disk = tt->layer(id);
595 
596  long rawid = id.rawId();
597 
598  PixelEndcapName pixelEndcapName = PixelEndcapName(PXFDetId(rawid), tt, true);
599 
600  unsigned layer = pixelEndcapName.ringName() - 1 + PixelLayerEnum::PXF_R1;
601  const TProfile2D* histHandle = (TProfile2D*)rootFileHandle->Get(m_pixelHistnameMap[layer].c_str());
602 
603  // ---- REMAP (Online -> Offline)
604  unsigned nx = histHandle->GetNbinsX();
605  unsigned ny = histHandle->GetNbinsY();
606 
607  int onlineBlade = pixelEndcapName.bladeName();
608  bool isInnerOnlineBlade = !(pixelEndcapName.halfCylinder() & 1); // inner -> blade > 0 (?)
609 
610  int signedOnlineBlade = (isInnerOnlineBlade) ? onlineBlade : -onlineBlade;
611  int signedDisk = (side == 2) ? disk : -disk;
612  int pannel = pixelEndcapName.pannelName() - 1;
613 
614  unsigned binX = signedDisk + ((nx + 1) >> 1);
615  unsigned binY = (signedOnlineBlade * 2) + (ny >> 1);
616 
617  double val = histHandle->GetBinContent(binX, binY + pannel);
618 
619  trackerMap->Fill(TString::Format("%ld", rawid), val);
620  }
621 }
int ringName() const
ring Id
int bladeName() const
blade id
const DetContainer & detsPXF() const
std::map< unsigned, std::string > m_pixelHistnameMap
constexpr std::array< uint8_t, layerIndexSize > layer
std::vector< const GeomDet * > DetContainer
HalfCylinder halfCylinder() const
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
int pannelName() const
pannel id

◆ fillPixelRemap()

void TrackerRemapper::fillPixelRemap ( const TrackerGeometry theTrackerGeometry,
const TrackerTopology tt 
)
private

Definition at line 525 of file TrackerRemapper.cc.

References fillBarrelRemap(), fillEndcapRemap(), m_pixelRemapFile, and groupFilesInBlocks::tt.

Referenced by analyze().

527 {
528  TFile* rootFileHandle = new TFile(m_pixelRemapFile.c_str());
529 
530  if (!rootFileHandle) {
531  edm::LogError("TrackerRemapper") << "Could not find file:\n\t" << m_pixelRemapFile << std::endl;
532  return;
533  }
534  fillBarrelRemap(rootFileHandle, theTrackerGeometry, tt);
535  fillEndcapRemap(rootFileHandle, theTrackerGeometry, tt);
536 
537  rootFileHandle->Close();
538 }
std::string m_pixelRemapFile
Log< level::Error, false > LogError
void fillEndcapRemap(TFile *rootFileHandle, const TrackerGeometry *theTrackerGeometry, const TrackerTopology *tt)
void fillBarrelRemap(TFile *rootFileHandle, const TrackerGeometry *theTrackerGeometry, const TrackerTopology *tt)

◆ fillStripRemap()

void TrackerRemapper::fillStripRemap ( )
private

Definition at line 485 of file TrackerRemapper.cc.

References TkDetMap::getComponents(), TkDetMap::getDetFromBin(), phase1PixelTopology::layer, m_stripHistnameMap, m_stripRemapFile, m_tkdetmap, trackerMap, and heppy_batch::val.

Referenced by analyze().

487 {
488  int nchX;
489  int nchY;
490  double lowX, highX;
491  double lowY, highY;
492 
493  TFile* rootFileHandle = new TFile(m_stripRemapFile.c_str());
494 
495  for (int layer = TkLayerMap::TkLayerEnum::TIB_L1; layer <= TkLayerMap::TkLayerEnum::TECP_W9; ++layer) {
496  m_tkdetmap->getComponents(layer, nchX, lowX, highX, nchY, lowY, highY);
497 
498  const TProfile2D* histHandle = (TProfile2D*)rootFileHandle->Get(m_stripHistnameMap[layer].c_str());
499 
500  if (!histHandle) {
501  edm::LogError("TrackerRemapper") << "Could not find histogram:\n\t" << m_stripHistnameMap[layer] << std::endl;
502  return;
503  }
504 
505  for (unsigned binx = 1; binx <= (unsigned)nchX; ++binx) {
506  for (unsigned biny = 1; biny <= (unsigned)nchY; ++biny) {
507  long rawid = m_tkdetmap->getDetFromBin(layer, binx, biny);
508 
509  if (rawid) //bin represents real module -> go to file
510  {
511  double val = histHandle->GetBinContent(binx, biny);
512 
513  // edm::LogInfo("TrackerRemapper") << rawid << " " << val << "\n";
514 
515  trackerMap->Fill(TString::Format("%ld", rawid), val);
516  }
517  }
518  }
519  }
520 
521  rootFileHandle->Close();
522 }
std::string m_stripRemapFile
std::map< unsigned, std::string > m_stripHistnameMap
Log< level::Error, false > LogError
constexpr std::array< uint8_t, layerIndexSize > layer
DetId getDetFromBin(int layer, int ix, int iy) const
Definition: TkDetMap.h:191
const TkDetMap * m_tkdetmap
void getComponents(int layer, int &nchX, double &lowX, double &highX, int &nchY, double &lowY, double &highY) const
Definition: TkDetMap.cc:589

◆ preparePixelNames()

void TrackerRemapper::preparePixelNames ( )
private

Definition at line 292 of file TrackerRemapper.cc.

References m_pixelBaseDir, m_pixelDesiredHistogramBarrel, m_pixelDesiredHistogramDisk, and m_pixelHistnameMap.

Referenced by TrackerRemapper().

294 {
295  m_pixelHistnameMap[PixelLayerEnum::PXB_L1] =
296  m_pixelBaseDir + "PXBarrel/" + m_pixelDesiredHistogramBarrel + "_PXLayer_1;1";
297  m_pixelHistnameMap[PixelLayerEnum::PXB_L2] =
298  m_pixelBaseDir + "PXBarrel/" + m_pixelDesiredHistogramBarrel + "_PXLayer_2;1";
299  m_pixelHistnameMap[PixelLayerEnum::PXB_L3] =
300  m_pixelBaseDir + "PXBarrel/" + m_pixelDesiredHistogramBarrel + "_PXLayer_3;1";
301  m_pixelHistnameMap[PixelLayerEnum::PXB_L4] =
302  m_pixelBaseDir + "PXBarrel/" + m_pixelDesiredHistogramBarrel + "_PXLayer_4;1";
303 
304  m_pixelHistnameMap[PixelLayerEnum::PXF_R1] =
305  m_pixelBaseDir + "PXForward/" + m_pixelDesiredHistogramDisk + "_PXRing_1;1";
306  m_pixelHistnameMap[PixelLayerEnum::PXF_R2] =
307  m_pixelBaseDir + "PXForward/" + m_pixelDesiredHistogramDisk + "_PXRing_2;1";
308 }
std::map< unsigned, std::string > m_pixelHistnameMap
std::string m_pixelDesiredHistogramDisk
std::string m_pixelDesiredHistogramBarrel
std::string m_pixelBaseDir

◆ prepareStripNames()

void TrackerRemapper::prepareStripNames ( )
private

Definition at line 214 of file TrackerRemapper.cc.

References m_stripBaseDir, m_stripDesiredHistogram, and m_stripHistnameMap.

Referenced by TrackerRemapper().

216 {
217  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIB_L1] =
218  m_stripBaseDir + "TIB/layer_1/" + m_stripDesiredHistogram + "_TIB_L1;1";
219  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIB_L2] =
220  m_stripBaseDir + "TIB/layer_2/" + m_stripDesiredHistogram + "_TIB_L2;1";
221  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIB_L3] =
222  m_stripBaseDir + "TIB/layer_3/" + m_stripDesiredHistogram + "_TIB_L3;1";
223  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIB_L4] =
224  m_stripBaseDir + "TIB/layer_4/" + m_stripDesiredHistogram + "_TIB_L4;1";
225 
226  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIDM_D1] =
227  m_stripBaseDir + "TID/MINUS/wheel_1/" + m_stripDesiredHistogram + "_TIDM_D1;1";
228  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIDM_D2] =
229  m_stripBaseDir + "TID/MINUS/wheel_2/" + m_stripDesiredHistogram + "_TIDM_D2;1";
230  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIDM_D3] =
231  m_stripBaseDir + "TID/MINUS/wheel_3/" + m_stripDesiredHistogram + "_TIDM_D3;1";
232  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIDP_D1] =
233  m_stripBaseDir + "TID/PLUS/wheel_1/" + m_stripDesiredHistogram + "_TIDP_D1;1";
234  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIDP_D2] =
235  m_stripBaseDir + "TID/PLUS/wheel_2/" + m_stripDesiredHistogram + "_TIDP_D2;1";
236  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TIDP_D3] =
237  m_stripBaseDir + "TID/PLUS/wheel_3/" + m_stripDesiredHistogram + "_TIDP_D3;1";
238 
239  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TOB_L1] =
240  m_stripBaseDir + "TOB/layer_1/" + m_stripDesiredHistogram + "_TOB_L1;1";
241  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TOB_L2] =
242  m_stripBaseDir + "TOB/layer_2/" + m_stripDesiredHistogram + "_TOB_L2;1";
243  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TOB_L3] =
244  m_stripBaseDir + "TOB/layer_3/" + m_stripDesiredHistogram + "_TOB_L3;1";
245  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TOB_L4] =
246  m_stripBaseDir + "TOB/layer_4/" + m_stripDesiredHistogram + "_TOB_L4;1";
247  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TOB_L5] =
248  m_stripBaseDir + "TOB/layer_5/" + m_stripDesiredHistogram + "_TOB_L5;1";
249  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TOB_L6] =
250  m_stripBaseDir + "TOB/layer_6/" + m_stripDesiredHistogram + "_TOB_L6;1";
251 
252  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W1] =
253  m_stripBaseDir + "TEC/MINUS/wheel_1/" + m_stripDesiredHistogram + "_TECM_W1;1";
254  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W2] =
255  m_stripBaseDir + "TEC/MINUS/wheel_2/" + m_stripDesiredHistogram + "_TECM_W2;1";
256  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W3] =
257  m_stripBaseDir + "TEC/MINUS/wheel_3/" + m_stripDesiredHistogram + "_TECM_W3;1";
258  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W4] =
259  m_stripBaseDir + "TEC/MINUS/wheel_4/" + m_stripDesiredHistogram + "_TECM_W4;1";
260  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W5] =
261  m_stripBaseDir + "TEC/MINUS/wheel_5/" + m_stripDesiredHistogram + "_TECM_W5;1";
262  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W6] =
263  m_stripBaseDir + "TEC/MINUS/wheel_6/" + m_stripDesiredHistogram + "_TECM_W6;1";
264  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W7] =
265  m_stripBaseDir + "TEC/MINUS/wheel_7/" + m_stripDesiredHistogram + "_TECM_W7;1";
266  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W8] =
267  m_stripBaseDir + "TEC/MINUS/wheel_8/" + m_stripDesiredHistogram + "_TECM_W8;1";
268  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECM_W9] =
269  m_stripBaseDir + "TEC/MINUS/wheel_9/" + m_stripDesiredHistogram + "_TECM_W9;1";
270 
271  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W1] =
272  m_stripBaseDir + "TEC/PLUS/wheel_1/" + m_stripDesiredHistogram + "_TECP_W1;1";
273  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W2] =
274  m_stripBaseDir + "TEC/PLUS/wheel_2/" + m_stripDesiredHistogram + "_TECP_W2;1";
275  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W3] =
276  m_stripBaseDir + "TEC/PLUS/wheel_3/" + m_stripDesiredHistogram + "_TECP_W3;1";
277  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W4] =
278  m_stripBaseDir + "TEC/PLUS/wheel_4/" + m_stripDesiredHistogram + "_TECP_W4;1";
279  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W5] =
280  m_stripBaseDir + "TEC/PLUS/wheel_5/" + m_stripDesiredHistogram + "_TECP_W5;1";
281  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W6] =
282  m_stripBaseDir + "TEC/PLUS/wheel_6/" + m_stripDesiredHistogram + "_TECP_W6;1";
283  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W7] =
284  m_stripBaseDir + "TEC/PLUS/wheel_7/" + m_stripDesiredHistogram + "_TECP_W7;1";
285  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W8] =
286  m_stripBaseDir + "TEC/PLUS/wheel_8/" + m_stripDesiredHistogram + "_TECP_W8;1";
287  m_stripHistnameMap[TkLayerMap::TkLayerEnum::TECP_W9] =
288  m_stripBaseDir + "TEC/PLUS/wheel_9/" + m_stripDesiredHistogram + "_TECP_W9;1";
289 }
std::string m_stripBaseDir
std::map< unsigned, std::string > m_stripHistnameMap
std::string m_stripDesiredHistogram

◆ readVertices()

void TrackerRemapper::readVertices ( double &  minx,
double &  maxx,
double &  miny,
double &  maxy 
)
private

Definition at line 416 of file TrackerRemapper.cc.

References mps_check::array, submitPVResolutionJobs::count, Exception, contentValuesFiles::fullPath, mps_fire::i, recoMuon::in, fastTrackerRecHitType::isPixel(), mps_splice::line, m_bins, m_detIdVector, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, AlCaHLTBitMon_QueryRunRegistry::string, DetId::subdetId(), x, and y.

Referenced by bookBins().

418 {
419  std::ifstream in;
420 
421  // TPolyline vertices stored at https://github.com/cms-data/DQM-SiStripMonitorClient
422  in.open(edm::FileInPath("DQM/SiStripMonitorClient/data/Geometry/tracker_map_bare").fullPath().c_str());
423 
424  unsigned count = 0;
425 
426  if (!in.good()) {
427  throw cms::Exception("TrackerRemapper") << "Error Reading File" << std::endl;
428  }
429  while (in.good()) {
430  long detid = 0;
431  double x[5], y[5];
432 
434  std::getline(in, line);
435  ++count;
436 
437  TString string(line);
438  TObjArray* array = string.Tokenize(" ");
439  int ix{0}, iy{0};
440  bool isPixel{false};
441  for (int i = 0; i < array->GetEntries(); ++i) {
442  if (i == 0) {
443  detid = static_cast<TObjString*>(array->At(i))->String().Atoll();
444 
445  // Drop Pixel Data
446  DetId detId(detid);
447  if (detId.subdetId() == PixelSubdetector::PixelBarrel || detId.subdetId() == PixelSubdetector::PixelEndcap) {
448  isPixel = true;
449  break;
450  }
451  } else {
452  if (i % 2 == 0) {
453  x[ix] = static_cast<TObjString*>(array->At(i))->String().Atof();
454 
455  if (x[ix] < minx)
456  minx = x[ix];
457  if (x[ix] > maxx)
458  maxx = x[ix];
459 
460  ++ix;
461  } else {
462  y[iy] = static_cast<TObjString*>(array->At(i))->String().Atof();
463 
464  if (y[iy] < miny)
465  miny = y[iy];
466  if (y[iy] > maxy)
467  maxy = y[iy];
468 
469  ++iy;
470  }
471  }
472  }
473 
474  if (isPixel)
475  continue;
476 
477  m_detIdVector.push_back(detid);
478  m_bins[detid] = new TGraph(ix, x, y);
479  m_bins[detid]->SetName(TString::Format("%ld", detid));
480  m_bins[detid]->SetTitle(TString::Format("Module ID=%ld", detid));
481  }
482 }
Definition: DetId.h:17
bool isPixel(HitType hitType)
std::map< long, TGraph * > m_bins
std::vector< unsigned > m_detIdVector

Member Data Documentation

◆ clusterSrcToken

edm::EDGetTokenT<edmNew::DetSetVector<SiStripCluster> > TrackerRemapper::clusterSrcToken
private

Definition at line 132 of file TrackerRemapper.cc.

Referenced by analyze(), and TrackerRemapper().

◆ digiSrcToken

edm::EDGetTokenT<edmNew::DetSetVector<SiStripDigi> > TrackerRemapper::digiSrcToken
private

Definition at line 131 of file TrackerRemapper.cc.

Referenced by analyze(), and TrackerRemapper().

◆ fs

edm::Service<TFileService> TrackerRemapper::fs
private

Definition at line 105 of file TrackerRemapper.cc.

Referenced by bookBins().

◆ geomToken_

const edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> TrackerRemapper::geomToken_
private

Definition at line 101 of file TrackerRemapper.cc.

Referenced by analyze().

◆ iConfig

const edm::ParameterSet& TrackerRemapper::iConfig
private

Definition at line 106 of file TrackerRemapper.cc.

Referenced by TrackerRemapper().

◆ m_analyzeMode

int TrackerRemapper::m_analyzeMode
private

Definition at line 109 of file TrackerRemapper.cc.

Referenced by analyze(), bookBins(), and TrackerRemapper().

◆ m_analyzeModeNameMap

std::map<unsigned, std::string> TrackerRemapper::m_analyzeModeNameMap
private

Definition at line 118 of file TrackerRemapper.cc.

Referenced by bookBins(), and TrackerRemapper().

◆ m_bins

std::map<long, TGraph*> TrackerRemapper::m_bins
private

Definition at line 111 of file TrackerRemapper.cc.

Referenced by bookBins(), and readVertices().

◆ m_detIdVector

std::vector<unsigned> TrackerRemapper::m_detIdVector
private

Definition at line 112 of file TrackerRemapper.cc.

Referenced by readVertices().

◆ m_opMode

int TrackerRemapper::m_opMode
private

Definition at line 108 of file TrackerRemapper.cc.

Referenced by analyze(), bookBins(), and TrackerRemapper().

◆ m_pixelBaseDir

std::string TrackerRemapper::m_pixelBaseDir
private

Definition at line 124 of file TrackerRemapper.cc.

Referenced by preparePixelNames(), and TrackerRemapper().

◆ m_pixelDesiredHistogramBarrel

std::string TrackerRemapper::m_pixelDesiredHistogramBarrel
private

Definition at line 124 of file TrackerRemapper.cc.

Referenced by preparePixelNames(), and TrackerRemapper().

◆ m_pixelDesiredHistogramDisk

std::string TrackerRemapper::m_pixelDesiredHistogramDisk
private

Definition at line 124 of file TrackerRemapper.cc.

Referenced by preparePixelNames(), and TrackerRemapper().

◆ m_pixelHistnameMap

std::map<unsigned, std::string> TrackerRemapper::m_pixelHistnameMap
private

Definition at line 117 of file TrackerRemapper.cc.

Referenced by fillBarrelRemap(), fillEndcapRemap(), and preparePixelNames().

◆ m_pixelRemapFile

std::string TrackerRemapper::m_pixelRemapFile
private

Definition at line 121 of file TrackerRemapper.cc.

Referenced by fillPixelRemap(), and TrackerRemapper().

◆ m_stripBaseDir

std::string TrackerRemapper::m_stripBaseDir
private

Definition at line 123 of file TrackerRemapper.cc.

Referenced by prepareStripNames(), and TrackerRemapper().

◆ m_stripDesiredHistogram

std::string TrackerRemapper::m_stripDesiredHistogram
private

Definition at line 123 of file TrackerRemapper.cc.

Referenced by bookBins(), prepareStripNames(), and TrackerRemapper().

◆ m_stripHistnameMap

std::map<unsigned, std::string> TrackerRemapper::m_stripHistnameMap
private

Definition at line 116 of file TrackerRemapper.cc.

Referenced by fillStripRemap(), and prepareStripNames().

◆ m_stripRemapFile

std::string TrackerRemapper::m_stripRemapFile
private

Definition at line 120 of file TrackerRemapper.cc.

Referenced by fillStripRemap(), and TrackerRemapper().

◆ m_tkdetmap

const TkDetMap* TrackerRemapper::m_tkdetmap
private

Definition at line 114 of file TrackerRemapper.cc.

Referenced by analyze(), and fillStripRemap().

◆ rechitSrcToken

edm::EDGetTokenT<reco::TrackCollection> TrackerRemapper::rechitSrcToken
private

Definition at line 130 of file TrackerRemapper.cc.

Referenced by analyze(), and TrackerRemapper().

◆ runString

std::string TrackerRemapper::runString
private

Definition at line 126 of file TrackerRemapper.cc.

Referenced by bookBins(), and TrackerRemapper().

◆ tkDetMapToken_

const edm::ESGetToken<TkDetMap, TrackerTopologyRcd> TrackerRemapper::tkDetMapToken_
private

Definition at line 103 of file TrackerRemapper.cc.

Referenced by analyze().

◆ topoToken_

const edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> TrackerRemapper::topoToken_
private

Definition at line 102 of file TrackerRemapper.cc.

Referenced by analyze().

◆ trackerMap

TH2Poly* TrackerRemapper::trackerMap {nullptr}
private