CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
SiStripDB2Tree Class Reference

#include <CondTools/SiStrip/plugins/SiStripDB2Tree.cc>

Inheritance diagram for SiStripDB2Tree:
edm::one::EDAnalyzer< edm::one::SharedResources, edm::one::WatchRuns > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 SiStripDB2Tree (const edm::ParameterSet &)
 
 ~SiStripDB2Tree () override=default
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::SharedResources, edm::one::WatchRuns >
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
bool wantsGlobalLuminosityBlocks () const noexcept final
 
bool wantsGlobalRuns () const noexcept final
 
bool wantsInputProcessBlocks () const noexcept final
 
bool wantsProcessBlocks () const noexcept 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 noexcept
 
bool wantsStreamRuns () const noexcept
 
 ~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
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > 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
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices 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
 
void beginRun (edm::Run const &, edm::EventSetup const &) override
 
void endRun (edm::Run const &, edm::EventSetup const &) override
 
template<class Rcd >
std::pair< const char *, std::string > getRecordInfo (const edm::EventSetup &iSetup) const
 
void setTopoInfo (uint32_t detId, const TrackerTopology *tTopo)
 

Private Attributes

uint32_t det_type_
 
uint32_t detId_
 
SiStripDetInfo detInfo_
 
float g1_
 
const edm::ESGetToken< SiStripApvGain, SiStripApvGainRcdg1Token_
 
float g2_
 
const edm::ESGetToken< SiStripApvGain, SiStripApvGain2Rcdg2Token_
 
float gsim_
 
const edm::ESGetToken< SiStripApvGain, SiStripApvGainSimRcdgsimToken_
 
bool isBad_
 
const bool isMC_
 
bool isTEC_
 
bool isTIB_
 
bool isTID_
 
bool isTOB_
 
uint32_t istrip_
 
const edm::ESGetToken< SiStripLatency, SiStripLatencyRcdlatToken_
 
Int_t layer_
 
float lenght_
 
float noise_
 
const edm::ESGetToken< SiStripNoises, SiStripNoisesRcdnoiseToken_
 
float pedestal_
 
const edm::ESGetToken< SiStripPedestals, SiStripPedestalsRcdpedToken_
 
std::string processGT_
 
const edm::ESGetToken< SiStripQuality, SiStripQualityRcdqualToken_
 
uint32_t ring_
 
Int_t side_
 
Int_t subdetId_
 
TText * text_
 
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtopoToken_
 
TTree * tree_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- 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 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

Description: Converts several SiStrip Payloads (Noise, Peds, APVGain, etc.) into a TTree

Definition at line 75 of file SiStripDB2Tree.cc.

Constructor & Destructor Documentation

◆ SiStripDB2Tree()

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

Definition at line 121 of file SiStripDB2Tree.cc.

References det_type_, detId_, detInfo_, compareTotals::fs, contentValuesFiles::fullPath, g1_, g2_, gsim_, isBad_, isTEC_, isTIB_, isTID_, isTOB_, istrip_, SiStripDetInfoFileReader::kDefaultFile, TFileService::kSharedResource, layer_, lenght_, noise_, pedestal_, SiStripDetInfoFileReader::read(), ring_, side_, subdetId_, text_, and tree_.

122  : pedToken_(esConsumes()),
124  g1Token_(esConsumes()),
125  g2Token_(esConsumes()),
126  qualToken_(esConsumes(edm::ESInputTag("", iConfig.getParameter<std::string>("StripQualityLabel")))),
130  isMC_(iConfig.getUntrackedParameter<bool>("isMC", false)),
131  detId_(0),
132  ring_(0),
133  istrip_(0),
134  det_type_(0),
135  layer_(0),
136  side_(0),
137  subdetId_(0),
138  noise_(0),
139  gsim_(0),
140  g1_(0),
141  g2_(0),
142  lenght_(0),
143  isTIB_(false),
144  isTOB_(false),
145  isTEC_(false),
146  isTID_(false) {
147  usesResource(TFileService::kSharedResource);
148 
150  //now do what ever initialization is needed
151  text_ = fs->make<TText>(0., 0., "");
152  text_->SetName("RunMode");
153  tree_ = fs->make<TTree>("StripDBTree", "Tree with DB SiStrip info");
154 
155  tree_->Branch("detId", &detId_, "detId/i");
156  tree_->Branch("detType", &det_type_, "detType/i");
157  tree_->Branch("noise", &noise_, "noise/F");
158  tree_->Branch("pedestal", &pedestal_, "pedestal/F");
159  tree_->Branch("istrip", &istrip_, "istrip/i");
160  tree_->Branch("gsim", &gsim_, "gsim/F");
161  tree_->Branch("g1", &g1_, "g1/F");
162  tree_->Branch("g2", &g2_, "g2/F");
163  tree_->Branch("layer", &layer_, "layer/I");
164  tree_->Branch("side", &side_, "side/I");
165  tree_->Branch("subdetId", &subdetId_, "subdetId/I");
166  tree_->Branch("ring", &ring_, "ring/i");
167  tree_->Branch("length", &lenght_, "length/F");
168  tree_->Branch("isBad", &isBad_, "isBad/O");
169  tree_->Branch("isTIB", &isTIB_, "isTIB/O");
170  tree_->Branch("isTOB", &isTOB_, "isTOB/O");
171  tree_->Branch("isTEC", &isTEC_, "isTEC/O");
172  tree_->Branch("isTID", &isTID_, "isTID/O");
173 
175 }
static const std::string kSharedResource
Definition: TFileService.h:76
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
const edm::ESGetToken< SiStripQuality, SiStripQualityRcd > qualToken_
const edm::ESGetToken< SiStripApvGain, SiStripApvGainSimRcd > gsimToken_
const edm::ESGetToken< SiStripLatency, SiStripLatencyRcd > latToken_
const edm::ESGetToken< SiStripNoises, SiStripNoisesRcd > noiseToken_
const bool isMC_
T getUntrackedParameter(std::string const &, T const &) const
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > topoToken_
const edm::ESGetToken< SiStripApvGain, SiStripApvGain2Rcd > g2Token_
SiStripDetInfo read(std::string filePath)
const edm::ESGetToken< SiStripPedestals, SiStripPedestalsRcd > pedToken_
SiStripDetInfo detInfo_
static constexpr char const *const kDefaultFile
const edm::ESGetToken< SiStripApvGain, SiStripApvGainRcd > g1Token_

◆ ~SiStripDB2Tree()

SiStripDB2Tree::~SiStripDB2Tree ( )
overridedefault

Member Function Documentation

◆ analyze()

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

Implements edm::one::EDAnalyzerBase.

Definition at line 263 of file SiStripDB2Tree.cc.

References det_type_, detId_, detInfo_, edm::ParameterSet::dump(), dqmdumpme::first, g1_, g1Token_, g2_, g2Token_, edm::EventSetup::getData(), SiStripNoises::getDetIds(), SiStripNoises::getNoise(), SiStripDetInfo::getNumberOfApvsAndStripLength(), edm::ParameterSet::getParameter(), edm::ParameterSet::getParameterSet(), SiStripPedestals::getPed(), edm::getProcessParameterSetContainingModule(), SiStripNoises::getRange(), SiStripPedestals::getRange(), SiStripBadStrip::getRange(), SiStripApvGain::getRange(), SiStripApvGain::getStripGain(), gsim_, gsimToken_, isBad_, isMC_, SiStripQuality::IsStripBad(), istrip_, SiStripLatency::latency(), latToken_, lenght_, LogDebug, LOGINFO, edm::one::EDAnalyzerBase::moduleDescription(), SiStripDetId::moduleGeometry(), noise_, noiseToken_, pedestal_, pedToken_, processGT_, qualToken_, READMODEMASK, setTopoInfo(), AlCaHLTBitMon_QueryRunRegistry::string, sistrip::STRIPS_PER_APV, text_, topoToken_, and tree_.

263  {
264  // fill header information
266 
267  const edm::ParameterSet& globalTagPSet =
269 
270  processGT_ = globalTagPSet.getParameter<std::string>("globaltag");
271 
272  RecordInfo* GTheader = new RecordInfo("GlobalTag", processGT_.c_str());
273  tree_->GetUserInfo()->Add(GTheader);
274  GTheader->printInfo();
275 
276  // handles
277  const SiStripPedestals* pedestalObj = &iSetup.getData(pedToken_);
278  const SiStripNoises* noiseObj = &iSetup.getData(noiseToken_);
279  const SiStripApvGain* g1Obj = &iSetup.getData(g1Token_);
280  const SiStripApvGain* g2Obj = &iSetup.getData(g2Token_);
281  const SiStripQuality* siStripQualityObj = &iSetup.getData(qualToken_);
282  const SiStripApvGain* gsimObj = nullptr;
283  if (isMC_) {
284  gsimObj = &iSetup.getData(gsimToken_);
285  } else {
286  LOGINFO("SiStripDB2Tree") << "We have determined this Data";
287  }
288 
289  bool first = true;
290  const SiStripLatency* latencyObj = &iSetup.getData(latToken_);
291 
292  std::vector<uint32_t> activeDetIds;
293  noiseObj->getDetIds(activeDetIds);
294 
295  const TrackerTopology* tTopo_ = &iSetup.getData(topoToken_);
296 
297  for (uint32_t detid : activeDetIds) {
298  setTopoInfo(detid, tTopo_);
299 
300  SiStripNoises::Range noiseRange = noiseObj->getRange(detid);
301  SiStripApvGain::Range gsimRange;
302  if (isMC_ && gsimObj != nullptr) {
303  gsimObj->getRange(detid);
304  }
305  SiStripApvGain::Range g1Range = g1Obj->getRange(detid);
306  SiStripApvGain::Range g2Range = g2Obj->getRange(detid);
307  SiStripPedestals::Range pedestalsRange = pedestalObj->getRange(detid);
308 
309  unsigned int nStrip = detInfo_.getNumberOfApvsAndStripLength(detid).first * sistrip::STRIPS_PER_APV;
311  detId_ = detid;
312  det_type_ = static_cast<unsigned int>(SiStripDetId(detid).moduleGeometry());
313  for (istrip_ = 0; istrip_ < nStrip; ++istrip_) {
314  if (first) {
315  first = false;
316  std::string run_op = ((latencyObj->latency(detid, 1) & READMODEMASK) == READMODEMASK) ? "PEAK" : "DECO";
317  text_->SetText(0., 0., run_op.c_str());
318  LOGINFO("SiStripDB2Tree") << "SiStripOperationModeRcd "
319  << ". . . " << run_op;
320  }
321  gsim_ = isMC_ ? gsimObj->getStripGain(istrip_, gsimRange) : 1.;
322  g1_ = g1Obj->getStripGain(istrip_, g1Range) ? g1Obj->getStripGain(istrip_, g1Range) : 1.;
323  g2_ = g2Obj->getStripGain(istrip_, g2Range) ? g2Obj->getStripGain(istrip_, g2Range) : 1.;
324  noise_ = noiseObj->getNoise(istrip_, noiseRange);
325  pedestal_ = pedestalObj->getPed(istrip_, pedestalsRange);
326  isBad_ = siStripQualityObj->IsStripBad(siStripQualityObj->getRange(detid), istrip_);
327  tree_->Fill();
328  }
329  }
330 }
void setTopoInfo(uint32_t detId, const TrackerTopology *tTopo)
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
const Range getRange(const uint32_t &detID) const
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
Definition: EventSetup.h:119
const edm::ESGetToken< SiStripQuality, SiStripQualityRcd > qualToken_
SiStripModuleGeometry moduleGeometry() const
Definition: SiStripDetId.h:109
const edm::ESGetToken< SiStripApvGain, SiStripApvGainSimRcd > gsimToken_
ParameterSet const & getParameterSet(std::string const &) const
const edm::ESGetToken< SiStripLatency, SiStripLatencyRcd > latToken_
const edm::ESGetToken< SiStripNoises, SiStripNoisesRcd > noiseToken_
std::pair< ContainerIterator, ContainerIterator > Range
const bool isMC_
const Range getRange(const uint32_t detID) const
float getPed(const uint16_t &strip, const Range &range) const
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > topoToken_
static float getNoise(uint16_t strip, const Range &range)
Definition: SiStripNoises.h:72
const edm::ESGetToken< SiStripApvGain, SiStripApvGain2Rcd > g2Token_
std::pair< ContainerIterator, ContainerIterator > Range
ParameterSet const & getProcessParameterSetContainingModule(ModuleDescription const &moduleDescription)
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:18
const std::pair< unsigned short, double > getNumberOfApvsAndStripLength(uint32_t detId) const
bool IsStripBad(uint32_t detid, short strip) const
const edm::ESGetToken< SiStripPedestals, SiStripPedestalsRcd > pedToken_
SiStripDetInfo detInfo_
const Range getRange(const uint32_t detID) const
ModuleDescription const & moduleDescription() const
const Range getRange(const uint32_t detID) const
#define LOGINFO(x)
static float getStripGain(uint16_t strip, const Range &range)
static const uint16_t STRIPS_PER_APV
uint16_t latency(const uint32_t detId, const uint16_t apv) const
std::string processGT_
std::string dump(unsigned int indent=0) const
std::pair< ContainerIterator, ContainerIterator > Range
Definition: SiStripNoises.h:47
void getDetIds(std::vector< uint32_t > &DetIds_) const
#define READMODEMASK
#define LogDebug(id)
const edm::ESGetToken< SiStripApvGain, SiStripApvGainRcd > g1Token_

◆ beginRun()

void SiStripDB2Tree::beginRun ( edm::Run const &  iRun,
edm::EventSetup const &  iSetup 
)
overrideprivate

Definition at line 247 of file SiStripDB2Tree.cc.

References isMC_, edm::RunBase::run(), and tree_.

247  {
248  char c_run[30];
249  sprintf(c_run, "%i", iRun.run());
250  tree_->GetUserInfo()->Add(new TObjString(c_run));
251 
252  auto pedHook = this->getRecordInfo<SiStripPedestalsRcd>(iSetup);
253  auto noiseHook = this->getRecordInfo<SiStripNoisesRcd>(iSetup);
254  auto g1Hook = this->getRecordInfo<SiStripApvGainRcd>(iSetup);
255  auto g2Hook = this->getRecordInfo<SiStripApvGain2Rcd>(iSetup);
256  auto qualityHook = this->getRecordInfo<SiStripQualityRcd>(iSetup);
257  if (isMC_) {
258  auto g1SimHook = this->getRecordInfo<SiStripApvGainSimRcd>(iSetup);
259  }
260 }
const bool isMC_

◆ endRun()

void SiStripDB2Tree::endRun ( edm::Run const &  ,
edm::EventSetup const &   
)
inlineoverrideprivate

Definition at line 84 of file SiStripDB2Tree.cc.

84 {};

◆ fillDescriptions()

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

Definition at line 333 of file SiStripDB2Tree.cc.

References edm::ConfigurationDescriptions::add(), submitPVResolutionJobs::desc, and AlCaHLTBitMon_QueryRunRegistry::string.

333  {
335 
336  desc.setComment("Creates TTree with SiStrip Database tag content.");
337  desc.add<std::string>("StripQualityLabel", "MergedBadComponent");
338  desc.addUntracked<bool>("isMC", false);
339 
340  descriptions.add("SiStripDB2Tree", desc);
341 }
void add(std::string const &label, ParameterSetDescription const &psetDescription)

◆ getRecordInfo()

template<class Rcd >
std::pair< const char *, std::string > SiStripDB2Tree::getRecordInfo ( const edm::EventSetup iSetup) const
private

Definition at line 226 of file SiStripDB2Tree.cc.

References edm::IOVSyncValue::beginOfTime(), edm::IOVSyncValue::endOfTime(), dqmdumpme::first, edm::EventSetup::get(), dqmdumpme::last, LOGINFO, AlCaHarvesting_cff::record, to_string(), and tree_.

226  {
227  const Rcd& record = iSetup.get<Rcd>();
228  const edm::ValidityInterval& validity = record.validityInterval();
229  const edm::IOVSyncValue first = validity.first();
230  const edm::IOVSyncValue last = validity.last();
232  LOGINFO("SiStripDB2Tree") << "@SUB=SiStripDB2Tree::getRecordInfo"
233  << "\nTrying to apply " << record.key().name() << " with multiple IOVs in tag.\n"
234  << "Validity range is " << first.eventID().run() << " - " << last.eventID().run() << "\n";
235  } else {
236  LOGINFO("SiStripDB2Tree") << "@SUB=SiStripDB2Tree::getRecordInfo"
237  << "\nTrying to apply " << record.key().name() << "Validity range is "
238  << first.eventID().run() << " - " << last.eventID().run() << "\n";
239  }
240 
241  tree_->GetUserInfo()->Add(new RecordInfo(record.key().name(), std::to_string(first.eventID().run()).c_str()));
242 
243  return std::make_pair(record.key().name(), std::to_string(first.eventID().run()));
244 }
static const IOVSyncValue & endOfTime()
Definition: IOVSyncValue.cc:82
static std::string to_string(const XMLCh *ch)
static const IOVSyncValue & beginOfTime()
Definition: IOVSyncValue.cc:88
T get() const
Definition: EventSetup.h:79
#define LOGINFO(x)

◆ setTopoInfo()

void SiStripDB2Tree::setTopoInfo ( uint32_t  detId,
const TrackerTopology tTopo 
)
private

Definition at line 181 of file SiStripDB2Tree.cc.

References hcalRecHitTable_cff::detId, isTEC_, isTIB_, isTID_, isTOB_, layer_, ring_, side_, DetId::subdetId(), subdetId_, SiStripSubdetector::TEC, TrackerTopology::tecSide(), TrackerTopology::tecWheel(), SiStripSubdetector::TIB, TrackerTopology::tibLayer(), SiStripSubdetector::TID, TrackerTopology::tidSide(), TrackerTopology::tidWheel(), SiStripSubdetector::TOB, and TrackerTopology::tobLayer().

Referenced by analyze().

181  {
183  switch (subdetId_) {
184  case SiStripSubdetector::TIB: //TIB
185  isTIB_ = true;
186  isTOB_ = false;
187  isTEC_ = false;
188  isTID_ = false;
189  layer_ = tTopo->tibLayer(detId);
190  side_ = 0;
191  ring_ = 0;
192  break;
193  case SiStripSubdetector::TID: //TID
194  isTIB_ = false;
195  isTOB_ = false;
196  isTEC_ = false;
197  isTID_ = true;
198  side_ = tTopo->tidSide(detId);
199  layer_ = tTopo->tidWheel(detId);
200  ring_ = 0;
201  break;
202  case SiStripSubdetector::TOB: //TOB
203  isTIB_ = false;
204  isTOB_ = true;
205  isTEC_ = false;
206  isTID_ = false;
207  layer_ = tTopo->tobLayer(detId);
208  side_ = 0;
209  ring_ = 0;
210  break;
211  case SiStripSubdetector::TEC: //TEC
212  isTIB_ = false;
213  isTOB_ = false;
214  isTEC_ = true;
215  isTID_ = false;
216  side_ = tTopo->tecSide(detId);
217  layer_ = tTopo->tecWheel(detId);
218  ring_ = 0;
219  break;
220  }
221  return;
222 }
unsigned int tobLayer(const DetId &id) const
unsigned int tidSide(const DetId &id) const
unsigned int tidWheel(const DetId &id) const
unsigned int tecWheel(const DetId &id) const
unsigned int tecSide(const DetId &id) const
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:48
Definition: DetId.h:17
unsigned int tibLayer(const DetId &id) const

Member Data Documentation

◆ det_type_

uint32_t SiStripDB2Tree::det_type_
private

Definition at line 108 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ detId_

uint32_t SiStripDB2Tree::detId_
private

Definition at line 108 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ detInfo_

SiStripDetInfo SiStripDB2Tree::detInfo_
private

Definition at line 115 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ g1_

float SiStripDB2Tree::g1_
private

Definition at line 110 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ g1Token_

const edm::ESGetToken<SiStripApvGain, SiStripApvGainRcd> SiStripDB2Tree::g1Token_
private

Definition at line 95 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ g2_

float SiStripDB2Tree::g2_
private

Definition at line 110 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ g2Token_

const edm::ESGetToken<SiStripApvGain, SiStripApvGain2Rcd> SiStripDB2Tree::g2Token_
private

Definition at line 96 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ gsim_

float SiStripDB2Tree::gsim_
private

Definition at line 110 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ gsimToken_

const edm::ESGetToken<SiStripApvGain, SiStripApvGainSimRcd> SiStripDB2Tree::gsimToken_
private

Definition at line 98 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ isBad_

bool SiStripDB2Tree::isBad_
private

Definition at line 111 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ isMC_

const bool SiStripDB2Tree::isMC_
private

Definition at line 102 of file SiStripDB2Tree.cc.

Referenced by analyze(), and beginRun().

◆ isTEC_

bool SiStripDB2Tree::isTEC_
private

Definition at line 111 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ isTIB_

bool SiStripDB2Tree::isTIB_
private

Definition at line 111 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ isTID_

bool SiStripDB2Tree::isTID_
private

Definition at line 111 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ isTOB_

bool SiStripDB2Tree::isTOB_
private

Definition at line 111 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ istrip_

uint32_t SiStripDB2Tree::istrip_
private

Definition at line 108 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ latToken_

const edm::ESGetToken<SiStripLatency, SiStripLatencyRcd> SiStripDB2Tree::latToken_
private

Definition at line 99 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ layer_

Int_t SiStripDB2Tree::layer_
private

Definition at line 109 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ lenght_

float SiStripDB2Tree::lenght_
private

Definition at line 110 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ noise_

float SiStripDB2Tree::noise_
private

Definition at line 110 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ noiseToken_

const edm::ESGetToken<SiStripNoises, SiStripNoisesRcd> SiStripDB2Tree::noiseToken_
private

Definition at line 94 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ pedestal_

float SiStripDB2Tree::pedestal_
private

Definition at line 110 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ pedToken_

const edm::ESGetToken<SiStripPedestals, SiStripPedestalsRcd> SiStripDB2Tree::pedToken_
private

Definition at line 93 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ processGT_

std::string SiStripDB2Tree::processGT_
private

Definition at line 105 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ qualToken_

const edm::ESGetToken<SiStripQuality, SiStripQualityRcd> SiStripDB2Tree::qualToken_
private

Definition at line 97 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ ring_

uint32_t SiStripDB2Tree::ring_
private

Definition at line 108 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ side_

Int_t SiStripDB2Tree::side_
private

Definition at line 109 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ subdetId_

Int_t SiStripDB2Tree::subdetId_
private

Definition at line 109 of file SiStripDB2Tree.cc.

Referenced by setTopoInfo(), and SiStripDB2Tree().

◆ text_

TText* SiStripDB2Tree::text_
private

Definition at line 112 of file SiStripDB2Tree.cc.

Referenced by analyze(), and SiStripDB2Tree().

◆ topoToken_

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

Definition at line 100 of file SiStripDB2Tree.cc.

Referenced by analyze().

◆ tree_

TTree* SiStripDB2Tree::tree_
private

Definition at line 104 of file SiStripDB2Tree.cc.

Referenced by analyze(), beginRun(), getRecordInfo(), and SiStripDB2Tree().