|
typedef std::vector< Product * >::iterator | Product_it |
|
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 () |
|
virtual void | build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *) |
|
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 |
|
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 | buildViewType (const void *iData, unsigned int iIndex, TEveElement &oItemHolder, FWViewType::EType viewType, const FWViewContext *context) override |
|
virtual void | buildViewType (const HGCRecHit &iData, unsigned int iIndex, TEveElement &oItemHolder, FWViewType::EType viewType, const FWViewContext *) |
|
const HGCRecHit & | modelData (int index) |
|
void | build () |
|
virtual void | build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *) |
|
void | build (const FWEventItem *iItem, TEveElementList *product, const FWViewContext *) override |
|
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 |
|
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 FWProxyBuilderBase & | operator= (const FWProxyBuilderBase &) |
|
virtual void | scaleProduct (TEveElementList *parent, FWViewType::EType, const FWViewContext *vc) |
|
FWSimpleProxyHelper | m_helper |
|
std::vector< Product * > | m_products |
|
Definition at line 9 of file FWHGCRecHitProxyBuilder.cc.
void FWHGCRecHitProxyBuilder::build |
( |
const HGCRecHit & |
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 FWSimpleProxyBuilderTemplate< HGCRecHit >.
Definition at line 65 of file FWHGCRecHitProxyBuilder.cc.
References CaloRecHit::energy(), FWEventItem::getConfig(), FWGeometry::getCorners(), FWEventItem::getGeom(), FWGeometry::getParameters(), FWGeometry::getShapePars(), gradient, gradient_steps, mps_fire::i, HGCRecHit::id(), FWProxyBuilderBase::item(), FWProxyBuilderBase::layer(), HLT_IsoTrack_cff::offset, CosmicsPD_Skims::radius, FWProxyBuilderConfiguration::value(), testProducerWithPsetDescEmpty_cfi::x1, and z.
75 TEveBoxSet *boxset =
new TEveBoxSet();
77 boxset->UseSingleColor();
78 boxset->SetPickable(
true);
79 boxset->SetAntiFlick(
true);
81 unsigned int ID = iData.
id();
83 const bool z = (
ID >> 25) & 0
x1;
86 if (((z_plus & z_minus) != 1) && (((z_plus | z_minus) == 0) || !(
z == z_minus ||
z == !z_plus)))
93 if (corners ==
nullptr ||
parameters ==
nullptr || shapes ==
nullptr)
97 const bool isScintillator = (total_points == 4);
98 const uint8_t
type = ((
ID >> 28) & 0xF);
113 if (ll != ((
ID >> (isScintillator ? 17 : 20)) & 0x1F))
117 boxset->Reset(isScintillator ? TEveBoxSet::kBT_FreeBox : TEveBoxSet::kBT_Hex,
true, 64);
120 if (isScintillator) {
121 const int total_vertices = 3 * total_points;
123 std::vector<float> pnts(24);
124 for (
int i = 0;
i < total_points; ++
i) {
125 pnts[
i * 3 + 0] = corners[
i * 3];
126 pnts[
i * 3 + 1] = corners[
i * 3 + 1];
127 pnts[
i * 3 + 2] = corners[
i * 3 + 2];
129 pnts[(
i * 3 + 0) + total_vertices] = corners[
i * 3];
130 pnts[(
i * 3 + 1) + total_vertices] = corners[
i * 3 + 1];
131 pnts[(
i * 3 + 2) + total_vertices] = corners[
i * 3 + 2] + shapes[3];
133 boxset->AddBox(&pnts[0]);
139 float centerX = (corners[6] + corners[6 +
offset]) / 2;
140 float centerY = (corners[7] + corners[7 +
offset]) / 2;
141 float radius = fabs(corners[6] - corners[6 +
offset]) / 2;
142 boxset->AddHex(TEveVector(centerX, centerY, corners[2]),
radius, shapes[2], shapes[3]);
152 boxset->CSCTakeAnyParentAsMaster();
154 boxset->CSCApplyMainColorToMatchingChildren();
155 boxset->CSCApplyMainTransparencyToMatchingChildren();
156 boxset->SetMainColor(
item()->defaultDisplayProperties().color());
157 boxset->SetMainTransparency(
item()->defaultDisplayProperties().transparency());
159 oItemHolder.AddElement(boxset);
static constexpr float gradient[3][gradient_steps]
FWProxyBuilderConfiguration * getConfig() const
DetId id() const
get the id
constexpr float energy() const
const float * getCorners(unsigned int id) const
const FWGeometry * getGeom() const
const float * getShapePars(unsigned int id) const
static constexpr uint8_t gradient_steps
const float * getParameters(unsigned int id) const
T value(const std::string &name)
const FWEventItem * item() const