#include <Py8toJetInput.h>
Definition at line 13 of file Py8toJetInput.h.
Py8toJetInput::Py8toJetInput |
( |
| ) |
|
|
inline |
Py8toJetInput::~Py8toJetInput |
( |
| ) |
|
|
inline |
const std::vector< fastjet::PseudoJet > Py8toJetInput::fillJetAlgoInput |
( |
const Event & |
event, |
|
|
const Event & |
workEvent, |
|
|
const lhef::LHEEvent * |
lhee = 0 , |
|
|
const std::vector< int > * |
partonList = 0 |
|
) |
| |
|
virtual |
Reimplemented in Py8toJetInputHEPEVT.
Definition at line 8 of file Py8toJetInput.cc.
References end, eta(), spr::find(), fJetEtaMax, fJetInput, lhef::LHEEvent::getHEPEUP(), i, ID_PHOTON, ID_TOP, customizeTrackingMonitorSeedNumber::idx, j, lhef::HEPEUP::MOTHUP, edm::shift, and ntuplemaker::status.
Referenced by JetMatchingHook::doVetoPartonLevel().
15 Event workEventJet = workEvent;
19 std::set< int > typeSet[3];
25 for (
size_t i=0;
i<3;
i++ )
28 for (
size_t j=0;
j<typeIdx[
i].size();
j++ )
37 int pos = typeIdx[
i][
j];
40 for (
int ip=2; ip<pos; ip++ )
46 if ( hepeup.
MOTHUP[ip].first == hepeup.
MOTHUP[ip].second )
53 typeSet[
i].insert( pos );
66 for (
int i = 0;
i < workEventJet.size(); ++
i)
69 if (!workEventJet[
i].isFinal())
continue;
77 int id = workEventJet[
i].idAbs();
80 workEventJet[
i].statusNeg();
86 int idx = workEventJet[
i].daughter1();
97 if (typeSet[1].
find(idx) != typeSet[1].
end() ||
98 typeSet[2].
find(idx) != typeSet[2].
end())
100 workEventJet[
i].statusNeg();
110 idx =
event[
idx].mother1();
118 if (typeSet[1].
find(idx) != typeSet[1].
end())
break;
124 workEventJet[
i].statusNeg();
129 idx =
event[
idx].mother1();
162 for (
int i=0;
i<workEventJet.size();
i++ )
167 if ( workEventJet[
i].
status() < 0 )
continue;
179 fastjet::PseudoJet partTmp = workEventJet[
i];
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
const HEPEUP * getHEPEUP() const
std::vector< std::pair< int, int > > MOTHUP
tuple idx
DEBUGGING if hasattr(process,"trackMonIterativeTracking2012"): print "trackMonIterativeTracking2012 D...
static unsigned int const shift
int Py8toJetInput::getAncestor |
( |
int |
pos, |
|
|
const Event & |
fullEvent, |
|
|
const Event & |
workEvent |
|
) |
| |
|
protected |
Definition at line 188 of file Py8toJetInput.cc.
References funct::abs(), counter, and ntuplemaker::status.
Referenced by Py8toJetInputHEPEVT::fillJetAlgoInput().
191 int parentId = fullEvent[pos].mother1();
192 int parentPrevId = 0;
195 while ( parentId > 0 )
197 if ( parentId == fullEvent[counter].mother2() )
199 parentPrevId = parentId;
201 parentId = fullEvent[parentPrevId].mother1();
209 if ( (parentId < parentPrevId) || parentId < fullEvent[counter].mother2() )
213 if (
abs(fullEvent[counter].
status()) == 22 ||
abs(fullEvent[counter].
status()) == 23 )
222 parentPrevId = parentId;
223 parentId = fullEvent[parentPrevId].mother1();
226 else if ( parentId > parentPrevId || parentId > pos )
234 if (
abs(fullEvent[parentId].
status()) == 22 ||
abs(fullEvent[parentId].
status())== 23 )
238 if (
abs(fullEvent[parentId].
status()) < 22 )
Abs< T >::type abs(const T &t)
static std::atomic< unsigned int > counter
void Py8toJetInput::setJetEtaMax |
( |
double |
max | ) |
|
|
inline |
double Py8toJetInput::fJetEtaMax |
|
protected |
std::vector<fastjet::PseudoJet> Py8toJetInput::fJetInput |
|
protected |