12 #include "TEveCompound.h"
13 #include "TEveTrack.h"
14 #include "TEveScalableStraightLineSet.h"
47 TEveElement& oItemHolder,
66 m_common =
new TEveElementList(
"common electron scene");
81 if (
m_common->HasChildren() ==
false) {
83 for (
int i = 0; i < static_cast<int>(
item()->
size()); ++
i) {
86 TEveTrack*
track(
nullptr);
92 track->SetLineWidth(width);
104 TEveElement& oItemHolder,
108 TEveElement::List_i trkIt = tracks->BeginChildren();
109 std::advance(trkIt, iIndex);
144 TEveElement& oItemHolder,
150 TEveElement& oItemHolder,
152 TEveScalableStraightLineSet* marker =
new TEveScalableStraightLineSet(
"",
"");
153 marker->SetLineWidth(2);
const fireworks::Context & context() const
FWProxyBuilderConfiguration * getConfig() const
#define REGISTER_PROXYBUILDER_METHODS()
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
~FWElectronGlimpseProxyBuilder() override
static const int kAllRPZBits
const FWElectronProxyBuilder & operator=(const FWElectronProxyBuilder &)=delete
~FWElectronProxyBuilder() override
TEveTrack * prepareTrack(const reco::Track &track, TEveTrackPropagator *propagator, const std::vector< TEveVector > &extraRefPoints=std::vector< TEveVector >())
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
void buildViewType(const reco::GsfElectron &iData, unsigned int iIndex, TEveElement &oItemHolder, FWViewType::EType type, const FWViewContext *) override
auto const & tracks
cannot be loose
TEveElementList * m_common
void setItem(const FWEventItem *iItem) override
TEveTrackPropagator * getTrackPropagator() const
virtual void cleanLocal()
const FWEventItem * item() const
static const int kAll3DBits
GsfTrackRef gsfTrack() const override
reference to a GsfTrack
const reco::GsfElectron & modelData(int index)
virtual void setItem(const FWEventItem *iItem)
bool haveSingleProduct() const override
void addStraightLineSegment(TEveStraightLineSet *marker, reco::Candidate const *cand, double scale_factor=2)
const FWElectronGlimpseProxyBuilder & operator=(const FWElectronGlimpseProxyBuilder &)=delete
bool makeRhoZSuperCluster(FWProxyBuilderBase *, const reco::SuperClusterRef &iCluster, float iPhi, TEveElement &oItemHolder)
FWGenericParameter< T > * assertParam(const std::string &name, T def)
void cleanLocal() override
virtual bool haveSingleProduct() const
TEveElementList * requestCommon()
FWElectronGlimpseProxyBuilder()
bool makeRhoPhiSuperCluster(FWProxyBuilderBase *, const reco::SuperClusterRef &iCluster, float iPhi, TEveElement &oItemHolder)
TEveTrack * prepareCandidate(const reco::Candidate &track, TEveTrackPropagator *propagator)
T value(const std::string &name)
double phi() const final
momentum azimuthal angle
SuperClusterRef superCluster() const override
reference to a SuperCluster
void setupElement(TEveElement *el, bool color=true) const