All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
TJjetsPFOAnalysisProcessor Class Reference

#include <TJjetsPFOAnalysisProcessor.h>

Inheritance diagram for TJjetsPFOAnalysisProcessor:
[legend]

Public Member Functions

virtual ProcessornewProcessor ()
 
 TJjetsPFOAnalysisProcessor ()
 
 TJjetsPFOAnalysisProcessor (const TJjetsPFOAnalysisProcessor &)=delete
 
TJjetsPFOAnalysisProcessoroperator= (const TJjetsPFOAnalysisProcessor &)=delete
 
void init ()
 Called at the begin of the job before anything is read. More...
 
void processRunHeader (LCRunHeader *run)
 Called for every run. More...
 
void processEvent (LCEvent *event)
 Called for every event - the working horse. More...
 
std::string get_recoMCTruthLink ()
 For TrueJet_Parser -> see its documentation. More...
 
void check (LCEvent *event)
 
void end ()
 Called after data processing for clean up. More...
 

Protected Types

typedef std::pair
< MCParticleVec,
ReconstructedParticleVec > 
JetContentPair
 Definitions using typedef. More...
 
typedef std::vector
< JetContentPair * > 
JetVec
 
typedef std::vector< const
ReconstructedParticle * > 
ParticleVector
 
typedef std::vector< const
MCParticle * > 
MCParticleVector
 
typedef std::set
< EVENT::MCParticle * > 
MCParticleList
 
typedef std::set
< EVENT::MCParticle * > 
MCParticleSet
 
typedef std::vector< std::string > StringVector
 
typedef std::vector
< LCRelationNavigator * > 
LCRelationNavigatorVec
 
typedef std::vector< float > FloatVector
 
typedef std::vector< int > IntVector
 

Protected Member Functions

template<class Object >
bool areDisjointVectors (const std::vector< Object > &v1, const std::vector< Object > &v2) const
 
template<class Object >
std::vector< Object > turnVectorOfConstToVector (const std::vector< const Object > &v) const
 
void makeNTuple ()
 
void findTrueJetParticles (LCEvent *event)
 
bool hasSomeParentsInMCList (EVENT::MCParticle *pMCParticle, MCParticleList &mcs) const
 
void Clear ()
 PFOAnalysis stuff. More...
 
void ExtractCollections (JetContentPair *jet_content)
 Extract lcio collections. More...
 
void ApplyPfoSelectionRules (EVENT::MCParticle *pMCParticle, MCParticleList &mcPfoCandidates) const
 Apply pfo selection rules, starting with root particles. More...
 
void MakeQuarkVariables (JetContentPair *jet_content)
 Make quark variables. More...
 
void PerformPfoAnalysis ()
 Perform pfo analysis. More...
 

Static Protected Member Functions

static bool SortPfoTargetsByEnergy (const EVENT::MCParticle *const pLhs, const EVENT::MCParticle *const pRhs)
 Sort mc pfo targets by decreasing energy. More...
 

Protected Attributes

JetVec m_jets {}
 
std::string _colAllPFOs {}
 Input collection name. More...
 
std::string _colMC {}
 
std::string _recoMCTruthLink {}
 
TFile * _otfile {}
 Output File specifics. More...
 
TTree * _datatrain {}
 
std::string _rootfilename {}
 
int m_nRun {}
 
int m_nEvt {}
 
int m_nJet {}
 
int m_jetInitElPDG {}
 
int m_jetFinElPDG {}
 
int m_nRunSum {}
 
int m_nEvtSum {}
 
std::string m_inputPfoCollection {}
 
std::string m_mcParticleCollection {}
 
int m_printing {}
 
std::string m_rootFile {}
 
int m_lookForQuarksWithMotherZ {}
 
float m_mcPfoSelectionRadius {}
 
float m_mcPfoSelectionMomentum {}
 
float m_mcPfoSelectionLowEnergyNPCutOff {}
 
ParticleVector m_pfoVector {}
 
MCParticleVector m_pfoTargetVector {}
 
int m_nPfosTotal {}
 
int m_nPfosNeutralHadrons {}
 
int m_nPfosPhotons {}
 
int m_nPfosTracks {}
 
float m_pfoEnergyTotal {}
 
float m_pfoEnergyNeutralHadrons {}
 
float m_pfoEnergyPhotons {}
 
float m_pfoEnergyTracks {}
 
float m_pfoECalToEmEnergy {}
 
float m_pfoECalToHadEnergy {}
 
float m_pfoHCalToEmEnergy {}
 
float m_pfoHCalToHadEnergy {}
 
float m_pfoMuonToEnergy {}
 
float m_pfoOtherEnergy {}
 
float m_pfoMassTotal {}
 
FloatVector m_pfoEnergies {}
 
FloatVector m_pfoPx {}
 
FloatVector m_pfoPy {}
 
FloatVector m_pfoPz {}
 
FloatVector m_pfoCosTheta {}
 
FloatVector m_pfoTargetEnergies {}
 
FloatVector m_pfoTargetPx {}
 
FloatVector m_pfoTargetPy {}
 
FloatVector m_pfoTargetPz {}
 
FloatVector m_pfoTargetCosTheta {}
 
IntVector m_pfoPdgCodes {}
 
IntVector m_pfoTargetPdgCodes {}
 
int m_nPfoTargetsTotal {}
 
int m_nPfoTargetsNeutralHadrons {}
 
int m_nPfoTargetsPhotons {}
 
int m_nPfoTargetsTracks {}
 
float m_pfoTargetsEnergyTotal {}
 
float m_pfoTargetsEnergyNeutralHadrons {}
 
float m_pfoTargetsEnergyPhotons {}
 
float m_pfoTargetsEnergyTracks {}
 
float m_mcEnergyENu {}
 
float m_mcEnergyFwd {}
 
float m_eQQ {}
 
float m_eQ1 {}
 
float m_eQ2 {}
 
float m_costQQ {}
 
float m_costQ1 {}
 
float m_costQ2 {}
 
float m_mQQ {}
 
float m_thrust {}
 
int m_qPdg {}
 
TFile * m_pTFile {}
 
TTree * m_pTTree {}
 
TH1F * m_hPfoEnergySum {}
 
TH1F * m_hPfoEnergySumL7A {}
 

Detailed Description

Definition at line 14 of file TJjetsPFOAnalysisProcessor.h.

Member Typedef Documentation

typedef std::vector<float> TJjetsPFOAnalysisProcessor::FloatVector
protected

Definition at line 168 of file TJjetsPFOAnalysisProcessor.h.

typedef std::vector<int> TJjetsPFOAnalysisProcessor::IntVector
protected

Definition at line 181 of file TJjetsPFOAnalysisProcessor.h.

typedef std::pair< MCParticleVec, ReconstructedParticleVec > TJjetsPFOAnalysisProcessor::JetContentPair
protected

Definitions using typedef.

Definition at line 51 of file TJjetsPFOAnalysisProcessor.h.

typedef std::vector< JetContentPair* > TJjetsPFOAnalysisProcessor::JetVec
protected

Definition at line 52 of file TJjetsPFOAnalysisProcessor.h.

typedef std::vector<LCRelationNavigator*> TJjetsPFOAnalysisProcessor::LCRelationNavigatorVec
protected

Definition at line 58 of file TJjetsPFOAnalysisProcessor.h.

typedef std::set<EVENT::MCParticle*> TJjetsPFOAnalysisProcessor::MCParticleList
protected

Definition at line 55 of file TJjetsPFOAnalysisProcessor.h.

typedef std::set<EVENT::MCParticle*> TJjetsPFOAnalysisProcessor::MCParticleSet
protected

Definition at line 56 of file TJjetsPFOAnalysisProcessor.h.

typedef std::vector<const MCParticle*> TJjetsPFOAnalysisProcessor::MCParticleVector
protected

Definition at line 54 of file TJjetsPFOAnalysisProcessor.h.

typedef std::vector<const ReconstructedParticle *> TJjetsPFOAnalysisProcessor::ParticleVector
protected

Definition at line 53 of file TJjetsPFOAnalysisProcessor.h.

typedef std::vector<std::string> TJjetsPFOAnalysisProcessor::StringVector
protected

Definition at line 57 of file TJjetsPFOAnalysisProcessor.h.

Constructor & Destructor Documentation

TJjetsPFOAnalysisProcessor::TJjetsPFOAnalysisProcessor ( )

Definition at line 6 of file TJjetsPFOAnalysisProcessor.cpp.

TJjetsPFOAnalysisProcessor::TJjetsPFOAnalysisProcessor ( const TJjetsPFOAnalysisProcessor )
delete

Member Function Documentation

void TJjetsPFOAnalysisProcessor::ApplyPfoSelectionRules ( EVENT::MCParticle *  pMCParticle,
MCParticleList mcPfoCandidates 
) const
protected

Apply pfo selection rules, starting with root particles.

Parameters
pMCParticlethe address of a mc particle (initially call this recursive function with a top-level, root particle)
mcPfoCandidatesto collect the list of mc pfo candidates

Definition at line 155 of file CustomPFOAnalysis.cpp.

template<class Object >
bool TJjetsPFOAnalysisProcessor::areDisjointVectors ( const std::vector< Object > &  v1,
const std::vector< Object > &  v2 
) const
protected

Definition at line 5 of file VectorHelper.h.

void TJjetsPFOAnalysisProcessor::check ( LCEvent *  event)

Definition at line 316 of file TJjetsPFOAnalysisProcessor.cpp.

void TJjetsPFOAnalysisProcessor::Clear ( )
protected

PFOAnalysis stuff.

Definition at line 3 of file CustomPFOAnalysis.cpp.

void TJjetsPFOAnalysisProcessor::end ( )

Called after data processing for clean up.

Definition at line 321 of file TJjetsPFOAnalysisProcessor.cpp.

void TJjetsPFOAnalysisProcessor::ExtractCollections ( JetContentPair jet_content)
protected

Extract lcio collections.

Parameters
eventthe lc event

Definition at line 66 of file CustomPFOAnalysis.cpp.

void TJjetsPFOAnalysisProcessor::findTrueJetParticles ( LCEvent *  event)
protected

Definition at line 3 of file FindTrueJetParticles.cpp.

std::string TJjetsPFOAnalysisProcessor::get_recoMCTruthLink ( )
inline

For TrueJet_Parser -> see its documentation.

Definition at line 39 of file TJjetsPFOAnalysisProcessor.h.

bool TJjetsPFOAnalysisProcessor::hasSomeParentsInMCList ( EVENT::MCParticle *  pMCParticle,
MCParticleList mcs 
) const
protected

Definition at line 133 of file CustomPFOAnalysis.cpp.

void TJjetsPFOAnalysisProcessor::init ( )

Called at the begin of the job before anything is read.

Use to initialize the processor, e.g. book histograms.

Definition at line 178 of file TJjetsPFOAnalysisProcessor.cpp.

void TJjetsPFOAnalysisProcessor::makeNTuple ( )
protected

Definition at line 195 of file TJjetsPFOAnalysisProcessor.cpp.

void TJjetsPFOAnalysisProcessor::MakeQuarkVariables ( JetContentPair jet_content)
protected

Make quark variables.

Parameters
eventthe lc event

Definition at line 180 of file CustomPFOAnalysis.cpp.

virtual Processor* TJjetsPFOAnalysisProcessor::newProcessor ( )
inlinevirtual

Definition at line 16 of file TJjetsPFOAnalysisProcessor.h.

TJjetsPFOAnalysisProcessor& TJjetsPFOAnalysisProcessor::operator= ( const TJjetsPFOAnalysisProcessor )
delete
void TJjetsPFOAnalysisProcessor::PerformPfoAnalysis ( )
protected

Perform pfo analysis.

Definition at line 299 of file CustomPFOAnalysis.cpp.

void TJjetsPFOAnalysisProcessor::processEvent ( LCEvent *  event)

Called for every event - the working horse.

Definition at line 270 of file TJjetsPFOAnalysisProcessor.cpp.

void TJjetsPFOAnalysisProcessor::processRunHeader ( LCRunHeader *  run)

Called for every run.

Definition at line 260 of file TJjetsPFOAnalysisProcessor.cpp.

bool TJjetsPFOAnalysisProcessor::SortPfoTargetsByEnergy ( const EVENT::MCParticle *const  pLhs,
const EVENT::MCParticle *const  pRhs 
)
staticprotected

Sort mc pfo targets by decreasing energy.

Parameters
pLhsthe address of the first mc pfo target
pRhsthe address of the second mc pfo target

Definition at line 491 of file CustomPFOAnalysis.cpp.

template<class Object >
std::vector<Object> TJjetsPFOAnalysisProcessor::turnVectorOfConstToVector ( const std::vector< const Object > &  v) const
protected

Member Data Documentation

std::string TJjetsPFOAnalysisProcessor::_colAllPFOs {}
protected

Input collection name.

Definition at line 64 of file TJjetsPFOAnalysisProcessor.h.

std::string TJjetsPFOAnalysisProcessor::_colMC {}
protected

Definition at line 65 of file TJjetsPFOAnalysisProcessor.h.

TTree* TJjetsPFOAnalysisProcessor::_datatrain {}
protected

Definition at line 74 of file TJjetsPFOAnalysisProcessor.h.

TFile* TJjetsPFOAnalysisProcessor::_otfile {}
protected

Output File specifics.

Definition at line 73 of file TJjetsPFOAnalysisProcessor.h.

std::string TJjetsPFOAnalysisProcessor::_recoMCTruthLink {}
protected

Definition at line 68 of file TJjetsPFOAnalysisProcessor.h.

std::string TJjetsPFOAnalysisProcessor::_rootfilename {}
protected

Definition at line 77 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_costQ1 {}
protected

Definition at line 201 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_costQ2 {}
protected

Definition at line 202 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_costQQ {}
protected

Definition at line 200 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_eQ1 {}
protected

Definition at line 198 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_eQ2 {}
protected

Definition at line 199 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_eQQ {}
protected

Definition at line 197 of file TJjetsPFOAnalysisProcessor.h.

TH1F* TJjetsPFOAnalysisProcessor::m_hPfoEnergySum {}
protected

Definition at line 209 of file TJjetsPFOAnalysisProcessor.h.

TH1F* TJjetsPFOAnalysisProcessor::m_hPfoEnergySumL7A {}
protected

Definition at line 210 of file TJjetsPFOAnalysisProcessor.h.

std::string TJjetsPFOAnalysisProcessor::m_inputPfoCollection {}
protected

Definition at line 135 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_jetFinElPDG {}
protected

Definition at line 130 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_jetInitElPDG {}
protected

Definition at line 129 of file TJjetsPFOAnalysisProcessor.h.

JetVec TJjetsPFOAnalysisProcessor::m_jets {}
protected

Definition at line 60 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_lookForQuarksWithMotherZ {}
protected

Definition at line 141 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_mcEnergyENu {}
protected

Definition at line 195 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_mcEnergyFwd {}
protected

Definition at line 196 of file TJjetsPFOAnalysisProcessor.h.

std::string TJjetsPFOAnalysisProcessor::m_mcParticleCollection {}
protected

Definition at line 136 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_mcPfoSelectionLowEnergyNPCutOff {}
protected

Definition at line 145 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_mcPfoSelectionMomentum {}
protected

Definition at line 144 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_mcPfoSelectionRadius {}
protected

Definition at line 143 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_mQQ {}
protected

Definition at line 203 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nEvt {}
protected

Definition at line 126 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nEvtSum {}
protected

Definition at line 133 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nJet {}
protected

Definition at line 127 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfosNeutralHadrons {}
protected

Definition at line 151 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfosPhotons {}
protected

Definition at line 152 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfosTotal {}
protected

Definition at line 150 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfosTracks {}
protected

Definition at line 153 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfoTargetsNeutralHadrons {}
protected

Definition at line 186 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfoTargetsPhotons {}
protected

Definition at line 187 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfoTargetsTotal {}
protected

Definition at line 185 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nPfoTargetsTracks {}
protected

Definition at line 188 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nRun {}
protected

Definition at line 125 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_nRunSum {}
protected

Definition at line 132 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoCosTheta {}
protected

Definition at line 173 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoECalToEmEnergy {}
protected

Definition at line 159 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoECalToHadEnergy {}
protected

Definition at line 160 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoEnergies {}
protected

Definition at line 169 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoEnergyNeutralHadrons {}
protected

Definition at line 155 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoEnergyPhotons {}
protected

Definition at line 156 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoEnergyTotal {}
protected

Definition at line 154 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoEnergyTracks {}
protected

Definition at line 158 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoHCalToEmEnergy {}
protected

Definition at line 161 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoHCalToHadEnergy {}
protected

Definition at line 162 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoMassTotal {}
protected

Definition at line 166 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoMuonToEnergy {}
protected

Definition at line 163 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoOtherEnergy {}
protected

Definition at line 164 of file TJjetsPFOAnalysisProcessor.h.

IntVector TJjetsPFOAnalysisProcessor::m_pfoPdgCodes {}
protected

Definition at line 182 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoPx {}
protected

Definition at line 170 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoPy {}
protected

Definition at line 171 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoPz {}
protected

Definition at line 172 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoTargetCosTheta {}
protected

Definition at line 179 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoTargetEnergies {}
protected

Definition at line 175 of file TJjetsPFOAnalysisProcessor.h.

IntVector TJjetsPFOAnalysisProcessor::m_pfoTargetPdgCodes {}
protected

Definition at line 183 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoTargetPx {}
protected

Definition at line 176 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoTargetPy {}
protected

Definition at line 177 of file TJjetsPFOAnalysisProcessor.h.

FloatVector TJjetsPFOAnalysisProcessor::m_pfoTargetPz {}
protected

Definition at line 178 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoTargetsEnergyNeutralHadrons {}
protected

Definition at line 191 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoTargetsEnergyPhotons {}
protected

Definition at line 192 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoTargetsEnergyTotal {}
protected

Definition at line 190 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_pfoTargetsEnergyTracks {}
protected

Definition at line 193 of file TJjetsPFOAnalysisProcessor.h.

MCParticleVector TJjetsPFOAnalysisProcessor::m_pfoTargetVector {}
protected

Definition at line 148 of file TJjetsPFOAnalysisProcessor.h.

ParticleVector TJjetsPFOAnalysisProcessor::m_pfoVector {}
protected

Definition at line 147 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_printing {}
protected

Definition at line 138 of file TJjetsPFOAnalysisProcessor.h.

TFile* TJjetsPFOAnalysisProcessor::m_pTFile {}
protected

Definition at line 207 of file TJjetsPFOAnalysisProcessor.h.

TTree* TJjetsPFOAnalysisProcessor::m_pTTree {}
protected

Definition at line 208 of file TJjetsPFOAnalysisProcessor.h.

int TJjetsPFOAnalysisProcessor::m_qPdg {}
protected

Definition at line 205 of file TJjetsPFOAnalysisProcessor.h.

std::string TJjetsPFOAnalysisProcessor::m_rootFile {}
protected

Definition at line 139 of file TJjetsPFOAnalysisProcessor.h.

float TJjetsPFOAnalysisProcessor::m_thrust {}
protected

Definition at line 204 of file TJjetsPFOAnalysisProcessor.h.


The documentation for this class was generated from the following files: