27int main(
int argc, 
char **argv)
 
   48  catch(
const exception &error) {
 
   49    FATAL(error.what() << endl);
 
   52  gRandom->SetSeed(seed);
 
   57    const JUTMPosition pointer[] = { JNorth_t, JEast_t, JSouth_t, JWest_t, JNorth_t };
 
   59    for (
int i = 0; i != 4; ++i) {
 
   69      ASSERT(u.
equals(pointer[i+1], precision), 
"compass definitions");
 
   73  for (
int count = 0; count < numberOfEvents; ++count) {
 
   75    STATUS(
"event: " << setw(10) << count << 
'\r'); 
DEBUG(endl);
 
   77    const JCompass c1(gRandom->Uniform(-1.0*PI,+1.0*PI),
 
   78                      gRandom->Uniform(-0.5*PI,+0.5*PI),
 
   79                      gRandom->Uniform(-0.5*PI,+0.5*PI));
 
   86    DEBUG(
"compass    [1] " << setprecision(3) << 
c1 << endl);
 
   87    DEBUG(
"compass    [2] " << setprecision(3) << c2 << endl);
 
   88    DEBUG(
"quaternion [1] " << setprecision(5) << Q1 << endl);
 
   89    DEBUG(
"quaternion [2] " << setprecision(5) << Q2 << endl);
 
   94           Q1.
equals(-Q2, precision), 
"compass to rotation to quaternion versus compass to quaternion");
 
   96    ASSERT(
c1.equals(c2, precision), 
"compass to quaternion to compass");
 
  104    for (
int i = 0; i != 
sizeof(pos)/
sizeof(pos[0]); ++i) {
 
  115      DEBUG(showpos << 
FIXED(8,3) << p0 << 
" -> " << flush);
 
 
TCanvas * c1
Global variables to handle mouse events.
 
General purpose messaging.
 
#define DEBUG(A)
Message macros.
 
#define ASSERT(A,...)
Assert macro.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
I/O formatting auxiliaries.
 
Data structure for compass in three dimensions.
 
Data structure for position in three dimensions.
 
JPosition3D & rotate(const JRotation3D &R)
Rotate.
 
JPosition3D & rotate_back(const JRotation3D &R)
Rotate back.
 
Data structure for unit quaternion in three dimensions.
 
const JQuaternion3D & getQuaternion() const
Get quaternion.
 
bool equals(const JQuaternion3D &quaternion, const double precision=std::numeric_limits< double >::min()) const
Check equality.
 
const JRotation3D & getRotation() const
Get rotation.
 
bool equals(const JVector3D &vector, const double precision=std::numeric_limits< double >::min()) const
Check equality.
 
Utility class to parse command line options.
 
Data structure for UTM position.
 
int main(int argc, char **argv)
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Auxiliary data structure for floating point format specification.