Jpp test-rotations-old
the software that should make you happy
Loading...
Searching...
No Matches
JControlHostObjectIterator.cc
Go to the documentation of this file.
1#include <string>
2#include <iostream>
3#include <iomanip>
4
6#include "JDAQ/JDAQEventIO.hh"
8#include "JDAQ/JDAQTags.hh"
9
11
12#include "Jeep/JParser.hh"
13#include "Jeep/JMessage.hh"
14
15/**
16 * \file
17 *
18 * Example program to test JNET::JControlHostObjectIterator.
19 * \author mdejong
20 */
21int main(int argc, char* argv[])
22{
23 using namespace std;
24 using namespace JPP;
25 using namespace KM3NETDAQ;
26
27 string hostname;
28 JTimeval timeout_us;
29 int numberOfTimeouts;
30 bool any;
31 int debug;
32
33 try {
34
35 JParser<> zap("Example program to test receiving of objects from ControlHost server.");
36
37 zap['H'] = make_field(hostname) = "localhost";
38 zap['T'] = make_field(timeout_us) = 100000;
39 zap['n'] = make_field(numberOfTimeouts) = 100;
40 zap['Y'] = make_field(any);
41 zap['d'] = make_field(debug) = 1;
42
43 zap(argc, argv);
44 }
45 catch(const exception &error) {
46 FATAL(error.what() << endl);
47 }
48
49
51
52 try {
53
54 typedef JDAQEvent data_type;
55
56 JControlHostObjectIterator<data_type> in(hostname, timeout_us, !any);
57
58 for (int i = 0; i != numberOfTimeouts; ) {
59
60 if (in.hasNext()) {
61
62 data_type* p = in.next();
63
65 NOTICE(p->getDAQHeader() << endl);
66 else
67 DEBUG(*p << endl);
68
69 } else {
70
71 NOTICE("timeout " << setw(3) << i << '\r');
72
73 ++i;
74 }
75 }
76 }
77 catch(const JSocketException& error) {
78 ERROR(error.what() << endl);
79 }
80}
int main(int argc, char *argv[])
Fixed parameters and ControlHost tags for KM3NeT DAQ.
General purpose messaging.
#define DEBUG(A)
Message macros.
Definition JMessage.hh:62
#define NOTICE(A)
Definition JMessage.hh:64
#define FATAL(A)
Definition JMessage.hh:67
int debug
debug level
Definition JSirene.cc:72
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition JParser.hh:2142
virtual const pointer_type & next() override
Get next element.
virtual bool hasNext() override
Check availability of next element.
Exception for socket.
Auxiliary class for time values.
Definition JTimeval.hh:29
Object iteration through ControlHost.
Utility class to parse command line options.
Definition JParser.hh:1698
@ debug_t
debug
Definition JMessage.hh:29
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
std::vector< event_type > data_type
Definition JPerth.cc:81
KM3NeT DAQ data structures and auxiliaries.
Definition DataQueue.cc:39
void setDAQLongprint(const bool option)
Set DAQ print option.
Definition JDAQPrint.hh:28
Data structure for measured coincidence rates of all pairs of PMTs in optical module.
Definition JFitK40.hh:103