1 #ifndef __JDETECTOR__JMODULE__ 
    2 #define __JDETECTOR__JMODULE__ 
   25 namespace JDETECTOR {}
 
   26 namespace JPP { 
using namespace JDETECTOR; }
 
  150                                const double   precision = 1.0e-3)
 
  152       if (first.size() == second.size()) {
 
  154         for (
size_t i = 0; i != first.size(); ++i) {
 
  200       if (index >= (
int) size()) {
 
  204       (*this)[index] = 
pmt;
 
  221           pos = JEstimator<JPoint3D>(this->begin(), this->end());
 
  223         catch(
const exception&) {
 
  227           for (
iterator i = begin(); i != end(); ++i) {
 
  228             pos.
add(i->getPosition());
 
  246       for (
iterator i = this->begin(); i != this->end(); ++i) {
 
  261       for (
iterator i = this->begin(); i != this->end(); ++i) {
 
  278       for (
iterator i = this->begin(); i != this->end(); ++i) {
 
  279         i->transform(R, pos);
 
  293       for (
iterator i = this->begin(); i != this->end(); ++i) {
 
  308       for (
iterator i = this->begin(); i != this->end(); ++i) {
 
  323       for (
iterator i = this->begin(); i != this->end(); ++i) {
 
  337       return add(pos - static_cast<JPosition3D&>(*
this));
 
  349       for (
iterator i = begin(); i != end(); ++i) {
 
  367       for (
iterator i = begin(); i != end(); ++i) {
 
  385       for (
iterator i = begin(); i != end(); ++i) {
 
  401       for (
iterator i = begin(); i != end(); ++i) {
 
  417       for (
iterator i = begin(); i != end(); ++i) {
 
  433       return this->
add(pos);
 
  445       return this->
sub(pos);
 
  468         module.push_back(pmt);
 
  488       out << static_cast<const JModuleIdentifier&>(module);
 
  490       out << static_cast<const JLocation&>        (module);
 
  492       out << 
' ' << module.size() << endl;
 
  494       for (const_iterator i = module.begin(); i != module.end(); ++i) {
 
  495         out << 
' ' << *i << endl;;
 
  524         module.push_back(pmt);
 
  542       out << static_cast<const JModuleIdentifier&>(module);
 
  543       out << static_cast<const JLocation&>        (module);
 
  545       int n = module.size();
 
  549       for (const_iterator i = module.begin(); i != module.end(); ++i) {
 
friend JReader & operator>>(JReader &in, JModule &module)
Read module from input. 
 
Interface for binary output. 
 
Data structure for a composite optical module. 
 
JPosition3D & rotate_back(const JRotation3D &R)
Rotate back. 
 
JModule & operator-=(const JVector3D &pos)
Subtract position. 
 
JModule & add(const double t0)
Add time offset. 
 
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
 
double getDot(const JAngle3D &angle) const 
Get dot product. 
 
void transform(const JRotation3D &R, const JVector3D &pos)
Transform position. 
 
friend JWriter & operator<<(JWriter &out, const JModule &module)
Write module to output. 
 
void rotate(const JQuaternion3D &Q)
Rotate module. 
 
JModule()
Default constructor. 
 
then echo The file $DIR KM3NeT_00000001_00000000 root already please rename or remove it first
 
esac $JPP_DIR examples JDetector JTransitTime o $OUTPUT_FILE n N $NPE T $TTS_NS d $DEBUG for HISTOGRAM in tts tt2 pmt
 
JModule & sub(const JVector3D &pos)
Subtract position. 
 
JVector3D & sub(const JVector3D &vector)
Subtract vector. 
 
void transform(const JTransformation3D &T)
Transformation of geometry. 
 
Data structure for vector in three dimensions. 
 
JModule & sub(const double t0)
Subtract time offset. 
 
Logical location of module. 
 
do set_variable OUTPUT_DIRECTORY $WORKDIR T
 
Data structure for PMT geometry and calibration. 
 
void compile()
Compile position of module from the positions and directions of the PMTs. 
 
void rotate_back(const JQuaternion3D &Q)
Rotate back module. 
 
JModule(const int id, const JLocation &location)
Constructor. 
 
void setPMT(const int index, const JPMT &pmt)
Set PMT. 
 
void rotate_back(const JRotation3D &R)
Rotate back module. 
 
Interface for binary input. 
 
const JPosition3D & getPosition() const 
Get position. 
 
static const JModule & getInstance()
Get reference to unique instance of this class object. 
 
const JPMT & getPMT(const int index) const 
Get PMT. 
 
void rotate(const JRotation3D &R)
Rotate module. 
 
then usage $script[distance] fi case set_variable R
 
JModule & operator+=(const JVector3D &pos)
Add position. 
 
Logical location of module. 
 
const JRotation3D & getRotation() const 
Get rotation. 
 
Data structure for quaternion in three dimensions. 
 
Linear fit of JFIT::JPoint3D. 
 
friend std::ostream & operator<<(std::ostream &out, const JModule &module)
Write module to output. 
 
friend std::istream & operator>>(std::istream &in, JModule &module)
Read module from input. 
 
Data structure for PMT geometry and calibration. 
 
Auxiliary class for object identification. 
 
JPosition3D()
Default constructor. 
 
void transform(const JRotation3D &R, const JVector3D &pos)
Transformation of geometry (see method JGEOMETRY3D::JPosition3D::transform(const JRotation3D&, const JVector3D&)). 
 
alias put_queue eval echo n
 
JModule & set(const double t0)
Set time offset. 
 
JPMT & getPMT(const int index)
Get PMT. 
 
JDirection3D getDirection(const Vec &v)
Get direction. 
 
Data structure for position in three dimensions. 
 
JVector3D & div(const double factor)
Scale vector. 
 
Data structure for normalised vector in three dimensions. 
 
JPosition3D & rotate(const JRotation3D &R)
Rotate. 
 
JModule & set(const JVector3D &pos)
Set position. 
 
static bool compare(const JModule &first, const JModule &second, const double precision=1.0e-3)
Compare modules. 
 
JVector3D & add(const JVector3D &vector)
Add vector. 
 
JModule & add(const JVector3D &pos)
Add position. 
 
JVector3D()
Default constructor.