CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
FWCaloClusterProxyBuilder Class Reference
Inheritance diagram for FWCaloClusterProxyBuilder:
FWHeatmapProxyBuilderTemplate< reco::CaloCluster > FWSimpleProxyBuilder FWProxyBuilderBase

Public Member Functions

 FWCaloClusterProxyBuilder (void)
 
 FWCaloClusterProxyBuilder (const FWCaloClusterProxyBuilder &)=delete
 
const FWCaloClusterProxyBuilderoperator= (const FWCaloClusterProxyBuilder &)=delete
 
const std::string & purpose () const
 
const std::string & typeName () const
 
const std::string & view () const
 
 ~FWCaloClusterProxyBuilder (void) override
 
- Public Member Functions inherited from FWHeatmapProxyBuilderTemplate< reco::CaloCluster >
 FWHeatmapProxyBuilderTemplate ()
 
 FWHeatmapProxyBuilderTemplate (const FWHeatmapProxyBuilderTemplate &)=delete
 
const FWHeatmapProxyBuilderTemplateoperator= (const FWHeatmapProxyBuilderTemplate &)=delete
 
- Public Member Functions inherited from FWSimpleProxyBuilder
 FWSimpleProxyBuilder (const std::type_info &iType)
 
 FWSimpleProxyBuilder (const FWSimpleProxyBuilder &)=delete
 
const FWSimpleProxyBuilderoperator= (const FWSimpleProxyBuilder &)=delete
 
 ~FWSimpleProxyBuilder () override
 
- Public Member Functions inherited from FWProxyBuilderBase
void build ()
 
virtual bool canHandle (const FWEventItem &)
 
const fireworks::Contextcontext () const
 
TEveElementList * createProduct (FWViewType::EType, const FWViewContext *)
 
 FWProxyBuilderBase ()
 
bool getHaveWindow () const
 
virtual bool havePerViewProduct (FWViewType::EType) const
 
virtual bool haveSingleProduct () const
 
const FWEventItemitem () const
 
virtual void itemBeingDestroyed (const FWEventItem *)
 
void itemChanged (const FWEventItem *)
 
int layer () const
 
void modelChanges (const FWModelIds &)
 
void removePerViewProduct (FWViewType::EType, const FWViewContext *vc)
 
void scaleChanged (const FWViewContext *)
 
void setHaveWindow (bool iFlag)
 
virtual void setInteractionList (FWInteractionList *, const std::string &)
 
void setupAddElement (TEveElement *el, TEveElement *parent, bool set_color=true) const
 
void setupElement (TEveElement *el, bool color=true) const
 
virtual bool willHandleInteraction () const
 
virtual ~FWProxyBuilderBase ()
 

Static Public Member Functions

static const std::string & classPurpose ()
 
static const std::string & classRegisterTypeName ()
 
static const std::string & classTypeName ()
 
static const std::string & classView ()
 
- Static Public Member Functions inherited from FWSimpleProxyBuilder
static std::string typeOfBuilder ()
 Used by the plugin system to determine how the proxy uses the data from FWEventItem. More...
 
- Static Public Member Functions inherited from FWProxyBuilderBase
static bool representsSubPart ()
 
static std::string typeOfBuilder ()
 Used by the plugin system to determine how the proxy uses the data from FWEventItem. More...
 

Private Member Functions

void build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *vc) override
 
void build (const reco::CaloCluster &iData, unsigned int iIndex, TEveElement &oItemHolder, const FWViewContext *) override
 
void setItem (const FWEventItem *iItem) override
 

Private Attributes

bool enableTimeFilter
 
bool heatmap
 
long layer
 
double saturation_energy
 
double timeLowerBound
 
double timeUpperBound
 
edm::Handle< edm::ValueMap< std::pair< float, float > > > TimeValueMapHandle
 
bool z_minus
 
bool z_plus
 

Additional Inherited Members

- Protected Types inherited from FWProxyBuilderBase
typedef std::vector< Product * >::iterator Product_it
 
- Protected Member Functions inherited from FWHeatmapProxyBuilderTemplate< reco::CaloCluster >
void build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *vc) override
 
void build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *) override
 
virtual void build (const void *, unsigned int iIndex, TEveElement &iItemHolder, const FWViewContext *)=0
 
void build (const void *iData, unsigned int iIndex, TEveElement &oItemHolder, const FWViewContext *context) override
 
virtual void buildViewType (const void *, unsigned int iIndex, TEveElement &iItemHolder, FWViewType::EType, const FWViewContext *)=0
 
void buildViewType (const FWEventItem *iItem, TEveElementList *product, FWViewType::EType viewType, const FWViewContext *) override
 
void buildViewType (const void *iData, unsigned int iIndex, TEveElement &oItemHolder, FWViewType::EType viewType, const FWViewContext *context) override
 
virtual void buildViewType (const reco::CaloCluster &iData, unsigned int iIndex, TEveElement &oItemHolder, FWViewType::EType viewType, const FWViewContext *)
 
const reco::CaloClustermodelData (int index)
 
void setItem (const FWEventItem *iItem) override
 
- Protected Member Functions inherited from FWSimpleProxyBuilder
void build ()
 
virtual void build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *)
 
virtual void buildViewType (const FWEventItem *iItem, TEveElementList *, FWViewType::EType, const FWViewContext *)
 
void buildViewType (const FWEventItem *iItem, TEveElementList *product, FWViewType::EType viewType, const FWViewContext *) override
 
void clean () override
 
- Protected Member Functions inherited from FWProxyBuilderBase
virtual void cleanLocal ()
 
TEveCompound * createCompound (bool set_color=true, bool propagate_color_to_all_children=false) const
 
 FWProxyBuilderBase (const FWProxyBuilderBase &)
 
void increaseComponentTransparency (unsigned int index, TEveElement *holder, const std::string &name, Char_t transpOffset)
 
virtual void localModelChanges (const FWModelId &iId, TEveElement *iCompound, FWViewType::EType viewType, const FWViewContext *vc)
 
virtual void modelChanges (const FWModelIds &, Product *)
 
const FWProxyBuilderBaseoperator= (const FWProxyBuilderBase &)
 
virtual void scaleProduct (TEveElementList *parent, FWViewType::EType, const FWViewContext *vc)
 
- Protected Attributes inherited from FWHeatmapProxyBuilderTemplate< reco::CaloCluster >
std::unordered_map< DetId, const HGCRecHit *> * hitmap
 
- Protected Attributes inherited from FWSimpleProxyBuilder
FWSimpleProxyHelper m_helper
 
- Protected Attributes inherited from FWProxyBuilderBase
std::vector< Product * > m_products
 
- Static Protected Attributes inherited from FWHeatmapProxyBuilderTemplate< reco::CaloCluster >
static constexpr uint8_t gradient [3][gradient_steps]
 
static constexpr uint8_t gradient_steps
 

Detailed Description

Definition at line 11 of file FWCaloClusterProxyBuilder.cc.

Constructor & Destructor Documentation

◆ FWCaloClusterProxyBuilder() [1/2]

FWCaloClusterProxyBuilder::FWCaloClusterProxyBuilder ( void  )
inline

Definition at line 13 of file FWCaloClusterProxyBuilder.cc.

13 {}

◆ ~FWCaloClusterProxyBuilder()

FWCaloClusterProxyBuilder::~FWCaloClusterProxyBuilder ( void  )
inlineoverride

Definition at line 14 of file FWCaloClusterProxyBuilder.cc.

14 {}

◆ FWCaloClusterProxyBuilder() [2/2]

FWCaloClusterProxyBuilder::FWCaloClusterProxyBuilder ( const FWCaloClusterProxyBuilder )
delete

Member Function Documentation

◆ build() [1/2]

void FWCaloClusterProxyBuilder::build ( const FWEventItem iItem,
TEveElementList *  product,
const FWViewContext vc 
)
overrideprivatevirtual

Reimplemented from FWProxyBuilderBase.

Definition at line 50 of file FWCaloClusterProxyBuilder.cc.

References FWProxyBuilderBase::build(), DMR_cfg::cerr, enableTimeFilter, edm::EventBase::getByLabel(), FWEventItem::getConfig(), FWEventItem::getEvent(), heatmap, edm::HandleBase::isValid(), FWProxyBuilderBase::item(), FWProxyBuilderBase::layer(), SiStripPI::max, SiStripPI::min, saturation_energy, timeLowerBound, timeUpperBound, TimeValueMapHandle, FWProxyBuilderConfiguration::value(), z_minus, and z_plus.

50  {
51  iItem->getEvent()->getByLabel(edm::InputTag("hgcalLayerClusters", "timeLayerCluster"), TimeValueMapHandle);
53  timeLowerBound = std::min(item()->getConfig()->value<double>("TimeLowerBound(ns)"),
54  item()->getConfig()->value<double>("TimeUpperBound(ns)"));
55  timeUpperBound = std::max(item()->getConfig()->value<double>("TimeLowerBound(ns)"),
56  item()->getConfig()->value<double>("TimeUpperBound(ns)"));
57  } else {
58  iItem->getEvent()->getByLabel(edm::InputTag("hgcalMergeLayerClusters", "timeLayerCluster"), TimeValueMapHandle);
59  std::cerr << __FILE__ << ":" << __LINE__
60  << " couldn't locate 'hgcalLayerClusters:timeLayerCluster' ValueMap in input file. Trying to access "
61  "'hgcalMergeLayerClusters:timeLayerClusters' ValueMap"
62  << std::endl;
63  if (!TimeValueMapHandle.isValid()) {
64  std::cerr << __FILE__ << ":" << __LINE__
65  << " couldn't locate 'hgcalMergeLayerClusters:timeLayerCluster' ValueMap in input file." << std::endl;
66  }
67  }
68 
69  layer = item()->getConfig()->value<long>("Layer");
70  saturation_energy = item()->getConfig()->value<double>("EnergyCutOff");
71  heatmap = item()->getConfig()->value<bool>("Heatmap");
72  z_plus = item()->getConfig()->value<bool>("Z+");
73  z_minus = item()->getConfig()->value<bool>("Z-");
74  enableTimeFilter = item()->getConfig()->value<bool>("EnableTimeFilter");
75 
76  FWHeatmapProxyBuilderTemplate::build(iItem, product, vc);
77 }
FWProxyBuilderConfiguration * getConfig() const
Definition: FWEventItem.h:150
bool getByLabel(InputTag const &, Handle< T > &) const
Definition: EventBase.h:97
const edm::EventBase * getEvent() const
Definition: FWEventItem.h:131
edm::Handle< edm::ValueMap< std::pair< float, float > > > TimeValueMapHandle
bool isValid() const
Definition: HandleBase.h:70
const FWEventItem * item() const

◆ build() [2/2]

void FWCaloClusterProxyBuilder::build ( const reco::CaloCluster iData,
unsigned int  iIndex,
TEveElement &  oItemHolder,
const FWViewContext  
)
overrideprivatevirtual

iIndex is the index where iData is found in the container from which it came iItemHolder is the object to which you add your own objects which inherit from TEveElement

Reimplemented from FWHeatmapProxyBuilderTemplate< reco::CaloCluster >.

Definition at line 79 of file FWCaloClusterProxyBuilder.cc.

References reco::CaloCluster::algo(), ALPAKA_ACCELERATOR_NAMESPACE::brokenline::constexpr(), enableTimeFilter, hcalRecHitTable_cff::energy, reco::CaloCluster::energy(), fireworks::energyTower3DCorners(), f, edm::ValueMap< T >::get(), FWGeometry::getCorners(), FWEventItem::getGeom(), FWGeometry::getParameters(), FWGeometry::getShapePars(), FWHeatmapProxyBuilderTemplate< reco::CaloCluster >::gradient, FWHeatmapProxyBuilderTemplate< reco::CaloCluster >::gradient_steps, heatmap, reco::CaloCluster::hgcal_em, reco::CaloCluster::hgcal_had, FWHeatmapProxyBuilderTemplate< reco::CaloCluster >::hitmap, reco::CaloCluster::hitsAndFractions(), mps_fire::i, edm::HandleBase::isValid(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, FWProxyBuilderBase::item(), FWProxyBuilderBase::layer(), hltrates_dqm_sourceclient-live_cfg::offset, reco::CaloCluster::position(), CosmicsPD_Skims::radius, DetId::rawId(), saturation_energy, reco::CaloCluster::seed(), hcalRecHitTable_cff::time, timeUpperBound, TimeValueMapHandle, trackerHitRTTI::vector, testProducerWithPsetDescEmpty_cfi::x1, z, z_minus, and z_plus.

82  {
84  const float time = TimeValueMapHandle->get(iIndex).first;
85  if (time < timeLowerBound || time > timeUpperBound)
86  return;
87  }
88 
89  std::vector<std::pair<DetId, float>> clusterDetIds = iData.hitsAndFractions();
90 
91  bool h_hex(false);
92  TEveBoxSet *hex_boxset = new TEveBoxSet();
93  if (!heatmap)
94  hex_boxset->UseSingleColor();
95  hex_boxset->SetPickable(true);
96  hex_boxset->Reset(TEveBoxSet::kBT_Hex, true, 64);
97  hex_boxset->SetAntiFlick(true);
98 
99  bool h_box(false);
100  TEveBoxSet *boxset = new TEveBoxSet();
101  if (!heatmap)
102  boxset->UseSingleColor();
103  boxset->SetPickable(true);
104  boxset->Reset(TEveBoxSet::kBT_FreeBox, true, 64);
105  boxset->SetAntiFlick(true);
106 
107  for (std::vector<std::pair<DetId, float>>::iterator it = clusterDetIds.begin(), itEnd = clusterDetIds.end();
108  it != itEnd;
109  ++it) {
110  const uint8_t type = ((it->first >> 28) & 0xF);
111 
112  const float *corners = item()->getGeom()->getCorners(it->first);
113  if (corners == nullptr)
114  continue;
115 
116  // HGCal
117  if (iData.algo() == reco::CaloCluster::hgcal_em || iData.algo() == reco::CaloCluster::hgcal_had ||
118  (type >= 8 && type <= 10)) {
119  if (heatmap && hitmap->find(it->first) == hitmap->end())
120  continue;
121 
122  const bool z = (it->first >> 25) & 0x1;
123 
124  // discard everything thats not at the side that we are intersted in
125  if (((z_plus & z_minus) != 1) && (((z_plus | z_minus) == 0) || !(z == z_minus || z == !z_plus)))
126  continue;
127 
128  const float *parameters = item()->getGeom()->getParameters(it->first);
129  const float *shapes = item()->getGeom()->getShapePars(it->first);
130 
131  if (parameters == nullptr || shapes == nullptr)
132  continue;
133 
134  const int total_points = parameters[0];
135  const bool isScintillator = (total_points == 4);
136 
137  uint8_t ll = layer;
138  if (layer > 0) {
139  if (layer > 28) {
140  if (type == 8) {
141  continue;
142  }
143  ll -= 28;
144  } else {
145  if (type != 8) {
146  continue;
147  }
148  }
149 
150  if (ll != ((it->first >> (isScintillator ? 17 : 20)) & 0x1F))
151  continue;
152  }
153 
154  // seed and cluster position
155  if (iData.seed().rawId() == it->first.rawId()) {
156  TEveStraightLineSet *marker = new TEveStraightLineSet;
157  marker->SetLineWidth(1);
158 
159  // center of RecHit
160  const float center[3] = {corners[total_points * 3 + 0],
161  corners[total_points * 3 + 1],
162  corners[total_points * 3 + 2] + shapes[3] * 0.5f};
163 
164  // draw 3D cross
165  const float crossScale = 1.0f + fmin(iData.energy(), 5.0f);
166  marker->AddLine(center[0] - crossScale, center[1], center[2], center[0] + crossScale, center[1], center[2]);
167  marker->AddLine(center[0], center[1] - crossScale, center[2], center[0], center[1] + crossScale, center[2]);
168  marker->AddLine(center[0], center[1], center[2] - crossScale, center[0], center[1], center[2] + crossScale);
169 
170  oItemHolder.AddElement(marker);
171 
172  TEveStraightLineSet *position_marker = new TEveStraightLineSet;
173  position_marker->SetLineWidth(2);
174  position_marker->SetLineColor(kOrange);
175  auto const &pos = iData.position();
176  const float position_crossScale = crossScale * 0.5;
177  position_marker->AddLine(
178  pos.x() - position_crossScale, pos.y(), pos.z(), pos.x() + position_crossScale, pos.y(), pos.z());
179  position_marker->AddLine(
180  pos.x(), pos.y() - position_crossScale, pos.z(), pos.x(), pos.y() + position_crossScale, pos.z());
181 
182  oItemHolder.AddElement(position_marker);
183  }
184 
185  const float energy =
186  fmin((item()->getConfig()->value<bool>("Cluster(0)/RecHit(1)") ? hitmap->at(it->first)->energy()
187  : iData.energy()) /
189  1.0f);
190  const uint8_t colorFactor = gradient_steps * energy;
191 
192  // Scintillator
193  if (isScintillator) {
194  const int total_vertices = 3 * total_points;
195 
196  std::vector<float> pnts(24);
197  for (int i = 0; i < total_points; ++i) {
198  pnts[i * 3 + 0] = corners[i * 3];
199  pnts[i * 3 + 1] = corners[i * 3 + 1];
200  pnts[i * 3 + 2] = corners[i * 3 + 2];
201 
202  pnts[(i * 3 + 0) + total_vertices] = corners[i * 3];
203  pnts[(i * 3 + 1) + total_vertices] = corners[i * 3 + 1];
204  pnts[(i * 3 + 2) + total_vertices] = corners[i * 3 + 2] + shapes[3];
205  }
206  boxset->AddBox(&pnts[0]);
207  if (heatmap) {
208  energy ? boxset->DigitColor(gradient[0][colorFactor], gradient[1][colorFactor], gradient[2][colorFactor])
209  : boxset->DigitColor(64, 64, 64);
210  }
211 
212  h_box = true;
213  }
214  // Silicon
215  else {
216  constexpr int offset = 9;
217 
218  float centerX = (corners[6] + corners[6 + offset]) / 2;
219  float centerY = (corners[7] + corners[7 + offset]) / 2;
220  float radius = fabs(corners[6] - corners[6 + offset]) / 2;
221  hex_boxset->AddHex(TEveVector(centerX, centerY, corners[2]), radius, shapes[2], shapes[3]);
222  if (heatmap) {
223  energy ? hex_boxset->DigitColor(gradient[0][colorFactor], gradient[1][colorFactor], gradient[2][colorFactor])
224  : hex_boxset->DigitColor(64, 64, 64);
225  }
226 
227  h_hex = true;
228  }
229  }
230  // Not HGCal
231  else {
232  h_box = true;
233 
234  std::vector<float> pnts(24);
235  fireworks::energyTower3DCorners(corners, (*it).second, pnts);
236  boxset->AddBox(&pnts[0]);
237  }
238  }
239 
240  if (h_hex) {
241  hex_boxset->RefitPlex();
242 
243  hex_boxset->CSCTakeAnyParentAsMaster();
244  if (!heatmap) {
245  hex_boxset->CSCApplyMainColorToMatchingChildren();
246  hex_boxset->CSCApplyMainTransparencyToMatchingChildren();
247  hex_boxset->SetMainColor(item()->modelInfo(iIndex).displayProperties().color());
248  hex_boxset->SetMainTransparency(item()->defaultDisplayProperties().transparency());
249  }
250  oItemHolder.AddElement(hex_boxset);
251  }
252 
253  if (h_box) {
254  boxset->RefitPlex();
255 
256  boxset->CSCTakeAnyParentAsMaster();
257  if (!heatmap) {
258  boxset->CSCApplyMainColorToMatchingChildren();
259  boxset->CSCApplyMainTransparencyToMatchingChildren();
260  boxset->SetMainColor(item()->modelInfo(iIndex).displayProperties().color());
261  boxset->SetMainTransparency(item()->defaultDisplayProperties().transparency());
262  }
263  oItemHolder.AddElement(boxset);
264  }
265 }
const math::XYZPoint & position() const
cluster centroid position
Definition: CaloCluster.h:153
const std::vector< std::pair< DetId, float > > & hitsAndFractions() const
Definition: CaloCluster.h:209
AlgoId algo() const
algorithm identifier
Definition: CaloCluster.h:189
const_reference_type get(ProductID id, size_t idx) const
Definition: ValueMap.h:138
DetId seed() const
return DetId of seed
Definition: CaloCluster.h:218
const float * getCorners(unsigned int id) const
Definition: FWGeometry.cc:439
double f[11][100]
static constexpr uint8_t gradient[3][gradient_steps]
double energy() const
cluster energy
Definition: CaloCluster.h:148
void energyTower3DCorners(const float *corners, float scale, std::vector< float > &, bool reflect=false)
edm::Handle< edm::ValueMap< std::pair< float, float > > > TimeValueMapHandle
const FWGeometry * getGeom() const
Definition: FWEventItem.cc:548
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
const float * getShapePars(unsigned int id) const
Definition: FWGeometry.cc:461
bool isValid() const
Definition: HandleBase.h:70
const float * getParameters(unsigned int id) const
Definition: FWGeometry.cc:450
const FWEventItem * item() const
std::unordered_map< DetId, const HGCRecHit *> * hitmap

◆ classPurpose()

const std::string & FWCaloClusterProxyBuilder::classPurpose ( )
static

Definition at line 267 of file FWCaloClusterProxyBuilder.cc.

◆ classRegisterTypeName()

const std::string & FWCaloClusterProxyBuilder::classRegisterTypeName ( )
static

Definition at line 267 of file FWCaloClusterProxyBuilder.cc.

◆ classTypeName()

const std::string & FWCaloClusterProxyBuilder::classTypeName ( )
static

Definition at line 267 of file FWCaloClusterProxyBuilder.cc.

◆ classView()

const std::string & FWCaloClusterProxyBuilder::classView ( )
static

Definition at line 267 of file FWCaloClusterProxyBuilder.cc.

◆ operator=()

const FWCaloClusterProxyBuilder& FWCaloClusterProxyBuilder::operator= ( const FWCaloClusterProxyBuilder )
delete

◆ purpose()

const std::string& FWCaloClusterProxyBuilder::purpose ( ) const
inline

Definition at line 16 of file FWCaloClusterProxyBuilder.cc.

◆ setItem()

void FWCaloClusterProxyBuilder::setItem ( const FWEventItem iItem)
overrideprivatevirtual

Reimplemented from FWProxyBuilderBase.

Definition at line 40 of file FWCaloClusterProxyBuilder.cc.

References FWProxyBuilderConfiguration::assertParam(), FWEventItem::getConfig(), and FWHeatmapProxyBuilderTemplate< T >::setItem().

40  {
42  if (iItem) {
43  iItem->getConfig()->assertParam("Cluster(0)/RecHit(1)", false);
44  iItem->getConfig()->assertParam("EnableTimeFilter", false);
45  iItem->getConfig()->assertParam("TimeLowerBound(ns)", 0.01, 0.0, 75.0);
46  iItem->getConfig()->assertParam("TimeUpperBound(ns)", 0.01, 0.0, 75.0);
47  }
48 }
void setItem(const FWEventItem *iItem) override
FWProxyBuilderConfiguration * getConfig() const
Definition: FWEventItem.h:150
FWGenericParameter< T > * assertParam(const std::string &name, T def)

◆ typeName()

const std::string& FWCaloClusterProxyBuilder::typeName ( ) const
inline

Definition at line 16 of file FWCaloClusterProxyBuilder.cc.

◆ view()

const std::string& FWCaloClusterProxyBuilder::view ( ) const
inline

Definition at line 16 of file FWCaloClusterProxyBuilder.cc.

Member Data Documentation

◆ enableTimeFilter

bool FWCaloClusterProxyBuilder::enableTimeFilter
private

Definition at line 29 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ heatmap

bool FWCaloClusterProxyBuilder::heatmap
private

Definition at line 26 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ layer

long FWCaloClusterProxyBuilder::layer
private

◆ saturation_energy

double FWCaloClusterProxyBuilder::saturation_energy
private

Definition at line 25 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ timeLowerBound

double FWCaloClusterProxyBuilder::timeLowerBound
private

Definition at line 23 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ timeUpperBound

double FWCaloClusterProxyBuilder::timeUpperBound
private

Definition at line 23 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ TimeValueMapHandle

edm::Handle<edm::ValueMap<std::pair<float, float> > > FWCaloClusterProxyBuilder::TimeValueMapHandle
private

Definition at line 22 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ z_minus

bool FWCaloClusterProxyBuilder::z_minus
private

Definition at line 28 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().

◆ z_plus

bool FWCaloClusterProxyBuilder::z_plus
private

Definition at line 27 of file FWCaloClusterProxyBuilder.cc.

Referenced by build().