Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
Fireworks
GenParticle
plugins
FWGenParticleLegoProxyBuilder.cc
Go to the documentation of this file.
1
#include "TEvePointSet.h"
2
3
#include "
Fireworks/Core/interface/FWEventItem.h
"
4
#include "
Fireworks/Core/interface/FWSimpleProxyBuilderTemplate.h
"
5
#include "
Fireworks/Core/interface/FWProxyBuilderConfiguration.h
"
6
#include "
Fireworks/Candidates/interface/CandidateUtils.h
"
7
8
#include "
DataFormats/HepMCCandidate/interface/GenParticle.h
"
9
#include "
DataFormats/HepMCCandidate/interface/GenParticleFwd.h
"
10
11
class
FWGenParticleLegoProxyBuilder
:
public
FWSimpleProxyBuilderTemplate
<reco::GenParticle> {
12
13
public
:
14
FWGenParticleLegoProxyBuilder
() {}
15
virtual
~FWGenParticleLegoProxyBuilder
() {}
16
17
virtual
void
setItem
(
const
FWEventItem
* iItem)
18
{
19
FWProxyBuilderBase::setItem
(iItem);
20
if
(iItem)
21
{
22
iItem->
getConfig
()->
assertParam
(
"MarkerStyle"
, 0
l
, -1
l
, 3
l
);
23
iItem->
getConfig
()->
assertParam
(
"MarkerSize"
,2., 0.1, 10.);
24
}
25
}
26
27
// ---------- member functions ---------------------------
28
REGISTER_PROXYBUILDER_METHODS
();
29
30
private
:
31
FWGenParticleLegoProxyBuilder
(
const
FWGenParticleLegoProxyBuilder
&);
// stop default
32
33
const
FWGenParticleLegoProxyBuilder
&
operator=
(
const
FWGenParticleLegoProxyBuilder
&);
// stop default
34
35
void
build
(
const
reco::GenParticle
& iData,
unsigned
int
iIndex,TEveElement& oItemHolder,
const
FWViewContext
*);
36
};
37
38
//______________________________________________________________________________
39
40
41
void
42
FWGenParticleLegoProxyBuilder::build
(
const
reco::GenParticle
& iData,
unsigned
int
iIndex, TEveElement& oItemHolder,
const
FWViewContext
*)
43
{
44
long
markerStyle =
item
()->
getConfig
()->
value
<
long
>(
"MarkerStyle"
);
45
double
markerSize =
item
()->
getConfig
()->
value
<
double
>(
"MarkerSize"
);
46
47
48
// workaround around for TEvePointSet marker styles indices
49
if
(markerStyle == 0 )
50
markerStyle = 3;
51
else
if
(markerStyle == 1)
52
markerStyle = 4;
53
else
if
(markerStyle == 2)
54
markerStyle = 8;
55
std::cerr
<< std::endl;
56
57
// scale non-pixel size marker
58
if
(markerStyle == 3 )
59
markerSize /= 20;
60
61
TEvePointSet* ps =
new
TEvePointSet();
62
ps->SetMarkerStyle(markerStyle);
63
ps->SetMarkerSize(markerSize);
64
ps->SetNextPoint(iData.
eta
(), iData.
phi
(), 0.001);
65
setupAddElement
( ps, &oItemHolder );
66
67
}
68
69
REGISTER_FWPROXYBUILDER
(
FWGenParticleLegoProxyBuilder
,
reco::GenParticle
,
"GenParticles"
,
FWViewType::kLegoBit
);
70
FWSimpleProxyBuilderTemplate.h
FWEventItem::getConfig
FWProxyBuilderConfiguration * getConfig() const
Definition:
FWEventItem.h:166
REGISTER_PROXYBUILDER_METHODS
#define REGISTER_PROXYBUILDER_METHODS()
Definition:
register_dataproxybuilder_macro.h:29
REGISTER_FWPROXYBUILDER
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
Definition:
FWProxyBuilderFactory.h:34
FWProxyBuilderConfiguration.h
GenParticle.h
FWGenParticleLegoProxyBuilder::~FWGenParticleLegoProxyBuilder
virtual ~FWGenParticleLegoProxyBuilder()
Definition:
FWGenParticleLegoProxyBuilder.cc:15
FWProxyBuilderBase::setupAddElement
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
Definition:
FWProxyBuilderBase.cc:430
FWViewType::kLegoBit
Definition:
FWViewType.h:47
FWViewContext
Definition:
FWViewContext.h:33
reco::LeafCandidate::eta
virtual double eta() const
momentum pseudorapidity
Definition:
LeafCandidate.h:143
FWGenParticleLegoProxyBuilder::operator=
const FWGenParticleLegoProxyBuilder & operator=(const FWGenParticleLegoProxyBuilder &)
FWProxyBuilderBase::item
const FWEventItem * item() const
Definition:
FWProxyBuilderBase.h:68
FWGenParticleLegoProxyBuilder::FWGenParticleLegoProxyBuilder
FWGenParticleLegoProxyBuilder()
Definition:
FWGenParticleLegoProxyBuilder.cc:14
FWGenParticleLegoProxyBuilder
Definition:
FWGenParticleLegoProxyBuilder.cc:11
FWProxyBuilderBase::setItem
virtual void setItem(const FWEventItem *iItem)
Definition:
FWProxyBuilderBase.cc:95
FWGenParticleLegoProxyBuilder::setItem
virtual void setItem(const FWEventItem *iItem)
Definition:
FWGenParticleLegoProxyBuilder.cc:17
FWProxyBuilderBase::build
void build()
Definition:
FWProxyBuilderBase.cc:132
GenParticleFwd.h
FWProxyBuilderConfiguration::assertParam
FWGenericParameter< T > * assertParam(const std::string &name, T def)
Definition:
FWProxyBuilderConfiguration.cc:99
FWEventItem
Definition:
FWEventItem.h:57
FWEventItem.h
CandidateUtils.h
prof2calltree.l
tuple l
Definition:
prof2calltree.py:116
dtNoiseDBValidation_cfg.cerr
tuple cerr
Definition:
dtNoiseDBValidation_cfg.py:22
reco::GenParticle
Definition:
GenParticle.h:21
FWProxyBuilderConfiguration::value
T value(const std::string &name)
Definition:
FWProxyBuilderConfiguration.cc:126
reco::LeafCandidate::phi
virtual double phi() const
momentum azimuthal angle
Definition:
LeafCandidate.h:139
FWSimpleProxyBuilderTemplate
Definition:
FWSimpleProxyBuilderTemplate.h:30
Generated for CMSSW Reference Manual by
1.8.5