PhysicsTools
HepMCCandAlgos
src
pdgEntryReplace.cc
Go to the documentation of this file.
1
#include "
PhysicsTools/HepMCCandAlgos/interface/pdgEntryReplace.h
"
2
#include "
SimGeneral/HepPDTRecord/interface/PdtEntry.h
"
3
#include <sstream>
4
using namespace
std
;
5
6
string
pdgEntryReplace
(
const
string
&
in
,
HepPDT::ParticleDataTable
const
& pdt) {
7
string
out
=
in
;
8
for
(;;) {
9
size_t
p1
=
out
.find_first_of(
'{'
);
10
if
(
p1
== string::npos)
11
break
;
12
size_t
p2
=
out
.find_first_of(
'}'
,
p1
+ 1);
13
if
(
p2
== string::npos)
14
break
;
15
size_t
n
=
p2
-
p1
- 1;
16
string
name
(
out
,
p1
+ 1,
n
);
17
PdtEntry
particle(
name
);
18
particle.
setup
(pdt);
19
ostringstream
o
;
20
o
<< particle.
pdgId
();
21
string
s
=
o
.str();
22
out
.replace(
p1
,
n
+ 2,
s
);
23
}
24
return
out
;
25
}
dqmiodumpmetadata.n
n
Definition:
dqmiodumpmetadata.py:28
PdtEntry::pdgId
int pdgId() const
PDG id.
Definition:
PdtEntry.cc:5
EcalTangentSkim_cfg.o
o
Definition:
EcalTangentSkim_cfg.py:42
pdgEntryReplace
string pdgEntryReplace(const string &in, HepPDT::ParticleDataTable const &pdt)
Definition:
pdgEntryReplace.cc:6
alignCSCRings.s
s
Definition:
alignCSCRings.py:92
p2
double p2[4]
Definition:
TauolaWrapper.h:90
pdgEntryReplace.h
PdtEntry::setup
void setup(const HepPDT::ParticleDataTable &)
fill data from Event Setup
Definition:
PdtEntry.cc:26
recoMuon::in
Definition:
RecoMuonEnumerators.h:6
PdtEntry.h
p1
double p1[4]
Definition:
TauolaWrapper.h:89
std
Definition:
JetResolutionObject.h:76
Skims_PA_cff.name
name
Definition:
Skims_PA_cff.py:17
PdtEntry
Definition:
PdtEntry.h:20
MillePedeFileConverter_cfg.out
out
Definition:
MillePedeFileConverter_cfg.py:31
ParticleDataTable
HepPDT::ParticleDataTable ParticleDataTable
Definition:
ParticleDataTable.h:8
Generated for CMSSW Reference Manual by
1.8.16