test
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)
override
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
using
FWSimpleProxyBuilderTemplate<reco::GenParticle>::build
;
36
void
build
(
const
reco::GenParticle
& iData,
unsigned
int
iIndex,TEveElement& oItemHolder,
const
FWViewContext
*)
override
;
37
};
38
39
//______________________________________________________________________________
40
41
42
void
43
FWGenParticleLegoProxyBuilder::build
(
const
reco::GenParticle
& iData,
unsigned
int
iIndex, TEveElement& oItemHolder,
const
FWViewContext
*)
44
{
45
long
markerStyle =
item
()->
getConfig
()->
value
<
long
>(
"MarkerStyle"
);
46
double
markerSize =
item
()->
getConfig
()->
value
<
double
>(
"MarkerSize"
);
47
48
49
// workaround around for TEvePointSet marker styles indices
50
if
(markerStyle == 0 )
51
markerStyle = 3;
52
else
if
(markerStyle == 1)
53
markerStyle = 4;
54
else
if
(markerStyle == 2)
55
markerStyle = 8;
56
std::cerr
<< std::endl;
57
58
// scale non-pixel size marker
59
if
(markerStyle == 3 )
60
markerSize /= 20;
61
62
TEvePointSet* ps =
new
TEvePointSet();
63
ps->SetMarkerStyle(markerStyle);
64
ps->SetMarkerSize(markerSize);
65
ps->SetNextPoint(iData.
eta
(), iData.
phi
(), 0.001);
66
setupAddElement
( ps, &oItemHolder );
67
68
}
69
70
REGISTER_FWPROXYBUILDER
(
FWGenParticleLegoProxyBuilder
,
reco::GenParticle
,
"GenParticles"
,
FWViewType::kLegoBit
);
71
FWSimpleProxyBuilderTemplate.h
FWEventItem::getConfig
FWProxyBuilderConfiguration * getConfig() const
Definition:
FWEventItem.h:165
REGISTER_PROXYBUILDER_METHODS
#define REGISTER_PROXYBUILDER_METHODS()
Definition:
register_dataproxybuilder_macro.h:28
REGISTER_FWPROXYBUILDER
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
Definition:
FWProxyBuilderFactory.h:33
FWGenParticleLegoProxyBuilder::setItem
virtual void setItem(const FWEventItem *iItem) override
Definition:
FWGenParticleLegoProxyBuilder.cc:17
FWProxyBuilderConfiguration.h
GenParticle.h
reco::LeafCandidate::phi
virtual float phi() const
momentum azimuthal angle
Definition:
LeafCandidate.h:180
FWGenParticleLegoProxyBuilder::~FWGenParticleLegoProxyBuilder
virtual ~FWGenParticleLegoProxyBuilder()
Definition:
FWGenParticleLegoProxyBuilder.cc:15
FWProxyBuilderBase::setupAddElement
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
Definition:
FWProxyBuilderBase.cc:429
FWViewType::kLegoBit
Definition:
FWViewType.h:46
FWViewContext
Definition:
FWViewContext.h:32
FWGenParticleLegoProxyBuilder::operator=
const FWGenParticleLegoProxyBuilder & operator=(const FWGenParticleLegoProxyBuilder &)
FWProxyBuilderBase::item
const FWEventItem * item() const
Definition:
FWProxyBuilderBase.h:67
FWGenParticleLegoProxyBuilder::FWGenParticleLegoProxyBuilder
FWGenParticleLegoProxyBuilder()
Definition:
FWGenParticleLegoProxyBuilder.cc:14
FWGenParticleLegoProxyBuilder
Definition:
FWGenParticleLegoProxyBuilder.cc:11
reco::LeafCandidate::eta
virtual float eta() const
momentum pseudorapidity
Definition:
LeafCandidate.h:184
FWProxyBuilderBase::setItem
virtual void setItem(const FWEventItem *iItem)
Definition:
FWProxyBuilderBase.cc:94
FWProxyBuilderBase::build
void build()
Definition:
FWProxyBuilderBase.cc:131
GenParticleFwd.h
FWProxyBuilderConfiguration::assertParam
FWGenericParameter< T > * assertParam(const std::string &name, T def)
Definition:
FWProxyBuilderConfiguration.cc:98
FWEventItem
Definition:
FWEventItem.h:56
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:20
FWProxyBuilderConfiguration::value
T value(const std::string &name)
Definition:
FWProxyBuilderConfiguration.cc:125
FWSimpleProxyBuilderTemplate
Definition:
FWSimpleProxyBuilderTemplate.h:29
Generated for CMSSW Reference Manual by
1.8.5