CMS 3D CMS Logo

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",
double pz() const
z coordinate of momentum vector. Note this is taken from the first SimTrack only. ...
#define REGISTER_PROXYBUILDER_METHODS()
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
static const int kAllRPZBits
Definition: FWViewType.h:57
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
double vx() const
x coordinate of parent vertex position
FWProxyBuilderConfiguration * getConfig() const
Definition: FWEventItem.h:150
const FWTrackingParticleProxyBuilder & operator=(const FWTrackingParticleProxyBuilder &)=delete
void setItem(const FWEventItem *iItem) override
static const int kAll3DBits
Definition: FWViewType.h:58
const fireworks::Context & context() const
virtual void setItem(const FWEventItem *iItem)
FWGenericParameter< T > * assertParam(const std::string &name, T def)
double vy() const
y coordinate of parent vertex position
double px() const
x coordinate of momentum vector. Note this is taken from the first SimTrack only. ...
double py() const
y coordinate of momentum vector. Note this is taken from the first SimTrack only. ...
Monte Carlo truth information used for tracking validation.
float charge() const
Electric charge. Note this is taken from the first SimTrack only.
double vz() const
z coordinate of parent vertex position