38   static const time_t UTC_INVALID_S = -1;
 
   43   static const int    RUN_INVALID   = -1;
 
   52   inline json getJSon(
const std::string& key, 
const time_t utc_s)
 
   54     if (utc_s != UTC_INVALID_S)
 
   73 int main(
int argc, 
char **argv)
 
   93     JParser<> zap(
"Auxiliary program to decompose detector to separate calibrations.");
 
   99     zap[
'a'] = 
make_field(detectorFile, 
"detector file");
 
  104                                                                               &JCalibrationType::nick_name));
 
  105     zap[
'V'] = 
make_field(validity,     
"validity range UTC [s], e.g. \"<UTC min> <UTC max>\"")  = 
JRange_t(UTC_INVALID_S, UTC_INVALID_S);
 
  106     zap[
'r'] = 
make_field(range,        
"run range e.g. \"<first run> <last run>\"")             = 
JRange_t(RUN_INVALID,   RUN_INVALID);
 
  107     zap[
'p'] = 
make_field(precision,    
"precision for match with reference module")             = 1.0e-5;
 
  112   catch(
const exception &error) {
 
  113     FATAL(error.what() << endl);
 
  128     FATAL(
"No detector address map for detector identier " << 
detector.getID() << endl);
 
  144       for (
JPersons object; rs >> object; ) {
 
  154         locid   = 
object.LOCATIONID;
 
  165       for (
JRuns object; rs >> object; ) {
 
  176       for (
JRuns object; rs >> object; ) {
 
  183   catch(
const exception& error) {
 
  184     FATAL(error.what() << endl);
 
  190   for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  192     if (module->getFloor() != 0) {
 
  200       if (!JModule::compare(buffer, *module, precision)) {
 
  202         for (
size_t i = 0; i != module->size(); ++i) {
 
  203           DEBUG(
"PMT " << setw(2) << i << 
' ' 
  209         FATAL(
"Module " << setw(10) <<  module->getID() << 
' ' << module->getLocation() << 
" incompatible with reference." << endl);
 
  237     for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  238       for (JModule::const_iterator pmt = module->begin(); pmt != module->end(); ++pmt) {
 
  253     for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  255       const JModule& buffer = demo.
getModule(module->getID(), module->getLocation());
 
  274     for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  276       const JModule& buffer = demo.
getModule(module->getID(), module->getLocation());
 
  278       if (module->getFloor() != 0) {
 
  293     for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  295       if (module->getFloor() == 0)
 
  312     for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  313       if (module->getFloor() == 0)
 
  333       for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  334         for (JModule::const_iterator pmt = module->begin(); pmt != module->end(); ++pmt) {
 
  344       for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  345         if (module->getFloor() == 0)
 
Data structure for detector geometry and calibration.
 
General purpose messaging.
 
#define DEBUG(A)
Message macros.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
I/O formatting auxiliaries.
 
Auxiliary class to define a range between two values.
 
int main(int argc, char **argv)
 
JSon definitions and auxiliaries.
 
Auxiliary methods to convert data members or return values of member methods of a set of objects to a...
 
Data structure for time calibration.
 
int getFloor() const
Get floor number.
 
Data structure for a composite optical module.
 
void rotate(const JRotation3D &R)
Rotate module.
 
Utility class to parse command line options.
 
JDirection3D getDirection(const Vec &dir)
Get direction.
 
JPosition3D getPosition(const Vec &pos)
Get position.
 
double getDot(const JNeutrinoDirection &first, const JNeutrinoDirection &second)
Dot product.
 
ResultSet & getResultSet(const std::string &query)
Get result set.
 
std::vector< JServer > getServernames()
Get list of names of available database servers.
 
static JRotation getRotation
Function object to get rotation matrix to go from first to second module.
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
 
JCalibration getCalibration(const JCalibration &first, const JCalibration &second)
Get calibration to go from first to second calibration.
 
void store(const std::string &file_name, const JDetector &detector)
Store detector to output file.
 
JDetectorBuilder & getDetectorBuilder()
Get detector builder.
 
bool hasDetectorAddressMap(const int id)
Check if detector address map is available.
 
std::string setWildCard(const std::string &file_name, const std::string &value)
Get file name by setting wild card to given value.
 
bool hasWildCard(const std::string &file_name)
Check presence of wild card.
 
static const char FILENAME_WILDCARD
wild card character for file name substitution
 
const array_type< JValue_t > & make_array(const JValue_t(&array)[N])
Method to create array of values.
 
static const double PI
Mathematical constants.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
const char * getName()
Get ROOT name of given data type.
 
static const std::string BasePositions_t
 
static const std::string TypeId_t
 
static const std::string BaseStatusInfo_t
 
static const std::string BaseAcousticT0_t
 
static const std::string TCAL
PMT time offsets.
 
static const std::string ValidThrough_t
 
static const std::string PMTT0s_t
 
static const std::string Message_t
 
static const std::string PCAL
(optical|base) module positions
 
static const std::string DOMPositions_t
 
static const std::string SCAL
(module|PMT) status
 
static const std::string RCAL
optical module orientations
 
static const std::string BaseCompassRotations_t
 
static const std::string Code_t
 
static const std::string EndTime_t
 
static const std::string Data_t
 
static const std::string LocationId_t
 
static const std::string OK_t
 
static const std::string Arguments_t
 
static const std::string UserId_t
 
static const std::string PMTStatusInfo_t
 
static const std::string DOMRotations_t
 
static const std::string ACAL
acoustic time offsets (piezo sensor or hydrophone)
 
static const std::string DOMAcousticT0_t
 
static const std::string CCAL
compass alignment (a.k.a. quaternion calibration)
 
static const std::string DOMStatusInfo_t
 
static const std::string DOMCompassRotations_t
 
static const std::string DetOID_t
 
static const std::string StartTime_t
 
static const std::string Error_t
 
static const std::string Comment_t
 
static const std::string ValidFrom_t
 
Auxiliary data structure for floating point format specification.
 
Type definition of range.
 
Wrapper class for server name.
 
Template definition for getting table specific selector.
 
Auxiliary data structure for compass rotation.
 
Auxiliary interface for building detector.
 
const JModule & getModule(const int id=-1, const JLocation &location=JLocation()) const
Get module.
 
Auxiliary data structure for module time calibration.
 
Auxiliary data structure for module position.
 
Auxiliary data structure for module rotation.
 
Auxiliary data structure for module status.
 
Auxiliary data structure for PMT time calibration.
 
Auxiliary data structure for PMT status.
 
Auxiliary data structure for streaming of STL containers.
 
Auxiliary data structure for correspondence between nick and full name of calibration types.
 
Auxiliary class for date and time.
 
std::string toString() const
Get ASCII formatted date and time.