15#include <TStopwatch.h>
18#include "TObjString.h"
42int main(
int argc,
char* argv[] ) {
44 using namespace asg::msgUserCode;
54 Error(
APP_NAME,
"No file name received!" );
55 Error(
APP_NAME,
" Usage: %s [xAOD file name] [maxEvents] [Debug] [ConfigFile=<cfile.conf>] ",
APP_NAME );
62 std::string config_file =
"SUSYTools/SUSYTools_Default.conf";
64 for (
int i = 1 ; i < argc ; i++) {
65 const char* key = strtok(argv[i],
"=") ;
66 const char* val = strtok(0,
" ") ;
68 Info(
APP_NAME,
"processing key %s with value %s", key, val );
70 if (strcmp(key,
"Debug") == 0)
debug = atoi(val);
71 if (strcmp(key,
"ConfigFile") == 0) config_file = std::string(val);
72 if (strcmp(key,
"maxEvents") == 0)
entries = atoi(val);
84 Info(
APP_NAME,
"Opening file: %s", fileName.Data() );
85 std::unique_ptr< TFile > ifile( TFile::Open( fileName,
"READ" ) );
99 ANA_CHECK( event.readFrom( ifile.get() ) );
100 Info(
APP_NAME,
"Number of events in the file: %i",
101 static_cast< int >( event.getEntries() ) );
115 int period =
debug ? 1 : 100;
118 for ( Long64_t entry = 0; entry <
entries; ++entry ) {
121 event.getEntry( entry );
125 ANA_CHECK( event.retrieve( ei,
"EventInfo" ) );
127 if (entry % period == 0) {
129 "===>>> start processing event #%i, "
130 "run #%i %i events processed so far <<<===",
133 static_cast< int >( entry ) );
140 if( objTool.
FindSusyHP(pdgid1, pdgid2) != StatusCode::SUCCESS ){
141 Error(
APP_NAME,
"--- SOMETHING IS WRONG WITH THE SUSY PROC FINDING... ---");
145 if( pdgid1!=0 && pdgid2!=0){
146 Info(
APP_NAME ,
"--- SIGNAL ID1 : %d", pdgid1);
147 Info(
APP_NAME ,
" SIGNAL ID2 : %d", pdgid2);
150 Info(
APP_NAME ,
" SIGNAL PROC ID (DECO) : %d", acc_susyid(*ei) );
static void enableFailure() noexcept
Helper class to provide type-safe access to aux data.
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
StatusCode FindSusyHP(int &pdgid1, int &pdgid2) const
uint32_t runNumber() const
The current event's run number.
uint64_t eventNumber() const
The current event's event number.
Tool for accessing xAOD files outside of Athena.
@ kAthenaAccess
Access containers/objects like Athena does.
A relatively simple transient store for objects created in analysis.
EventInfo_v1 EventInfo
Definition of the latest event info version.