Class HelpTreeBase¶
Defined in File HelpTreeBase.h
Class Documentation¶
-
class
HelpTreeBase Public Functions
-
HelpTreeBase(xAOD::TEvent *event, TTree *tree, TFile *file, const float units = 1e3, bool debug = false, xAOD::TStore *store = nullptr, std::string nominalTreeName = "nominal")
-
HelpTreeBase(TTree *tree, TFile *file, xAOD::TEvent *event = nullptr, xAOD::TStore *store = nullptr, const float units = 1e3, bool debug = false, std::string nominalTreeName = "nominal")
-
~HelpTreeBase()
-
void
AddEvent(const std::string &detailStr = "")
-
void
AddTrigger(const std::string &detailStr = "")
-
void
AddJetTrigger(const std::string &detailStr = "")
-
void
AddMuons(const std::string &detailStr = "", const std::string &muonName = "muon")
-
void
AddElectrons(const std::string &detailStr = "", const std::string &elecName = "el")
-
void
AddPhotons(const std::string &detailStr = "", const std::string &photonName = "ph")
-
void
AddClusters(const std::string &detailStr = "", const std::string &clusterName = "cl")
-
void
AddJets(const std::string &detailStr = "", const std::string &jetName = "jet")
-
void
AddL1Jets(const std::string &jetName = "")
-
void
AddTruthParts(const std::string &detailStr = "", const std::string &truthName = "xAH_truth")
-
void
AddTrackParts(const std::string &detailStr = "", const std::string &trackName = "trk")
-
void
AddVertices(const std::string &detailStr = "", const std::string &vertexName = "vertex")
-
void
AddTruthVertices(const std::string &detailStr = "", const std::string &vertexName = "truth_vertex")
-
void
AddFatJets(const std::string &detailStr = "", const std::string &fatjetName = "fatjet", const std::string &subjetDetailStr = "", const std::string &suffix = "") Declare a new collection of fatjets to be written to the output tree.
- Parameters
detailStr: A (space-separated) list of detail options. These keywords specify exactly which information about each jet is written out. Current influential options are:kinematicsubstructureconstituentconstituentAllfatjetName: The (prefix) name of the container. Default:fatjet.subjetDetailStr: List of detail options to pass to the subjet container. See :cpp:member:HelpTreeBase::AddJetsfor list of supported values.
-
void
AddTruthFatJets(const std::string &detailStr = "", const std::string &truthFatJetName = "truth_fatjet")
-
void
AddTaus(const std::string &detailStr = "", const std::string &tauName = "tau")
-
void
AddMET(const std::string &detailStr = "", const std::string &metName = "met")
-
void
FillEvent(const xAOD::EventInfo *eventInfo, xAOD::TEvent *event = nullptr, const xAOD::VertexContainer *vertices = nullptr)
-
void
FillTrigger(const xAOD::EventInfo *eventInfo)
-
void
FillJetTrigger()
-
void
FillMuons(const xAOD::MuonContainer *muons, const xAOD::Vertex *primaryVertex, const std::string &muonName = "muon")
-
void
FillMuon(const xAOD::Muon *muon, const xAOD::Vertex *primaryVertex, const std::string &muonName = "muon")
-
void
FillElectrons(const xAOD::ElectronContainer *electrons, const xAOD::Vertex *primaryVertex, const std::string &elecName = "el")
-
void
FillElectron(const xAOD::Electron *elec, const xAOD::Vertex *primaryVertex, const std::string &elecName = "el")
-
void
FillPhotons(const xAOD::PhotonContainer *photons, const std::string &photonName = "ph")
-
void
FillPhoton(const xAOD::Photon *photon, const std::string &photonName = "ph")
-
void
FillClusters(const xAOD::CaloClusterContainer *clusters, const std::string &clusterName = "cl")
-
void
FillCluster(const xAOD::CaloCluster *cluster, const std::string &clusterName = "cl")
-
void
FillJets(const xAOD::JetContainer *jets, int pvLocation = -1, const std::string &jetName = "jet")
-
void
FillJet(const xAOD::Jet *jet_itr, const xAOD::Vertex *pv, int pvLocation, const std::string &jetName = "jet")
-
void
FillL1Jets(const xAOD::JetRoIContainer *jets, const std::string &jetName = "L1Jet", bool sortL1Jets = false)
-
void
FillTruth(const xAOD::TruthParticleContainer *truth, const std::string &truthName = "xAH_truth")
-
void
FillTruth(const xAOD::TruthParticle *truthPart, const std::string &truthName)
-
void
FillTracks(const xAOD::TrackParticleContainer *tracks, const std::string &trackName = "trk")
-
void
FillTrack(const xAOD::TrackParticle *trackPart, const std::string &trackName)
-
void
FillVertices(const xAOD::VertexContainer *vertices, const std::string &vertexName = "vertex")
-
void
FillTruthVertices(const xAOD::TruthVertexContainer *truthVertices, const std::string &truthVertexName = "truth_vertex")
-
void
FillFatJets(const xAOD::JetContainer *fatJets, int pvLocation = 0, const std::string &fatjetName = "fatjet", const std::string &suffix = "") Write a container of jets to the specified container name (and optionally suffix). The container name and suffix should be declared beforehand using
AddFatJets(). This clears the current branch state for the collection so it only makes sense to call once per call toFill().- Parameters
fatJets: A container of jets to be written out.fatjetName: The name of the output collection to write to.suffix: The suffix of the output collection to write to.
-
void
FillFatJet(const xAOD::Jet *fatjet_itr, int pvLocation = 0, const std::string &fatjetName = "fatjet", const std::string &suffix = "")
-
void
FillTruthFatJets(const xAOD::JetContainer *truthFatJets, int pvLocation = 0, const std::string &truthFatJetName = "truth_fatjet")
-
void
FillTruthFatJet(const xAOD::Jet *truth_fatjet_itr, int pvLocation = 0, const std::string &truthFatJetName = "truth_fatjet")
-
void
FillTaus(const xAOD::TauJetContainer *taus, const std::string &tauName = "tau")
-
void
FillTau(const xAOD::TauJet *tau, const std::string &tauName = "tau")
-
void
FillMET(const xAOD::MissingETContainer *met, const std::string &metName = "met")
-
void
Fill()
-
void
ClearEvent()
-
void
ClearTrigger()
-
void
ClearJetTrigger()
-
void
ClearMuons(const std::string &jetName = "muon")
-
void
ClearElectrons(const std::string &elecName = "el")
-
void
ClearPhotons(const std::string &photonName = "ph")
-
void
ClearClusters(const std::string &clusterName = "cl")
-
void
ClearJets(const std::string &jetName = "jet")
-
void
ClearL1Jets(const std::string &jetName = "L1Jet")
-
void
ClearTruth(const std::string &truthName)
-
void
ClearTracks(const std::string &trackName)
-
void
ClearFatJets(const std::string &fatjetName, const std::string &suffix = "")
-
void
ClearTruthFatJets(const std::string &truthFatJetName = "truth_fatjet")
-
void
ClearTaus(const std::string &tauName = "tau")
-
void
ClearMET(const std::string &metName = "met")
-
void
ClearVertices(const std::string &vertexName = "vertex")
-
void
ClearTruthVertices(const std::string &vertexName = "truth_vertex")
-
bool
writeTo(TFile *file)
-
virtual void
AddEventUser(const std::string &detailStr = "")
-
virtual void
AddTriggerUser(const std::string &detailStr = "")
-
virtual void
AddJetTriggerUser(const std::string &detailStr = "")
-
virtual void
AddMuonsUser(const std::string &detailStr = "", const std::string &muonName = "muon")
-
virtual void
AddElectronsUser(const std::string &detailStr = "", const std::string &elecName = "el")
-
virtual void
AddPhotonsUser(const std::string &detailStr = "", const std::string &photonName = "ph")
-
virtual void
AddClustersUser(const std::string &detailStr = "", const std::string &clusterName = "cl")
-
virtual void
AddJetsUser(const std::string &detailStr = "", const std::string &jetName = "jet")
-
virtual void
AddTruthUser(const std::string &truthName = "", const std::string &detailStr = "xAH_truth")
-
virtual void
AddTracksUser(const std::string &trackName = "", const std::string &detailStr = "trk")
-
virtual void
AddFatJetsUser(const std::string &detailStr = "", const std::string &fatjetName = "", const std::string &suffix = "") Declare a new fat jet collection. Automatically called once per call to
AddFatJets(); override this if you want to provide your own additional branches for fatjets.- Parameters
detailStr: The space-separated list of detail requested by the called.fatjetName: The (prefix) name of the output collection.suffix: A suffix to be appeneded to the end of the output branch name(s).
-
virtual void
AddTruthFatJetsUser(const std::string &detailStr = "", const std::string &truthFatJetName = "truth_fatjet")
-
virtual void
AddTausUser(const std::string &detailStr = "", const std::string &tauName = "tau")
-
virtual void
AddMETUser(const std::string &detailStr = "", const std::string &metName = "met")
-
virtual void
ClearEventUser()
-
virtual void
ClearTriggerUser()
-
virtual void
ClearMuonsUser(const std::string&)
-
virtual void
ClearElectronsUser(const std::string&)
-
virtual void
ClearPhotonsUser(const std::string&)
-
virtual void
ClearClustersUser(const std::string&)
-
virtual void
ClearTruthUser(const std::string&)
-
virtual void
ClearTracksUser(const std::string&)
-
virtual void
ClearJetsUser(const std::string&)
-
virtual void
ClearFatJetsUser(const std::string&, const std::string&)
-
virtual void
ClearTruthFatJetsUser(const std::string&)
-
virtual void
ClearTausUser(const std::string&)
-
virtual void
ClearMETUser(const std::string&)
-
virtual void
FillEventUser(const xAOD::EventInfo *)
-
virtual void
FillMuonsUser(const xAOD::Muon *, const std::string&, const xAOD::Vertex *)
-
virtual void
FillElectronsUser(const xAOD::Electron *, const std::string&, const xAOD::Vertex *)
-
virtual void
FillPhotonsUser(const xAOD::Photon *, const std::string&)
-
virtual void
FillClustersUser(const xAOD::CaloCluster *, const std::string&)
-
virtual void
FillJetsUser(const xAOD::Jet *, const std::string&)
-
virtual void
FillTruthUser(const xAOD::TruthParticle *, const std::string&)
-
virtual void
FillTracksUser(const xAOD::TrackParticle *, const std::string&)
-
virtual void
FillFatJetsUser(const xAOD::Jet *, int, const std::string&, const std::string&) Called once per call to
FillFatJets().Ooverride this if you want to any additional information to your jet collection.- Parameters
jet: a pointer to the current xAOD::Jet object that should be written to the output branch(s).fatjetName: the (prefix) name of the output collectionsuffix: the suffix to append to output branches.
-
virtual void
FillTruthFatJetsUser(const xAOD::Jet *, int, const std::string&)
-
virtual void
FillTausUser(const xAOD::TauJet *, const std::string&)
-
virtual void
FillMETUser(const xAOD::MissingETContainer *, const std::string&)
-
virtual void
FillTriggerUser(const xAOD::EventInfo *)
-
virtual void
FillJetTriggerUser()
Public Members
-
xAOD::TEvent *
m_event
-
xAOD::TStore *
m_store
-
std::string
m_vertexContainerName= "PrimaryVertices" Name of vertex container.
-
std::string
m_truthVertexContainerName= "TruthVertices"
-
HelperClasses::TriggerInfoSwitch *
m_trigInfoSwitch
-
std::string
m_triggerSelection
-
TrigConf::xAODConfigTool *
m_trigConfTool
-
Trig::TrigDecisionTool *
m_trigDecTool
Public Static Functions
-
std::string
FatJetCollectionName(const std::string &fatjetName = "fatjet", const std::string &suffix = "") Helper function to lookup each fatjet container name/suffix combo in the internal map of vectors for vectors. You probably don’t need this but it might be useful if you’re implementing
[Add/Fill/Clear]FatJetsUser().- Return
a string that uniquely identifies the collection name/suffix in the lookup map.
- Parameters
fatjetName: The (prefix) name of the container.suffix: The container branch suffix.
Protected Functions
-
template<typename
T, typenameU, typenameV>
voidsafeFill(const V *xAODObj, SG::AuxElement::ConstAccessor<T> &accessor, std::vector<U> &destination, U defaultValue, int m_units = 1)
-
template<typename
T, typenameU, typenameV>
voidsafeVecFill(const V *xAODObj, SG::AuxElement::ConstAccessor<std::vector<T>> &accessor, std::vector<std::vector<U>> &destination, int m_units = 1)
-
template<typename
T>
voidsetBranch(std::string prefix, std::string varName, std::vector<T> *localVectorPtr)
Protected Attributes
-
TTree *
m_tree
-
int
m_units
-
bool
m_debug
-
bool
m_isMC
-
std::string
m_nominalTreeName
-
bool
m_nominalTree
-
xAH::EventInfo *
m_eventInfo
-
int
m_passL1
-
int
m_passHLT
-
unsigned int
m_masterKey
-
unsigned int
m_L1PSKey
-
unsigned int
m_HLTPSKey
-
std::vector<std::string>
m_elTrigForMatching
-
std::vector<std::string>
m_passedTriggers
-
std::vector<std::string>
m_disabledTriggers
-
std::vector<float>
m_triggerPrescales
-
std::vector<float>
m_triggerPrescalesLumi
-
std::vector<std::string>
m_isPassBitsNames
-
std::vector<unsigned int>
m_isPassBits
-
std::map<std::string, xAH::JetContainer *>
m_jets
-
std::map<std::string, xAH::L1JetContainer *>
m_l1Jets
-
std::map<std::string, xAH::TruthContainer *>
m_truth
-
std::map<std::string, xAH::TrackContainer *>
m_tracks
-
std::map<std::string, xAH::FatJetContainer *>
m_fatjets
-
std::map<std::string, xAH::FatJetContainer *>
m_truth_fatjets
-
std::map<std::string, xAH::MuonContainer *>
m_muons
-
std::map<std::string, std::vector<std::string>>
m_MuonRecoEff_SF_sysNames
-
std::map<std::string, std::vector<std::string>>
m_MuonIsoEff_SF_sysNames
-
std::map<std::string, std::map<std::string, std::vector<std::string>>>
m_MuonTrigEff_SF_sysNames
-
std::vector<std::string>
m_MuonTTVAEff_SF_sysNames
-
std::map<std::string, xAH::ElectronContainer *>
m_elecs
-
std::map<std::string, xAH::PhotonContainer *>
m_photons
-
std::map<std::string, xAH::ClusterContainer *>
m_clusters
-
std::map<std::string, xAH::TauContainer *>
m_taus
-
std::map<std::string, xAH::MetContainer *>
m_met
-
std::map<std::string, xAH::VertexContainer *>
m_vertices
-
std::map<std::string, xAH::VertexContainer *>
m_truth_vertices
-