CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
FastTimeGeometry Class Referencefinal

#include <FastTimeGeometry.h>

Inheritance diagram for FastTimeGeometry:
CaloSubdetectorGeometry

Public Types

enum  { k_NumberOfParametersPerShape = 12 }
 
enum  { k_NumberOfShapes = 50 }
 
typedef FastTimeGeometryRecord AlignedRecord
 
typedef CaloCellGeometry::CCGFloat CCGFloat
 
typedef std::vector< FlatTrdCellVec
 
typedef std::vector< GlobalPointCornersVec
 
typedef std::set< DetIdDetIdSet
 
typedef PFastTimeRcd PGeometryRecord
 
typedef CaloCellGeometry::Pt3D Pt3D
 
typedef CaloCellGeometry::Pt3DVec Pt3DVec
 
- Public Types inherited from CaloSubdetectorGeometry
typedef CaloCellGeometry::CCGFloat CCGFloat
 
typedef std::vector< std::shared_ptr< const CaloCellGeometry > > CellSet
 
typedef std::set< DetIdDetIdSet
 
typedef std::vector< CCGFloatDimVec
 
typedef std::vector< unsigned int > IVec
 
typedef CaloCellGeometry::ParMgr ParMgr
 
typedef CaloCellGeometry::ParVec ParVec
 
typedef CaloCellGeometry::ParVecVec ParVecVec
 
typedef std::vector< CCGFloatTrVec
 

Public Member Functions

std::string cellElement () const
 
 FastTimeGeometry (const FastTimeTopology &topology)
 
virtual void fillNamedParams (DDFilteredView fv)
 
DetIdSet getCells (const GlobalPoint &r, double dR) const override
 Get a list of all cells within a dR of the given cell. More...
 
DetId getClosestCell (const GlobalPoint &r) const override
 
CornersVec getCorners (const DetId &id) const
 Returns the corner points of this cell's volume. More...
 
std::shared_ptr< const CaloCellGeometrygetGeometry (const DetId &id) const override
 Get the cell geometry of a given detector id. Should return false if not found. More...
 
GlobalPoint getPosition (const DetId &id) const
 
void getSummary (CaloSubdetectorGeometry::TrVec &trVector, CaloSubdetectorGeometry::IVec &iVector, CaloSubdetectorGeometry::DimVec &dimVector, CaloSubdetectorGeometry::IVec &dinsVector) const override
 
const std::vector< DetId > & getValidDetIds (DetId::Detector det=DetId::Detector(0), int subdet=0) const override
 Get a list of valid detector ids (for the given subdetector) More...
 
const std::vector< DetId > & getValidGeomDetIds (void) const
 
void initializeParms () override
 
void localCorners (Pt3DVec &lc, const CCGFloat *pv, unsigned int i, Pt3D &ref)
 
void newCell (const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId) override
 
bool present (const DetId &id) const override
 is this detid present in the geometry? More...
 
void sortDetIds ()
 
const FastTimeTopologytopology () const
 
 ~FastTimeGeometry () override
 
- Public Member Functions inherited from CaloSubdetectorGeometry
void allocateCorners (CaloCellGeometry::CornersVec::size_type n)
 
void allocatePar (ParVec::size_type n, unsigned int m)
 
 CaloSubdetectorGeometry ()
 
 CaloSubdetectorGeometry (const CaloSubdetectorGeometry &)=delete
 avoid copies More...
 
CaloCellGeometry::CornersMgrcornersMgr ()
 
CCGFloat deltaEta (const DetId &detId) const
 
CCGFloat deltaPhi (const DetId &detId) const
 
virtual void fillDefaultNamedParameters () const
 
virtual CellSet getCellSet (const GlobalPoint &r, double dR) const
 
virtual unsigned int numberOfParametersPerShape () const
 
virtual unsigned int numberOfShapes () const
 
virtual unsigned int numberOfTransformParms () const
 
CaloSubdetectorGeometryoperator= (const CaloSubdetectorGeometry &)=delete
 
ParMgrparMgr ()
 
const ParMgrparMgrConst () const
 
ParVecVecparVecVec ()
 
const ParVecVecparVecVec () const
 
virtual ~CaloSubdetectorGeometry ()
 The base class DOES assume that it owns the CaloCellGeometry objects. More...
 

Static Public Member Functions

static std::string dbString ()
 
static std::string producerTag ()
 

Protected Member Functions

void addValidID (const DetId &id)
 
std::shared_ptr< const CaloCellGeometrycellGeomPtr (uint32_t index) const override
 
const CaloCellGeometrygetGeometryRawPtr (uint32_t index) const override
 
unsigned int indexFor (const DetId &id) const override
 
unsigned int sizeForDenseIndex () const
 
virtual unsigned int sizeForDenseIndex (const DetId &id) const
 
- Protected Member Functions inherited from CaloSubdetectorGeometry
void addValidID (const DetId &id)
 
virtual unsigned int sizeForDenseIndex (const DetId &id) const
 

Private Member Functions

std::shared_ptr< const CaloCellGeometrycellGeomPtr (uint32_t index, const GlobalPoint &p) const
 

Private Attributes

CellVec m_cellVec
 
ForwardSubdetector m_subdet
 
const FastTimeTopologym_topology
 
int m_Type
 
std::vector< DetIdm_validGeomIds
 

Additional Inherited Members

- Static Protected Member Functions inherited from CaloSubdetectorGeometry
static CCGFloat deltaR (const GlobalPoint &p1, const GlobalPoint &p2)
 
- Protected Attributes inherited from CaloSubdetectorGeometry
ParVecVec m_parVecVec
 
std::vector< DetIdm_validIds
 

Detailed Description

Definition at line 24 of file FastTimeGeometry.h.

Member Typedef Documentation

◆ AlignedRecord

Definition at line 35 of file FastTimeGeometry.h.

◆ CCGFloat

Definition at line 28 of file FastTimeGeometry.h.

◆ CellVec

typedef std::vector<FlatTrd> FastTimeGeometry::CellVec

Definition at line 26 of file FastTimeGeometry.h.

◆ CornersVec

Definition at line 33 of file FastTimeGeometry.h.

◆ DetIdSet

typedef std::set<DetId> FastTimeGeometry::DetIdSet

Definition at line 32 of file FastTimeGeometry.h.

◆ PGeometryRecord

Definition at line 36 of file FastTimeGeometry.h.

◆ Pt3D

Definition at line 29 of file FastTimeGeometry.h.

◆ Pt3DVec

Definition at line 30 of file FastTimeGeometry.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
k_NumberOfParametersPerShape 

Definition at line 38 of file FastTimeGeometry.h.

38 { k_NumberOfParametersPerShape = 12 }; // FlatTrd

◆ anonymous enum

anonymous enum
Enumerator
k_NumberOfShapes 

Definition at line 39 of file FastTimeGeometry.h.

39 { k_NumberOfShapes = 50 };

Constructor & Destructor Documentation

◆ FastTimeGeometry()

FastTimeGeometry::FastTimeGeometry ( const FastTimeTopology topology)

Definition at line 15 of file FastTimeGeometry.cc.

16  : m_topology(topology_),
17  m_cellVec(topology_.totalGeomModules()),
18  m_validGeomIds(topology_.totalGeomModules()),
19  m_Type(topology_.detectorType()),
20  m_subdet(topology_.subDetector()) {
21  m_validIds.reserve(topology().totalModules());
22 #ifdef EDM_ML_DEBUG
23  std::cout << "Expected total # of Geometry Modules " << topology().totalGeomModules() << std::endl;
24 #endif
25 }

References gather_cfg::cout, CaloSubdetectorGeometry::m_validIds, topology(), and FastTimeTopology::totalGeomModules().

◆ ~FastTimeGeometry()

FastTimeGeometry::~FastTimeGeometry ( )
override

Definition at line 27 of file FastTimeGeometry.cc.

27 {}

Member Function Documentation

◆ addValidID()

void FastTimeGeometry::addValidID ( const DetId id)
protected

Definition at line 189 of file FastTimeGeometry.cc.

189  {
190  edm::LogError("FastTimeGeom") << "FastTimeGeometry::addValidID is not implemented";
191 }

◆ cellElement()

std::string FastTimeGeometry::cellElement ( ) const

Definition at line 134 of file FastTimeGeometry.cc.

134  {
135  if (m_Type == 1)
136  return "FastTimeBarrel";
137  else if (m_Type == 2)
138  return "FastTimeEndcap";
139  else
140  return "Unknown";
141 }

References m_Type.

◆ cellGeomPtr() [1/2]

std::shared_ptr< const CaloCellGeometry > FastTimeGeometry::cellGeomPtr ( uint32_t  index) const
overrideprotectedvirtual

Reimplemented from CaloSubdetectorGeometry.

Definition at line 164 of file FastTimeGeometry.cc.

164  {
165  if ((index >= m_cellVec.size()) || (m_validGeomIds[index].rawId() == 0))
166  return nullptr;
167  static const auto do_not_delete = [](const void*) {};
168  auto cell = std::shared_ptr<const CaloCellGeometry>(&m_cellVec[index], do_not_delete);
169  if (nullptr == cell->param())
170  return nullptr;
171  return cell;
172 }

References m_cellVec, and m_validGeomIds.

Referenced by cellGeomPtr(), getGeometry(), and getSummary().

◆ cellGeomPtr() [2/2]

std::shared_ptr< const CaloCellGeometry > FastTimeGeometry::cellGeomPtr ( uint32_t  index,
const GlobalPoint p 
) const
private

Definition at line 174 of file FastTimeGeometry.cc.

174  {
175  if ((index >= m_cellVec.size()) || (m_validGeomIds[index].rawId() == 0))
176  return nullptr;
177  if (pos == GlobalPoint())
178  return cellGeomPtr(index);
179  auto cell = std::make_shared<FlatTrd>(m_cellVec[index]);
180  cell->setPosition(pos);
181 #ifdef EDM_ML_DEBUG
182 //std::cout << "cellGeomPtr " << newcell << ":" << cell << std::endl;
183 #endif
184  if (nullptr == cell->param())
185  return nullptr;
186  return cell;
187 }

References cellGeomPtr(), m_cellVec, and m_validGeomIds.

◆ dbString()

static std::string FastTimeGeometry::dbString ( )
inlinestatic

Definition at line 41 of file FastTimeGeometry.h.

41 { return "PFastTimeRcd"; }

◆ fillNamedParams()

void FastTimeGeometry::fillNamedParams ( DDFilteredView  fv)
virtual

Definition at line 29 of file FastTimeGeometry.cc.

29 {}

◆ getCells()

FastTimeGeometry::DetIdSet FastTimeGeometry::getCells ( const GlobalPoint r,
double  dR 
) const
overridevirtual

Get a list of all cells within a dR of the given cell.

The default implementation makes a loop over all cell geometries. Cleverer implementations are suggested to use rough conversions between eta/phi and ieta/iphi and test on the boundaries.

Reimplemented from CaloSubdetectorGeometry.

Definition at line 129 of file FastTimeGeometry.cc.

129  {
131  return dss;
132 }

◆ getClosestCell()

DetId FastTimeGeometry::getClosestCell ( const GlobalPoint r) const
overridevirtual

Reimplemented from CaloSubdetectorGeometry.

Definition at line 107 of file FastTimeGeometry.cc.

107  {
108  int zside = (r.z() > 0) ? 1 : -1;
109  std::pair<int, int> etaZPhi;
110  if (m_Type == 1) {
111  double zz = (zside > 0) ? r.z() : -r.z();
112  etaZPhi = topology().dddConstants().getZPhi(zz, r.phi());
113  } else {
114  double phi = (zside > 0) ? static_cast<double>(r.phi()) : atan2(r.y(), -r.x());
115  // Cast needed to resolve compile-time ambiguity of ? operator between
116  // convertible Phi class and atan2 template function.
117 
118  etaZPhi = topology().dddConstants().getEtaPhi(r.perp(), phi);
119  }
120  FastTimeDetId id = FastTimeDetId(m_Type, etaZPhi.first, etaZPhi.second, zside);
121 #ifdef EDM_ML_DEBUG
122  std::cout << "getClosestCell: for (" << r.x() << ", " << r.y() << ", " << r.z() << ") Id " << id.type() << ":"
123  << id.zside() << ":" << id.ieta() << ":" << id.iphi() << std::endl;
124 #endif
125 
126  return (topology().valid(id) ? DetId(id) : DetId());
127 }

References gather_cfg::cout, FastTimeTopology::dddConstants(), FastTimeDDDConstants::getEtaPhi(), FastTimeDDDConstants::getZPhi(), m_Type, phi, alignCSCRings::r, topology(), RunInfoPI::valid, ecaldqm::zside(), and geometryCSVtoXML::zz.

◆ getCorners()

FastTimeGeometry::CornersVec FastTimeGeometry::getCorners ( const DetId id) const

Returns the corner points of this cell's volume.

Definition at line 97 of file FastTimeGeometry.cc.

97  {
98  FastTimeDetId id_ = FastTimeDetId(id);
99  auto corners = topology().dddConstants().getCorners(m_Type, id_.ieta(), id_.iphi(), id_.zside());
101  for (const auto& corner : corners) {
102  out.emplace_back(0.1 * corner.x(), 0.1 * corner.y(), 0.1 * corner.z());
103  }
104  return out;
105 }

References TCMET_cfi::corner, FastTimeTopology::dddConstants(), FastTimeDDDConstants::getCorners(), FastTimeDetId::ieta(), FastTimeDetId::iphi(), m_Type, MillePedeFileConverter_cfg::out, topology(), and FastTimeDetId::zside().

Referenced by FWRecoGeometryESProducer::addFTLGeometry().

◆ getGeometry()

std::shared_ptr< const CaloCellGeometry > FastTimeGeometry::getGeometry ( const DetId id) const
overridevirtual

Get the cell geometry of a given detector id. Should return false if not found.

Reimplemented from CaloSubdetectorGeometry.

Definition at line 74 of file FastTimeGeometry.cc.

74  {
75  if (id == DetId())
76  return nullptr; // nothing to get
77  DetId geoId = (DetId)(FastTimeDetId(id).geometryCell());
78  const uint32_t cellIndex(topology().detId2denseGeomId(geoId));
79  const GlobalPoint pos = (id != geoId) ? getPosition(id) : GlobalPoint();
80  return cellGeomPtr(cellIndex, pos);
81 }

References cellGeomPtr(), FastTimeDetId::geometryCell(), getPosition(), and topology().

◆ getGeometryRawPtr()

const CaloCellGeometry * FastTimeGeometry::getGeometryRawPtr ( uint32_t  index) const
overrideprotectedvirtual

Implements CaloSubdetectorGeometry.

Definition at line 158 of file FastTimeGeometry.cc.

158  {
159  // Modify the RawPtr class
160  const CaloCellGeometry* cell(&m_cellVec[index]);
161  return (m_cellVec.size() < index || nullptr == cell->param() ? nullptr : cell);
162 }

References m_cellVec, and CaloCellGeometry::param().

Referenced by present().

◆ getPosition()

GlobalPoint FastTimeGeometry::getPosition ( const DetId id) const

Definition at line 91 of file FastTimeGeometry.cc.

91  {
92  FastTimeDetId id_ = FastTimeDetId(id);
93  auto pos = topology().dddConstants().getPosition(m_Type, id_.ieta(), id_.iphi(), id_.zside());
94  return GlobalPoint(0.1 * pos.x(), 0.1 * pos.y(), 0.1 * pos.z());
95 }

References FastTimeTopology::dddConstants(), FastTimeDDDConstants::getPosition(), FastTimeDetId::ieta(), FastTimeDetId::iphi(), m_Type, topology(), and FastTimeDetId::zside().

Referenced by getGeometry().

◆ getSummary()

void FastTimeGeometry::getSummary ( CaloSubdetectorGeometry::TrVec trVector,
CaloSubdetectorGeometry::IVec iVector,
CaloSubdetectorGeometry::DimVec dimVector,
CaloSubdetectorGeometry::IVec dinsVector 
) const
overridevirtual

Reimplemented from CaloSubdetectorGeometry.

Definition at line 205 of file FastTimeGeometry.cc.

208  {
209  unsigned int numberOfCells = topology().totalGeomModules(); // total Geom Modules both sides
212 
213  trVector.reserve(numberOfCells * numberOfTransformParms());
214  iVector.reserve(numberOfCells);
215  dimVector.reserve(numberOfShapes * numberOfParametersPerShape);
216  dinsVector.reserve(numberOfCells);
217 
218  for (unsigned int k = 0; k < topology().totalGeomModules(); ++k) {
221  params[1] = params[2] = 0;
225  params[6] = params[10] = 0;
226  params[11] = (k == 0) ? 1.0 : -1.0;
227  dimVector.insert(dimVector.end(), params.begin(), params.end());
228  }
229 
230  for (unsigned int i(0); i < numberOfCells; ++i) {
231  DetId detId = m_validGeomIds[i];
232  dinsVector.emplace_back(topology().detId2denseGeomId(detId));
233  iVector.emplace_back(1);
234 
235  Tr3D tr;
236  auto ptr(cellGeomPtr(i));
237  if (nullptr != ptr) {
238  ptr->getTransform(tr, (Pt3DVec*)nullptr);
239 
240  if (Tr3D() == tr) { // there is no rotation
241  const GlobalPoint& gp(ptr->getPosition());
242  tr = HepGeom::Translate3D(gp.x(), gp.y(), gp.z());
243  }
244 
245  const CLHEP::Hep3Vector tt(tr.getTranslation());
246  trVector.emplace_back(tt.x());
247  trVector.emplace_back(tt.y());
248  trVector.emplace_back(tt.z());
249  if (6 == numberOfTransformParms()) {
250  const CLHEP::HepRotation rr(tr.getRotation());
251  const ROOT::Math::Transform3D rtr(
252  rr.xx(), rr.xy(), rr.xz(), tt.x(), rr.yx(), rr.yy(), rr.yz(), tt.y(), rr.zx(), rr.zy(), rr.zz(), tt.z());
254  rtr.GetRotation(ea);
255  trVector.emplace_back(ea.Phi());
256  trVector.emplace_back(ea.Theta());
257  trVector.emplace_back(ea.Psi());
258  }
259  }
260  }
261 }

References cellGeomPtr(), FastTimeTopology::dddConstants(), FastTimeDDDConstants::getRin(), FastTimeDDDConstants::getRout(), FastTimeDDDConstants::getZHalf(), runTauDisplay::gp, mps_fire::i, dqmdumpme::k, k_NumberOfParametersPerShape, k_NumberOfShapes, m_Type, m_validGeomIds, CaloSubdetectorGeometry::numberOfParametersPerShape(), CaloSubdetectorGeometry::numberOfShapes(), CaloSubdetectorGeometry::numberOfTransformParms(), CalibrationSummaryClient_cfi::params, findQualityFiles::rr, topology(), FastTimeTopology::totalGeomModules(), and groupFilesInBlocks::tt.

◆ getValidDetIds()

const std::vector<DetId>& FastTimeGeometry::getValidDetIds ( DetId::Detector  det = DetId::Detector(0),
int  subdet = 0 
) const
inlineoverridevirtual

Get a list of valid detector ids (for the given subdetector)

Note
The implementation in this class is relevant for SubdetectorGeometries which handle only a single subdetector at a time. It does not look at the det and subdet arguments.

Reimplemented from CaloSubdetectorGeometry.

Definition at line 71 of file FastTimeGeometry.h.

71  {
72  return m_validIds;
73  }

References CaloSubdetectorGeometry::m_validIds.

Referenced by FWRecoGeometryESProducer::addFTLGeometry().

◆ getValidGeomDetIds()

const std::vector<DetId>& FastTimeGeometry::getValidGeomDetIds ( void  ) const
inline

Definition at line 74 of file FastTimeGeometry.h.

74 { return m_validGeomIds; }

References m_validGeomIds.

◆ indexFor()

unsigned int FastTimeGeometry::indexFor ( const DetId id) const
overrideprotectedvirtual

Reimplemented from CaloSubdetectorGeometry.

Definition at line 143 of file FastTimeGeometry.cc.

143  {
144  unsigned int cellIndex = m_cellVec.size();
145  if (id != DetId()) {
146  DetId geoId = (DetId)(FastTimeDetId(id).geometryCell());
147  cellIndex = topology().detId2denseGeomId(geoId);
148 #ifdef EDM_ML_DEBUG
149  std::cout << "indexFor " << std::hex << id.rawId() << ":" << geoId.rawId() << std::dec << " index " << cellIndex
150  << std::endl;
151 #endif
152  }
153  return cellIndex;
154 }

References gather_cfg::cout, TauDecayModes::dec, FastTimeTopology::detId2denseGeomId(), FastTimeDetId::geometryCell(), m_cellVec, DetId::rawId(), and topology().

◆ initializeParms()

void FastTimeGeometry::initializeParms ( )
overridevirtual

Reimplemented from CaloSubdetectorGeometry.

Definition at line 31 of file FastTimeGeometry.cc.

31 {}

◆ localCorners()

void FastTimeGeometry::localCorners ( Pt3DVec lc,
const CCGFloat pv,
unsigned int  i,
Pt3D ref 
)

Definition at line 33 of file FastTimeGeometry.cc.

33  {
34  FlatTrd::localCorners(lc, pv, ref);
35 }

References FlatTrd::localCorners(), and MetAnalyzer::pv().

◆ newCell()

void FastTimeGeometry::newCell ( const GlobalPoint f1,
const GlobalPoint f2,
const GlobalPoint f3,
const CCGFloat parm,
const DetId detId 
)
overridevirtual

Implements CaloSubdetectorGeometry.

Definition at line 37 of file FastTimeGeometry.cc.

38  {
40  DetId geomId = (DetId)(FastTimeDetId(detId).geometryCell());
41  int nEtaZ = topology().dddConstants().numberEtaZ(m_Type);
43 
44  const uint32_t cellIndex(topology().detId2denseGeomId(detId));
45 
46  m_cellVec.at(cellIndex) = FlatTrd(cornersMgr(), f1, f2, f3, parm);
47  m_validGeomIds.at(cellIndex) = geomId;
48 
49 #ifdef EDM_ML_DEBUG
50  unsigned int nOld = m_validIds.size();
51 #endif
52  for (int etaZ = 1; etaZ <= nEtaZ; ++etaZ) {
53  id.iEtaZ = etaZ;
54  for (int phi = 1; phi <= nPhi; ++phi) {
55  id.iPhi = phi;
56  DetId idc = topology().encode(id);
57  if (topology().valid(idc)) {
58  m_validIds.emplace_back(idc);
59  }
60  }
61  }
62 
63 #ifdef EDM_ML_DEBUG
64  std::cout << "FastTimeGeometry::newCell-> [" << cellIndex << "]"
65  << " front:" << f1.x() << '/' << f1.y() << '/' << f1.z() << " back:" << f2.x() << '/' << f2.y() << '/'
66  << f2.z() << " eta|phi " << m_cellVec[cellIndex].etaPos() << ":" << m_cellVec[cellIndex].phiPos()
67  << " id:" << FastTimeDetId(detId) << " with valid DetId from " << nOld << " to " << m_validIds.size()
68  << std::endl;
69  std::cout << "Cell[" << cellIndex << "] " << std::hex << geomId.rawId() << ":" << m_validGeomIds[cellIndex].rawId()
70  << std::dec << std::endl;
71 #endif
72 }

References CaloSubdetectorGeometry::cornersMgr(), gather_cfg::cout, FastTimeTopology::dddConstants(), TauDecayModes::dec, FastTimeTopology::decode(), FastTimeTopology::encode(), DeadROC_duringRun::f1, DeadROC_duringRun::f2, FastTimeDetId::geometryCell(), m_cellVec, m_Type, m_validGeomIds, CaloSubdetectorGeometry::m_validIds, HLT_FULL_cff::nPhi, FastTimeDDDConstants::numberEtaZ(), FastTimeDDDConstants::numberPhi(), phi, DetId::rawId(), topology(), and RunInfoPI::valid.

◆ present()

bool FastTimeGeometry::present ( const DetId id) const
overridevirtual

is this detid present in the geometry?

Reimplemented from CaloSubdetectorGeometry.

Definition at line 83 of file FastTimeGeometry.cc.

83  {
84  if (id == DetId())
85  return false;
86  DetId geoId = (DetId)(FastTimeDetId(id).geometryCell());
87  const uint32_t index(topology().detId2denseGeomId(geoId));
88  return (nullptr != getGeometryRawPtr(index));
89 }

References FastTimeDetId::geometryCell(), getGeometryRawPtr(), and topology().

◆ producerTag()

static std::string FastTimeGeometry::producerTag ( )
inlinestatic

Definition at line 90 of file FastTimeGeometry.h.

90 { return "FastTime"; }

◆ sizeForDenseIndex() [1/2]

unsigned int FastTimeGeometry::sizeForDenseIndex ( ) const
protected

Definition at line 156 of file FastTimeGeometry.cc.

156 { return topology().totalGeomModules(); }

References topology(), and FastTimeTopology::totalGeomModules().

◆ sizeForDenseIndex() [2/2]

unsigned int CaloSubdetectorGeometry::sizeForDenseIndex
protected

Definition at line 256 of file CaloSubdetectorGeometry.cc.

256  {
258 }

◆ sortDetIds()

void FastTimeGeometry::sortDetIds ( void  )

Definition at line 200 of file FastTimeGeometry.cc.

200  {
201  m_validIds.shrink_to_fit();
202  std::sort(m_validIds.begin(), m_validIds.end(), rawIdSort());
203 }

References CaloSubdetectorGeometry::m_validIds, and jetUpdater_cfi::sort.

◆ topology()

const FastTimeTopology& FastTimeGeometry::topology ( ) const
inline

Member Data Documentation

◆ m_cellVec

CellVec FastTimeGeometry::m_cellVec
private

Definition at line 112 of file FastTimeGeometry.h.

Referenced by cellGeomPtr(), getGeometryRawPtr(), indexFor(), and newCell().

◆ m_subdet

ForwardSubdetector FastTimeGeometry::m_subdet
private

Definition at line 115 of file FastTimeGeometry.h.

◆ m_topology

const FastTimeTopology& FastTimeGeometry::m_topology
private

Definition at line 110 of file FastTimeGeometry.h.

Referenced by topology().

◆ m_Type

int FastTimeGeometry::m_Type
private

◆ m_validGeomIds

std::vector<DetId> FastTimeGeometry::m_validGeomIds
private

Definition at line 113 of file FastTimeGeometry.h.

Referenced by cellGeomPtr(), getSummary(), getValidGeomDetIds(), and newCell().

FastTimeDDDConstants::getRout
double getRout(int type) const
Definition: FastTimeDDDConstants.cc:134
CaloSubdetectorGeometry::numberOfParametersPerShape
virtual unsigned int numberOfParametersPerShape() const
Definition: CaloSubdetectorGeometry.h:93
FastTimeDetId::ieta
int ieta() const
get the absolute value of the cell #'s along x-axis (EC) | z-axis (Barel)
Definition: FastTimeDetId.h:41
mps_fire.i
i
Definition: mps_fire.py:428
geometryCSVtoXML.zz
zz
Definition: geometryCSVtoXML.py:19
FlatTrd::localCorners
static void localCorners(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
Definition: FlatTrd.cc:153
CaloGenericDetId
Definition: CaloGenericDetId.h:12
groupFilesInBlocks.tt
int tt
Definition: groupFilesInBlocks.py:144
FastTimeGeometry::DetIdSet
std::set< DetId > DetIdSet
Definition: FastTimeGeometry.h:32
FastTimeGeometry::getGeometryRawPtr
const CaloCellGeometry * getGeometryRawPtr(uint32_t index) const override
Definition: FastTimeGeometry.cc:158
FastTimeGeometry::k_NumberOfParametersPerShape
Definition: FastTimeGeometry.h:38
CalibrationSummaryClient_cfi.params
params
Definition: CalibrationSummaryClient_cfi.py:14
ecaldqm::zside
int zside(DetId const &)
Definition: EcalDQMCommonUtils.cc:189
FlatTrd
A base class to handle the particular shape of HGCal volumes.
Definition: FlatTrd.h:19
findQualityFiles.rr
string rr
Definition: findQualityFiles.py:185
FastTimeGeometry::m_topology
const FastTimeTopology & m_topology
Definition: FastTimeGeometry.h:110
FastTimeDetId::iphi
int iphi() const
get the absolute value of the cell #'s along y-axis (EC) | phi (Barrel)
Definition: FastTimeDetId.h:45
gather_cfg.cout
cout
Definition: gather_cfg.py:144
pos
Definition: PixelAliasList.h:18
FastTimeGeometry::cellGeomPtr
std::shared_ptr< const CaloCellGeometry > cellGeomPtr(uint32_t index) const override
Definition: FastTimeGeometry.cc:164
CaloSubdetectorGeometry::numberOfTransformParms
virtual unsigned int numberOfTransformParms() const
Definition: CaloSubdetectorGeometry.h:94
ParmVec
std::vector< float > ParmVec
Definition: FastTimeGeometry.cc:13
Tr3D
CaloCellGeometry::Tr3D Tr3D
Definition: FastTimeGeometry.cc:12
CaloSubdetectorGeometry::numberOfShapes
virtual unsigned int numberOfShapes() const
Definition: CaloSubdetectorGeometry.h:92
FastTimeTopology::dddConstants
const FastTimeDDDConstants & dddConstants() const
Definition: FastTimeTopology.h:82
DetId
Definition: DetId.h:17
FastTimeTopology::decode
DecodedDetId decode(const DetId &id) const
Definition: FastTimeTopology.cc:81
FastTimeDDDConstants::getRin
double getRin(int type) const
Definition: FastTimeDDDConstants.cc:124
FastTimeDDDConstants::getZPhi
std::pair< int, int > getZPhi(double z, double phi) const
Definition: FastTimeDDDConstants.cc:24
CaloSubdetectorGeometry::m_validIds
std::vector< DetId > m_validIds
Definition: CaloSubdetectorGeometry.h:115
Tr3D
CaloCellGeometry::Tr3D Tr3D
Definition: CaloCellGeometry.cc:7
GlobalPoint
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
dqmdumpme.k
k
Definition: dqmdumpme.py:60
Point3DBase< float, GlobalTag >
CaloGenericDetId::sizeForDenseIndexing
uint32_t sizeForDenseIndexing() const
Definition: CaloGenericDetId.cc:40
FastTimeTopology::detId2denseGeomId
virtual uint32_t detId2denseGeomId(const DetId &id) const
Definition: FastTimeTopology.cc:41
FastTimeTopology::totalGeomModules
unsigned int totalGeomModules() const
Definition: FastTimeTopology.h:79
runTauDisplay.gp
gp
Definition: runTauDisplay.py:431
FastTimeGeometry::getPosition
GlobalPoint getPosition(const DetId &id) const
Definition: FastTimeGeometry.cc:91
FastTimeDDDConstants::numberPhi
int numberPhi(int type) const
Definition: FastTimeDDDConstants.cc:184
CaloCellGeometry
Definition: CaloCellGeometry.h:50
DeadROC_duringRun.f2
f2
Definition: DeadROC_duringRun.py:220
FastTimeGeometry::k_NumberOfShapes
Definition: FastTimeGeometry.h:39
jetUpdater_cfi.sort
sort
Definition: jetUpdater_cfi.py:29
FastTimeDetId::zside
int zside() const
get the z-side of the cell (1/-1)
Definition: FastTimeDetId.h:48
HLT_FULL_cff.nPhi
nPhi
Definition: HLT_FULL_cff.py:6586
MetAnalyzer.pv
def pv(vc)
Definition: MetAnalyzer.py:7
FastTimeDDDConstants::numberEtaZ
int numberEtaZ(int type) const
Definition: FastTimeDDDConstants.cc:174
FastTimeDDDConstants::getEtaPhi
std::pair< int, int > getEtaPhi(double r, double phi) const
Definition: FastTimeDDDConstants.cc:40
FastTimeDetId::geometryCell
FastTimeDetId geometryCell() const
Definition: FastTimeDetId.h:32
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
align::EulerAngles
AlgebraicVector EulerAngles
Definition: Definitions.h:34
FastTimeTopology::DecodedDetId
Definition: FastTimeTopology.h:87
alignCSCRings.r
r
Definition: alignCSCRings.py:93
DDAxes::phi
FastTimeTopology::encode
DetId encode(const DecodedDetId &id_) const
Definition: FastTimeTopology.cc:92
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
FastTimeGeometry::m_validGeomIds
std::vector< DetId > m_validGeomIds
Definition: FastTimeGeometry.h:113
CaloSubdetectorGeometry::cornersMgr
CaloCellGeometry::CornersMgr * cornersMgr()
Definition: CaloSubdetectorGeometry.h:82
FastTimeGeometry::m_Type
int m_Type
Definition: FastTimeGeometry.h:114
FastTimeGeometry::m_subdet
ForwardSubdetector m_subdet
Definition: FastTimeGeometry.h:115
FastTimeGeometry::topology
const FastTimeTopology & topology() const
Definition: FastTimeGeometry.h:93
FastTimeDetId
Definition: FastTimeDetId.h:8
TCMET_cfi.corner
corner
Definition: TCMET_cfi.py:34
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
FastTimeGeometry::m_cellVec
CellVec m_cellVec
Definition: FastTimeGeometry.h:112
Pt3DVec
CaloCellGeometry::Pt3DVec Pt3DVec
Definition: CaloCellGeometry.cc:6
MillePedeFileConverter_cfg.out
out
Definition: MillePedeFileConverter_cfg.py:31
FastTimeDDDConstants::getZHalf
double getZHalf(int type) const
Definition: FastTimeDDDConstants.cc:144
RunInfoPI::valid
Definition: RunInfoPayloadInspectoHelper.h:16
FastTimeDDDConstants::getCorners
std::vector< GlobalPoint > getCorners(int type, int izeta, int iphi, int zside) const
Definition: FastTimeDDDConstants.cc:80
DeadROC_duringRun.f1
f1
Definition: DeadROC_duringRun.py:219
FastTimeDDDConstants::getPosition
GlobalPoint getPosition(int type, int izeta, int iphi, int zside) const
Definition: FastTimeDDDConstants.cc:60
TauDecayModes.dec
dec
Definition: TauDecayModes.py:142
FastTimeGeometry::CornersVec
std::vector< GlobalPoint > CornersVec
Definition: FastTimeGeometry.h:33