47int main(
int argc,
char **argv)
58 JLimit_t& numberOfEvents = inputFile.getLimit();
73 JParser<> zap(
"Example program to check for sparks.");
87 catch(
const exception& error) {
88 FATAL(error.what() << endl);
103 unique_ptr<JDynamics> dynamics;
109 dynamics->load(calibrationFile);
111 catch(
const exception& error) {
112 if (!calibrationFile.empty()) {
121 TH1D h0(
"h0", NULL, 50, -1.0, 2.0);
125 for (Int_t i = 1; i <= H2->GetXaxis()->GetNbins(); ++i) {
126 H2->GetXaxis()->SetBinLabel(i,
MAKE_CSTRING(router.at(i-1)));
128 for (Int_t i = 1; i <= H2->GetYaxis()->GetNbins(); ++i) {
138 for (
string file_name =
""; inputFile.
hasNext(); ) {
142 const Evt* evt = inputFile.
next();
147 dynamics->update(evt->
t.GetSec());
152 if (!evt->
w.empty()) {
169 catch(
const exception& error) {}
173 double Dmin = numeric_limits<double>::max();
183 for (
const auto& module : (dynamics ? dynamics->getDetector() :
detector)) {
185 if (module.getFloor() != 0) {
191 location =
module.getLocation();
197 if (Dmin != numeric_limits<double>::max()) {
199 h0.Fill(log10(Dmin), W);
201 const int i =
distance(Dmax_m.begin(), Dmax_m.lower_bound(Dmin));
216 for (
auto& h2 : H2) {
Data structure for detector geometry and calibration.
Dynamic detector calibration.
Recording of objects on file according a format that follows from the file name extension.
Dynamic ROOT object management.
General purpose messaging.
#define DEBUG(A)
Message macros.
Scanning of objects from multiple files according a format that follows from the extension of each fi...
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
#define MAKE_CSTRING(A)
Make C-string.
Utility class to parse parameter values.
#define gmake_property(A)
macros to convert (template) parameter to JPropertiesElement object
int main(int argc, char **argv)
Direct access to string in detector data structure.
ROOT TTree parameter settings of various packages.
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
JAANET::livetime livetime
Logical location of module.
const JLocation & getLocation() const
Get location.
int getFloor() const
Get floor number.
int getString() const
Get string number.
Utility class to parse parameter values.
const JPosition3D & getPosition() const
Get position.
Utility class to parse command line options.
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys.
General purpose class for object reading from a list of file names.
virtual bool hasNext() override
Check availability of next element.
counter_type getCounter() const
Get counter.
virtual const pointer_type & next() override
Get next element.
const std::string & getFilename() const
Get current file name.
Auxiliary class for trigger mask.
bool hasTriggerMask(const JDAQTriggerMask &mask) const
Has trigger bit pattern.
JTrack3E getTrack(const Trk &track)
Get track.
bool is_pure_noise(const JHead &header)
Check for generator.
bool is_mupage(const JHead &header)
Check for generator.
floor_range getRangeOfFloors(const JDetector &detector)
Get range of floors.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
JComparator< JResult_t T::*, JComparison::lt > make_comparator(JResult_t T::*member)
Helper method to create comparator between values of data member.
double getDistance(const JFirst_t &first, const JSecond_t &second)
Get distance between objects.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Head getHeader(const JMultipleFileScanner_t &file_list)
Get Monte Carlo header.
KM3NeT DAQ data structures and auxiliaries.
static const JDAQTriggerMask TRIGGER_MASK_ON
Trigger mask on;.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
std::vector< double > w
MC: Weights w[0]=w1, w[1]=w2, w[2]=w3 (see e.g. Tag list or km3net-dataformat/definitions)
ULong64_t trigger_mask
trigger mask from raw data (i.e. the trigger bits)
TTimeStamp t
UTC time of the timeslice, or the event_time for MC. (default: 01 Jan 1970 00:00:00)
double livetime_s
Live time [s].
double livetime_s
Live time [s].
double numberOfSeconds
Live time [s].
Router for mapping of string identifier to index.
Dynamic detector calibration.
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
Auxiliary class for defining the range of iterations of objects.
static counter_type max()
Get maximum counter value.
The Trk class represents a Monte Carlo (MC) particle as well as a reconstructed track/shower.
int status
MC status code, see km3net-dataformat/definitions/trkmembers.csv for values.
static const int TRK_ST_UNDEFINED
status was not defined for this MC track (all reco tracks have this value)
static const int WEIGHTLIST_RUN_BY_RUN_WEIGHT
w[1]*DAQ_livetime / MC_evts_summary::n_gen (gseagen; [GeV m2 sr s]) or DAQ_livetime/MC_evts_summary::...