26 typedef long long int JUTCTime_t;
52 inline JUTCTime_t
getTime(
const int frame_index)
67 int main(
int argc,
char **argv)
71 using namespace KM3NETDAQ;
80 JParser<> zap(
"Example program to histogram UTC profiles.");
84 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
89 catch(
const exception& error) {
90 FATAL(error.what() << endl);
100 if (
N > numberOfEvents.getUpperLimit()) {
101 N = numberOfEvents.getUpperLimit();
105 FATAL(
"Number of time slices in file(s) " <<
N << endl);
108 const Long64_t NX = in.getEntry(
N-1)->getFrameIndex() - in.getEntry(0)->getFrameIndex() + 1;
109 const Double_t xmin = (Double_t) in.getEntry( 0 )->getFrameIndex() - 0.5;
110 const Double_t xmax = (Double_t) in.getEntry(
N-1)->getFrameIndex() + 0.5;
115 TH1D h0(
"UTC", NULL, NX, xmin, xmax);
116 TH1D
h1(
"!utc", NULL, NX, xmin, xmax);
117 TH1D h2(
"dt", NULL, 1001, -500.5, +500.5);
120 const int frame_index = in.getEntry(0)->getFrameIndex();
121 const JUTCTime_t t0 =
getTime(in.getEntry(0)->getTimesliceStart());
123 for (in.rewind(); in.hasNext() && in.getCounter() != numberOfEvents.getUpperLimit(); ) {
125 STATUS(
"event: " << setw(10) << in.getCounter() <<
'\r');
DEBUG(endl);
136 for (JDAQTimeslice::const_iterator frame = timeslice->begin(); frame != timeslice->end(); ++frame) {
138 if (utc != frame->getTimesliceStart()) {
142 h2.Fill(
getTime(frame->getTimesliceStart()) - t1);
Utility class to parse command line options.
int main(int argc, char *argv[])
JDAQUTCExtended getTimesliceStart() const
Get start of timeslice.
ROOT TTree parameter settings of various packages.
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
then for HISTOGRAM in h0 h1
Long64_t counter_type
Type definition for counter.
double getTime(const Hit &hit)
Get true time of hit.
Data structure for UTC time.
Template definition for direct access of elements in ROOT TChain.
int getFrameIndex() const
Get frame index.
Auxiliary class for defining the range of iterations of objects.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
double getFrameTime()
Get frame time duration.
JUINT32_t getUTC16nanosecondcycles() const
Get time.
JUINT32_t getUTCseconds() const
Get time.
General purpose messaging.
Scanning of objects from multiple files according a format that follows from the extension of each fi...
Utility class to parse command line options.
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
const JLimit & getLimit() const
Get limit.
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in