CMS 3D CMS Logo

Functions
parseHcalDetId.h File Reference
#include <string>
#include "DataFormats/HcalDetId/interface/HcalDetId.h"

Go to the source code of this file.

Functions

const char * hcalSubdetectorName (HcalSubdetector subdet)
 
HcalDetId parseHcalDetId (const std::string &s)
 

Function Documentation

◆ hcalSubdetectorName()

const char* hcalSubdetectorName ( HcalSubdetector  subdet)

Definition at line 40 of file parseHcalDetId.cc.

40  {
41  const unsigned ind = static_cast<unsigned>(subdet);
42  assert(ind < nSsubdetNames);
43  return subdetNames[ind];
44 }

References cms::cuda::assert(), nSsubdetNames, and subdetNames.

◆ parseHcalDetId()

HcalDetId parseHcalDetId ( const std::string &  s)

Definition at line 46 of file parseHcalDetId.cc.

46  {
47  using namespace std;
48 
49  // Expected string contents:
50  //
51  // ieta iphi depth subdetector
52  //
53  // subdetector is one of "HB", "HE", "HF", or "HO"
54  //
56  istringstream iss(s);
57  vector<string> tokens(istream_iterator<string>{iss}, istream_iterator<string>{});
58  if (tokens.size() == 4) {
59  HcalSubdetector subdet;
60  int ieta, iphi, depth;
61  if (parse_int(tokens[0].c_str(), &ieta) && parse_int(tokens[1].c_str(), &iphi) &&
62  parse_int(tokens[2].c_str(), &depth) && parseSubdetector(tokens[3].c_str(), &subdet))
63  result = HcalDetId(subdet, ieta, iphi, depth);
64  }
65  return result;
66 }

References LEDCalibrationChannels::depth, LEDCalibrationChannels::ieta, LEDCalibrationChannels::iphi, parse_int(), parseSubdetector(), mps_fire::result, and alignCSCRings::s.

parse_int
static bool parse_int(const char *c, int *result)
Definition: parseHcalDetId.cc:31
cms::cuda::assert
assert(be >=bs)
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
alignCSCRings.s
s
Definition: alignCSCRings.py:92
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
subdetNames
static const char * subdetNames[]
Definition: parseHcalDetId.cc:11
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
HcalDetId
Definition: HcalDetId.h:12
nSsubdetNames
static const unsigned nSsubdetNames
Definition: parseHcalDetId.cc:18
HcalSubdetector
HcalSubdetector
Definition: HcalAssistant.h:31
std
Definition: JetResolutionObject.h:76
parseSubdetector
static bool parseSubdetector(const char *c, HcalSubdetector *result)
Definition: parseHcalDetId.cc:20
mps_fire.result
result
Definition: mps_fire.py:311