NtupleReader Class Reference

#include <NtupleReader.h>

List of all members.

Public Member Functions

 NtupleReader (const std::vector< std::string > &file_name, const std::string &tree_name, MyAnalysis *analysis)
 ~NtupleReader (void)
 Destructor.
void event_loop (Int_t nb_events=-1, Int_t first_event=0)

Private Member Functions

void init (const std::vector< std::string > &file_name, const std::string &tree_name, MyAnalysis *analysis)
 initialization method (variables as defined in the constructor of this class)
void destruct (void)
void delete_new_objects (std::vector< MyParticle * > tmp_vector)
 delete all objects in the vectors that were created with "new"

Private Attributes

MyDatasetInfom_dataset_info
MyTriggerm_trigger
TChain * m_chain
int m_release
int m_svnversion
Int_t RunNumber
Int_t EventNumber
Char_t StreamATLFAST_ref
Char_t Stream1_ref [153]
Char_t Token [153]
Int_t Run
Int_t Event
Int_t Time
Double_t Weight
Int_t IEvent
std::vector< std::string > * trigger_keys_l1
std::vector< int > * trigger_keys_status_l1
std::vector< std::string > * trigger_keys_l2
std::vector< int > * trigger_keys_status_l2
std::vector< std::string > * trigger_keys_ef
std::vector< int > * trigger_keys_status_ef
Int_t nb_trigger_mu_lvl1
std::vector< double > * trigger_mu_lvl1_eta
std::vector< double > * trigger_mu_lvl1_phi
std::vector< int > * trigger_mu_lvl1_threshold_number
std::vector< double > * trigger_mu_lvl1_threshold_value
std::vector< std::string > * trigger_mu_lvl1_threshold_name
Int_t nb_trigger_mu_lvl2
std::vector< double > * trigger_mu_lvl2_eta
std::vector< double > * trigger_mu_lvl2_phi
std::vector< double > * trigger_mu_lvl2_pt
std::vector< double > * trigger_mu_lvl2_sigma_pt
Int_t nb_trigger_mu_ef
std::vector< double > * trigger_mu_ef_eta
std::vector< double > * trigger_mu_ef_phi
std::vector< double > * trigger_mu_ef_pt
std::vector< double > * trigger_mu_ef_charge1
std::vector< int > * trigger_mu_ef_code
Double_t trigger_met_ex
Double_t trigger_met_ey
Double_t trigger_met_et
Double_t trigger_met_sumEt
Int_t nb_rec_tracks
std::vector< double > * track_p_x
std::vector< double > * track_p_y
std::vector< double > * track_p_z
std::vector< double > * track_E
std::vector< double > * track_charge
std::vector< int > * track_vertex_index
std::vector< int > * track_SCThit
std::vector< int > * track_Phit
std::vector< int > * track_BLayerhit
std::vector< int > * track_TRThit
std::vector< int > * track_MDThit
std::vector< int > * track_CSChit_eta
std::vector< int > * track_TGChit_eta
std::vector< int > * track_RPChit_eta
std::vector< int > * track_CSChit_phi
std::vector< int > * track_TGChit_phi
std::vector< int > * track_RPChit_phi
std::vector< double > * track_d0
std::vector< double > * track_z0
std::vector< double > * track_chi2
std::vector< double > * track_nDoF
std::vector< double > * track_trackIsolationEnergy_s
std::vector< double > * track_trackIsolationEnergy_0
std::vector< double > * track_trackIsolationEnergy_1
std::vector< double > * track_trackIsolationEnergy_2
std::vector< double > * track_trackIsolationEnergy_3
Int_t nb_rec_electrons
std::vector< double > * e_p_x
std::vector< double > * e_p_y
std::vector< double > * e_p_z
std::vector< double > * e_E
std::vector< double > * e_calo_p_x
std::vector< double > * e_calo_p_y
std::vector< double > * e_calo_p_z
std::vector< double > * e_calo_E
std::vector< double > * e_charge
std::vector< double > * e_NeuralNet
std::vector< double > * e_isEM
std::vector< int > * e_id_flag
std::vector< int > * e_egamma_flag
std::vector< int > * e_softe_flag
std::vector< double > * e_E_over_p
std::vector< int > * e_TRTHighThresholdHits
std::vector< int > * e_TRTHits
std::vector< double > * e_ethad1
std::vector< double > * e_Et_in_cone_0
std::vector< double > * e_Et_in_cone_1
std::vector< double > * e_Et_in_cone_2
std::vector< double > * e_Et_in_cone_3
std::vector< int > * e_vertex_index
std::vector< double > * e_track_Et_in_cone_0
std::vector< double > * e_track_Et_in_cone_1
std::vector< double > * e_track_Et_in_cone_2
std::vector< double > * e_track_Et_in_cone_3
std::vector< double > * e_trackIsolationEnergy_0
std::vector< double > * e_trackIsolationEnergy_1
std::vector< double > * e_trackIsolationEnergy_2
std::vector< double > * e_trackIsolationEnergy_3
Int_t nb_rec_photons
std::vector< double > * p_calo_p_x
std::vector< double > * p_calo_p_y
std::vector< double > * p_calo_p_z
std::vector< double > * p_calo_E
std::vector< double > * p_charge
std::vector< double > * p_NeuralNet
std::vector< double > * p_isEM
std::vector< int > * p_egamma_flag
std::vector< double > * p_Et_in_cone_0
std::vector< double > * p_Et_in_cone_1
std::vector< double > * p_Et_in_cone_2
std::vector< double > * p_Et_in_cone_3
Int_t nb_rec_muons
std::vector< int > * mu_alg_flag
std::vector< double > * mu_p_x
std::vector< double > * mu_p_y
std::vector< double > * mu_p_z
std::vector< double > * mu_E
std::vector< double > * mu_charge
std::vector< int > * mu_rec_flag
std::vector< int > * mu_hasCombinedMuonTrackParticle
std::vector< double > * mu_Et_in_cone_0
std::vector< double > * mu_Et_in_cone_1
std::vector< double > * mu_Et_in_cone_2
std::vector< double > * mu_Et_in_cone_3
std::vector< double > * mu_Et_in_cone_4
std::vector< double > * mu_Et_in_cone_5
std::vector< double > * mu_Et_in_cone_6
std::vector< double > * mu_Et_in_cone_7
std::vector< int > * mu_nb_tracks_in_cone_0
std::vector< int > * mu_nb_tracks_in_cone_1
std::vector< int > * mu_nb_tracks_in_cone_2
std::vector< int > * mu_nb_tracks_in_cone_3
std::vector< int > * mu_nb_tracks_in_cone_4
std::vector< int > * mu_nb_tracks_in_cone_5
std::vector< int > * mu_nb_tracks_in_cone_6
std::vector< int > * mu_nb_tracks_in_cone_7
std::vector< double > * mu_fitChi2
std::vector< int > * mu_fitNumberDoF
std::vector< double > * mu_fitChi2OverDoF
std::vector< double > * mu_matchChi2
std::vector< int > * mu_matchNumberDoF
std::vector< double > * mu_matchChi2OverDoF
std::vector< int > * mu_vertex_index
std::vector< double > * mu_track_Et_in_cone_0
std::vector< double > * mu_track_Et_in_cone_1
std::vector< double > * mu_track_Et_in_cone_2
std::vector< double > * mu_track_Et_in_cone_3
std::vector< double > * mu_track_Et_in_cone_4
std::vector< double > * mu_track_Et_in_cone_5
std::vector< double > * mu_track_Et_in_cone_6
std::vector< double > * mu_track_Et_in_cone_7
std::vector< double > * mu_trackIsolationEnergy_0
std::vector< double > * mu_trackIsolationEnergy_1
std::vector< double > * mu_trackIsolationEnergy_2
std::vector< double > * mu_trackIsolationEnergy_3
std::vector< double > * mu_trackIsolationEnergy_4
std::vector< double > * mu_trackIsolationEnergy_5
std::vector< double > * mu_trackIsolationEnergy_6
std::vector< double > * mu_trackIsolationEnergy_7
Int_t nb_rec_jets
std::vector< double > * jet_p_x
std::vector< double > * jet_p_y
std::vector< double > * jet_p_z
std::vector< double > * jet_E
std::vector< int > * jet_flag
std::vector< double > * jet_btag_weight
std::vector< int > * jet_truthflavor
std::vector< int > * jet_nb_tracks
std::vector< double > * jet_tracks_charge
std::vector< std::vector<
double > > 
v_jet_tracks_charge
std::vector< double > * jet_tracks_p_x
std::vector< std::vector<
double > > 
v_jet_tracks_px
std::vector< double > * jet_tracks_p_y
std::vector< std::vector<
double > > 
v_jet_tracks_py
std::vector< double > * jet_tracks_p_z
std::vector< std::vector<
double > > 
v_jet_tracks_pz
std::vector< double > * jet_tracks_E
std::vector< std::vector<
double > > 
v_jet_tracks_E
std::vector< int > * jet_tracks_vertex_index
std::vector< std::vector<
int > > 
v_jet_tracks_vertex_index
std::vector< std::vector<
TLorentzVector > > 
v_jet_tracks_tlv
Int_t nb_tau_jets
std::vector< double > * taujet_p_x
std::vector< double > * taujet_p_y
std::vector< double > * taujet_p_z
std::vector< double > * taujet_E
std::vector< int > * taujet_flag
std::vector< double > * taujet_charge
std::vector< double > * taujet_emRadius
std::vector< double > * taujet_isolationFraction
std::vector< double > * taujet_centralityFraction
std::vector< double > * taujet_stripWidth2
std::vector< double > * taujet_nStripCells
std::vector< double > * taujet_llh
std::vector< double > * taujet_lowPtTauEleDiscriminant
std::vector< double > * taujet_tauENeuralNetwork
std::vector< double > * taujet_tauJetNeuralnetwork
std::vector< double > * taujet_etHadCalib
std::vector< double > * taujet_etEMCalib
std::vector< int > * taujet_nb_tracks
std::vector< double > * taujet_track_px_1
std::vector< double > * taujet_track_py_1
std::vector< double > * taujet_track_pz_1
std::vector< double > * taujet_track_e_1
std::vector< int > * taujet_track_TRTHighThresholdHits_1
std::vector< int > * taujet_track_TRTHits_1
std::vector< double > * taujet_track_px_2
std::vector< double > * taujet_track_py_2
std::vector< double > * taujet_track_pz_2
std::vector< double > * taujet_track_e_2
std::vector< int > * taujet_track_TRTHighThresholdHits_2
std::vector< int > * taujet_track_TRTHits_2
std::vector< double > * taujet_track_px_3
std::vector< double > * taujet_track_py_3
std::vector< double > * taujet_track_pz_3
std::vector< double > * taujet_track_e_3
std::vector< int > * taujet_track_TRTHighThresholdHits_3
std::vector< int > * taujet_track_TRTHits_3
Int_t nb_truth_jets
std::vector< double > * truth_jet_p_x
std::vector< double > * truth_jet_p_y
std::vector< double > * truth_jet_p_z
std::vector< double > * truth_jet_E
std::vector< int > * truth_jet_flag
std::vector< double > * truth_jet_btag_weight
Int_t nb_truth_particle_all
Int_t nb_truth_particle
std::vector< double > * truth_particle_pt
std::vector< int > * truth_particle_status
std::vector< int > * truth_particle_barcode
std::vector< int > * truth_particle_pdgId
std::vector< int > * truth_particle_nDaughters
std::vector< double > * truth_particle_p_x
std::vector< double > * truth_particle_p_y
std::vector< double > * truth_particle_p_z
std::vector< double > * truth_particle_E
std::vector< double > * truth_particle_charge
std::vector< int > * truth_particle_nParents
std::vector< int > * truth_particle_mother0_barcode
std::vector< int > * truth_particle_mother0_pdgId
std::vector< int > * truth_particle_vertex_index
std::vector< double > * truth_particle_Et_in_cone_0
std::vector< double > * truth_particle_Et_in_cone_1
std::vector< double > * truth_particle_Et_in_cone_2
std::vector< double > * truth_particle_Et_in_cone_3
std::vector< double > * truth_particle_Et_in_cone_4
std::vector< std::string > * missing_Et_object
std::vector< double > * missing_Etx
std::vector< double > * missing_Ety
std::vector< double > * missing_Et
std::vector< double > * missing_Etsum
Int_t nb_vertices
std::vector< double > * vertex_position_x
std::vector< double > * vertex_position_y
std::vector< double > * vertex_position_z
std::vector< double > * vertex_pos_error_x
std::vector< double > * vertex_pos_error_y
std::vector< double > * vertex_pos_error_z
std::vector< double > * vertex_chi2
std::vector< int > * vertex_ndof
std::vector< double > * vertex_Et
std::vector< int > * vertex_nb_tracks
Int_t nb_truth_vertices
std::vector< double > * truth_vertex_position_x
std::vector< double > * truth_vertex_position_y
std::vector< double > * truth_vertex_position_z
std::vector< double > * truth_vertex_Et
std::vector< int > * truth_vertex_nb_tracks
Int_t nb_track_jets
std::vector< double > * track_jet_p_x
std::vector< double > * track_jet_p_y
std::vector< double > * track_jet_p_z
std::vector< double > * track_jet_E
Int_t nb_truth_track_jets
std::vector< double > * truth_track_jet_p_x
std::vector< double > * truth_track_jet_p_y
std::vector< double > * truth_track_jet_p_z
std::vector< double > * truth_track_jet_E
MyAnalysism_analysis

Static Private Attributes

static const double m_gev = 0.001


Detailed Description

This class reads AAN written by HiggsAnalysisNtupleWriter and call a user analysis class which get the data stored in the AAN in MyEvent objects. It can be used inside ROOT, but could also be called via the joboptions of an algorithm NtupleReaderAlg in ATHENA.

Date:
7.11.2006
Author:
Oliver.Kortner, Steffen.Kaiser

Definition at line 44 of file NtupleReader.h.


Constructor & Destructor Documentation

NtupleReader::NtupleReader ( const std::vector< std::string > &  file_name,
const std::string &  tree_name,
MyAnalysis analysis 
) [inline]

Constructor; file_name: name of the ROOT files containing the AAN tree; tree_name: name of the AAN tree containing the event data; analysis: analysis object to be implemented by the user

Definition at line 49 of file NtupleReader.h.


Member Function Documentation

void NtupleReader::event_loop ( Int_t  nb_events = -1,
Int_t  first_event = 0 
)

method which loop over the given data file and calls the routines of the class MyAnalysis

!!CHECK jet_nb_tracks==nb_rec_jets!!!//

Definition at line 738 of file NtupleReader.cxx.


The documentation for this class was generated from the following files:
Generated on Tue Oct 21 11:50:49 2008 for NtupleAnalysis by  doxygen 1.5.1