CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
FWTrackingParticleProxyBuilder.cc
Go to the documentation of this file.
1 /*
2  * FWTrackingParticleProxyBuilder.cc
3  * FWorks
4  *
5  * Created by Ianna Osborne on 9/9/10.
6  *
7  */
8 
14 
17 
18 #include "TEveTrack.h"
19 
21 public:
24 
25  void setItem(const FWEventItem* iItem) override {
27  iItem->getConfig()->assertParam("Point Size", 1l, 3l, 1l);
28  }
29 
31 
32  // Disable default copy constructor
34  // Disable default assignment operator
36 
37 private:
39  void build(const TrackingParticle& iData,
40  unsigned int iIndex,
41  TEveElement& oItemHolder,
42  const FWViewContext*) override;
43 };
44 
46  unsigned int iIndex,
47  TEveElement& oItemHolder,
48  const FWViewContext*) {
49  TEveRecTrack t;
50  t.fBeta = 1.0;
51  t.fP = TEveVector(iData.px(), iData.py(), iData.pz());
52  t.fV = TEveVector(iData.vx(), iData.vy(), iData.vz());
53  t.fSign = iData.charge();
54 
55  TEveTrack* track = new TEveTrack(&t, context().getTrackPropagator());
56  if (t.fSign == 0)
57  track->SetLineStyle(7);
58 
59  track->MakeTrack();
60  setupAddElement(track, &oItemHolder);
61 }
62 
65  "TrackingParticles",
const fireworks::Context & context() const
FWProxyBuilderConfiguration * getConfig() const
Definition: FWEventItem.h:150
#define REGISTER_PROXYBUILDER_METHODS()
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
static const int kAllRPZBits
Definition: FWViewType.h:67
const FWTrackingParticleProxyBuilder & operator=(const FWTrackingParticleProxyBuilder &)=delete
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
void setItem(const FWEventItem *iItem) override
double py() const
y coordinate of momentum vector. Note this is taken from the first SimTrack only. ...
static const int kAll3DBits
Definition: FWViewType.h:68
double pz() const
z coordinate of momentum vector. Note this is taken from the first SimTrack only. ...
float charge() const
Electric charge. Note this is taken from the first SimTrack only.
double vy() const
y coordinate of parent vertex position
virtual void setItem(const FWEventItem *iItem)
FWGenericParameter< T > * assertParam(const std::string &name, T def)
double vx() const
x coordinate of parent vertex position
Monte Carlo truth information used for tracking validation.
double px() const
x coordinate of momentum vector. Note this is taken from the first SimTrack only. ...
double vz() const
z coordinate of parent vertex position