1 #ifndef __JDB__JPRODUCTROUTER__ 
    2 #define __JDB__JPRODUCTROUTER__ 
   18 namespace JDATABASE {}
 
   19 namespace JPP { 
using namespace JDATABASE; }
 
   78       if (this->
string == location.
string) {
 
   87         return this->
string < location.
string;
 
  105                  << 
FILL(4,
'0') << 
object.string   << 
'.' 
  106                  << 
FILL(2,
'0') << 
object.floor    << 
'.' 
  107                  << 
FILL(2,
'0') << 
object.position << 
FILL() << left;
 
  121     public std::map<JUPI_t, JLocation_t>
 
  131       for (JDetectorIntegration_t::const_iterator product = detector.begin(); product != detector.end(); ++product) {
 
  132         if (product->has()) {
 
  133           for (JPBSSequences::const_iterator i = pbs.begin(); i != pbs.end(); ++i) {
 
  134             if (insert(detector, *product, *i)) { 
 
  151       const_iterator p = this->find(upi);
 
  153       if (p != this->end())
 
  176         JPBSSequence::const_iterator i = pbs.begin();
 
  186             if (
distance(range.first, range.second) == 1) {
 
  203           if (i == pbs.end()) {
 
JLocation_t(const int string, const int floor, const int position)
Constructor. 
bool less(const JLocation_t &location) const 
Less-than method. 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance. 
Universal product identifier (UPI). 
const JPBS_t & getPBS() const 
Get PBS. 
const JUPI_t & getUPI() const 
Get UPI. 
int floor
position in string 
bool is_valid() const 
Check validity of location. 
I/O formatting auxiliaries. 
Auxiliary data structure for a sequence of PBS values. 
Auxiliary data structure for location of product in detector. 
JLocation_t getLocation(const JUPI_t &upi) const 
Get location of product with given UPI. 
JLocation_t()
Default constructor. 
Auxiliary data structure for set of PBS sequences. 
range_type find(const JUPI_t &upi) const 
Find range of products with given UPI. 
Auxiliary class to map UPI to location in detector. 
Template definition of auxiliary base class for comparison of data structures. 
Auxiliary data structure for sequence of same character. 
z range($ZMAX-$ZMIN)< $MINIMAL_DZ." fi fi typeset -Z 4 STRING typeset -Z 2 FLOOR JPlot1D -f $
friend std::ostream & operator<<(std::ostream &out, const JLocation_t &object)
Write location to output stream. 
int position
position in floor 
bool insert(const JDetectorIntegration_t &detector, const JProductIntegration_t &product, const JPBSSequence &pbs)
Insert product. 
bool is_string(const JPBS_t &pbs)
Test if given PBS corresponds to a string. 
JProductRouter(const JDetectorIntegration_t &detector, const JPBSSequences &pbs)
Constructor. 
bool is_base_module(const JPBS_t &pbs)
Test if given PBS corresponds to a base module. 
do set_variable DETECTOR_TXT $WORKDIR detector
int string
position in detector 
bool is_detector(const JPBS_t &pbs)
Test if given PBS corresponds to a detector. 
bool is_optical_module(const JPBS_t &pbs)
Test if given PBS corresponds to a optical module. 
Auxiliary class for product integration data.