27{
30
32 string usr;
33 string pwd;
34 string cookie;
36 string detid;
38
39 try {
40
41 JParser<> zap(
"Auxiliary program to check detector integration.");
42
47 zap[
'D'] =
make_field(detid,
"Detector identifier");
49
50 zap(argc, argv);
51 }
52 catch(const exception &error) {
53 FATAL(error.what() << endl);
54 }
55
56
57 try {
58
59 JDB::reset(usr, pwd, cookie);
60
61 const int ID = getDetector<int> (detid);
62 detid = getDetector<string>(detid);
63
65
66 detector_type detectorA;
67
68 {
70
72
73 if (parameters.PMTUPI.getPBS() == PBS::PMT) {
74 detectorA[parameters.PMTUPI] =
JLocation_t(parameters.DUID, parameters.FLOORID, parameters.CABLEPOS);
75 }
76 }
77
78 rs.Close();
79 }
80
81
83
84 {
85 ResultSet& rs =
getResultSet(getTable<JDetectorIntegration_t>());
86
87 if (! (rs >> detectorB)) {
89 }
90 }
91
93
95
96
97 for (detector_type::const_iterator i = detectorA.begin(); i != detectorA.end(); ++i) {
98
100 const JLocation_t locationB = router.getLocation(i->first);
101
102 cout << locationA << ' ' << locationB << ' ' << (locationA != locationB ? "*" : "") << endl;
103 }
104 }
105 catch(const exception& error) {
106 FATAL(error.what() << endl);
107 }
108}
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Utility class to parse command line options.
ResultSet & getResultSet(const std::string &query)
Get result set.
std::vector< JServer > getServernames()
Get list of names of available database servers.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
void configure(const std::string &detid, const bool option=false)
Configure detector integration for given detector identifier.
Auxiliary data structure for location of product in detector.
Auxiliary class to map UPI to location in detector.
Wrapper class for server name.
Template definition for getting table specific selector.