10 typedef std::vector<FWPFLegoRecHit *> rh;
14 if ((*i)->isTallest() ==
false && (*i)->getEtEnergy(
b) == maxVal)
15 (*i)->setIsTallest(
true);
26 for (TEveElement::List_i
i =
parent->BeginChildren();
i !=
parent->EndChildren(); ++
i) {
28 TEveStraightLineSet *
line =
dynamic_cast<TEveStraightLineSet *
>(*i);
30 line->SetMarkerColor(
item()->modelInfo(iId.
index()).displayProperties().color());
40 for (
size_t i = 0;
i < corners.size(); ++
i) {
41 centre.fX += corners[
i].fX;
42 centre.fY += corners[
i].fY;
43 centre.fZ += corners[
i].fZ;
52 TEveElementList *product,
54 size_t itemSize = iItem->
size();
58 product->AddElement(itemHolder);
63 std::vector<TEveVector> etaphiCorners(8);
66 if (corners ==
nullptr)
70 for (
int i = 0;
i < 4; ++
i) {
72 TEveVector
cv = TEveVector(corners[
j], corners[
j + 1], corners[
j + 2]);
73 etaphiCorners[
i].fX =
cv.Eta();
74 etaphiCorners[
i].fY =
cv.Phi();
75 etaphiCorners[
i].fZ = 0.0;
77 etaphiCorners[
i + 4].fX =
79 etaphiCorners[
i + 4].fY = etaphiCorners[
i].fY;
80 etaphiCorners[
i + 4].fZ = 0.001;
96 float dPhi1 = etaphiCorners[2].fY - etaphiCorners[1].fY;
97 float dPhi2 = etaphiCorners[3].fY - etaphiCorners[0].fY;
98 float dPhi3 = etaphiCorners[1].fY - etaphiCorners[2].fY;
99 float dPhi4 = etaphiCorners[0].fY - etaphiCorners[3].fY;
102 etaphiCorners[2].fY = etaphiCorners[2].fY - (2 *
TMath::Pi());
104 etaphiCorners[3].fY = etaphiCorners[3].fY - (2 *
TMath::Pi());
106 etaphiCorners[2].fY = etaphiCorners[2].fY + (2 *
TMath::Pi());
108 etaphiCorners[3].fY = etaphiCorners[3].fY + (2 *
TMath::Pi());
111 recHit->setSquareColor(
item()->defaultDisplayProperties().color());
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
static constexpr unsigned int kLegoPFECALBit
float getMaxVal(bool et) const
void cleanLocal() override
const fireworks::Context & context() const
const EcalRecHit & modelData(int index)
void scaleProduct(TEveElementList *parent, FWViewType::EType, const FWViewContext *vc) override
FWViewEnergyScale * getEnergyScale() const
TEveVector calculateCentre(const std::vector< TEveVector > &corners) const
const float * getCorners(unsigned int id) const
void voteMaxEtAndEnergy(float Et, float energy) const
float calculateEt(const TEveVector ¢re, float e)
const FWGeometry * getGeom() const
TEveCompound * createCompound(bool set_color=true, bool propagate_color_to_all_children=false) const
const DetId & detid() const
float getMaxValLog(bool et) const
const FWEventItem * item() const
std::vector< FWPFLegoRecHit * > m_recHits
void localModelChanges(const FWModelId &iId, TEveElement *iCompound, FWViewType::EType viewType, const FWViewContext *vc) override