DetDef Namespace Reference

Namespace which defines all detectors. More...


Enumerations

enum  Detector_t {
  kT00, kTBD, kT01, kBCkov1,
  kBCkov2, kBC1, kBC1P1, kBC1P2,
  kBC1P3, kBC1P4, kBC2, kBC2P1,
  kBC2P2, kBC2P3, kBC2P4, kBC3,
  kBC3P1, kBC3P2, kBC3P3, kBC3P4,
  kTPC, kDC1, kDC1P1, kDC1P2,
  kDC1P3, kDC1P4, kDC2, kDC2P1,
  kDC2P2, kDC2P3, kDC2P4, kDC3,
  kDC3P1, kDC3P2, kDC3P3, kDC3P4,
  kDC4, kDC4P1, kDC4P2, kDC4P3,
  kDC4P4, kTOF, kCkov, kPWC5,
  kPWC5P1, kPWC5P2, kPWC5P3, kPWC5P4,
  kPWC6, kPWC6P1, kPWC6P2, kPWC6P3,
  kPWC6P4, kRICH, kEMCal, kHCal,
  kNDet
}

Functions

const char * DetName (int det)
 Returns Detector name.
void DetToChamPlane (int det, int &cham, int &plane)
 Converts detector number to chamber/plane.
int ChamPlaneToDet (int cham, int plane)
 Converts chamber/plane combination to detector number.


Detailed Description

Namespace which defines all detectors.

In particular we enumerate all detector segments, including chamber planes. This info is to be stored in RBMeasurement class and classes that inherit from it. Here the namespace is extended by some useful functions that are implemented in the .cxx and require linking against this lib.


Enumeration Type Documentation

enum DetDef::Detector_t

Enumerator:
kT00 
kTBD 
kT01 
kBCkov1 
kBCkov2 
kBC1 
kBC1P1 
kBC1P2 
kBC1P3 
kBC1P4 
kBC2 
kBC2P1 
kBC2P2 
kBC2P3 
kBC2P4 
kBC3 
kBC3P1 
kBC3P2 
kBC3P3 
kBC3P4 
kTPC 
kDC1 
kDC1P1 
kDC1P2 
kDC1P3 
kDC1P4 
kDC2 
kDC2P1 
kDC2P2 
kDC2P3 
kDC2P4 
kDC3 
kDC3P1 
kDC3P2 
kDC3P3 
kDC3P4 
kDC4 
kDC4P1 
kDC4P2 
kDC4P3 
kDC4P4 
kTOF 
kCkov 
kPWC5 
kPWC5P1 
kPWC5P2 
kPWC5P3 
kPWC5P4 
kPWC6 
kPWC6P1 
kPWC6P2 
kPWC6P3 
kPWC6P4 
kRICH 
kEMCal 
kHCal 
kNDet 

Definition at line 77 of file RBDefsNoDep.h.

00077                   {
00078     kT00,
00079     kTBD,
00080     kT01,
00081     kBCkov1, kBCkov2,
00082     kBC1, kBC1P1, kBC1P2, kBC1P3, kBC1P4,
00083     kBC2, kBC2P1, kBC2P2, kBC2P3, kBC2P4,
00084     kBC3, kBC3P1, kBC3P2, kBC3P3, kBC3P4,
00085     kTPC,
00086     kDC1, kDC1P1, kDC1P2, kDC1P3, kDC1P4,
00087     kDC2, kDC2P1, kDC2P2, kDC2P3, kDC2P4,
00088     kDC3, kDC3P1, kDC3P2, kDC3P3, kDC3P4,
00089     kDC4, kDC4P1, kDC4P2, kDC4P3, kDC4P4,
00090     kTOF,
00091     kCkov,
00092     kPWC5, kPWC5P1, kPWC5P2, kPWC5P3, kPWC5P4,
00093     kPWC6, kPWC6P1, kPWC6P2, kPWC6P3, kPWC6P4,
00094     kRICH, 
00095     kEMCal,
00096     kHCal,
00097     kNDet
00098   };


Function Documentation

const char * DetDef::DetName ( int  det  ) 

Returns Detector name.

Definition at line 74 of file RBDefs.cxx.

References Case, DC1, DC2, DC3, and DC4.

Referenced by main().

00075 {
00076   switch (det) {
00077     Case(T00);
00078     Case(TBD);
00079     Case(T01);
00080     Case(BCkov1);
00081     Case(BCkov2);
00082     Case(BC1); Case(BC1P1); Case(BC1P2); Case(BC1P3); Case(BC1P4);
00083     Case(BC2); Case(BC2P1); Case(BC2P2); Case(BC2P3); Case(BC2P4);
00084     Case(BC3); Case(BC3P1); Case(BC3P2); Case(BC3P3); Case(BC3P4);
00085     Case(TPC);
00086     Case(DC1); Case(DC1P1); Case(DC1P2); Case(DC1P3); Case(DC1P4);
00087     Case(DC2); Case(DC2P1); Case(DC2P2); Case(DC2P3); Case(DC2P4);
00088     Case(DC3); Case(DC3P1); Case(DC3P2); Case(DC3P3); Case(DC3P4);
00089     Case(DC4); Case(DC4P1); Case(DC4P2); Case(DC4P3); Case(DC4P4);
00090     Case(TOF);
00091     Case(Ckov);
00092     Case(PWC5); Case(PWC5P1); Case(PWC5P2); Case(PWC5P3); Case(PWC5P4);
00093     Case(PWC6); Case(PWC6P1); Case(PWC6P2); Case(PWC6P3); Case(PWC6P4);
00094     Case(RICH); 
00095     Case(EMCal);
00096     Case(HCal);
00097   default: return "?Undef?";
00098   }
00099 }

void DetDef::DetToChamPlane ( int  det,
int &  cham,
int &  plane 
)

Converts detector number to chamber/plane.

Chamber starts with 0, plane starts with 1. If plane is set to 0, then the entire chamber is selected.

Definition at line 106 of file RBDefs.cxx.

References JobCAssert, kBC1, kBC2, kBC3, kDC1, kDC2, kDC3, kDC4, kPWC5, and kPWC6.

Referenced by RBViewHit::Chamber(), and RBViewHit::Plane().

00107 {
00108   if (det >= kPWC6)      { cham = 8; plane = det - kPWC6; }
00109   else if (det >= kPWC5) { cham = 7; plane = det - kPWC5; }
00110   else if (det >= kDC4)  { cham = 6; plane = det - kDC4;  }
00111   else if (det >= kDC3)  { cham = 5; plane = det - kDC3;  }
00112   else if (det >= kDC2)  { cham = 4; plane = det - kDC2;  }
00113   else if (det >= kDC1)  { cham = 3; plane = det - kDC1;  }
00114   else if (det >= kBC3)  { cham = 2; plane = det - kBC3;  }
00115   else if (det >= kBC2)  { cham = 1; plane = det - kBC2;  }
00116   else if (det >= kBC1)  { cham = 0; plane = det - kBC1;  }
00117   else JobCAssert(0, "Can't convert detector number to chamber/plane");
00118 }

int DetDef::ChamPlaneToDet ( int  cham,
int  plane 
)

Converts chamber/plane combination to detector number.

Set plane = 0 to ge the entire chamber

Definition at line 124 of file RBDefs.cxx.

References JobCAssert, kBC1, kBC2, kBC3, kDC1, kDC2, kDC3, kDC4, kPWC5, and kPWC6.

Referenced by Wire::SetID().

00125 {
00126   static const int myCham[9] = {kBC1, kBC2, kBC3, 
00127                 kDC1, kDC2, kDC3, kDC4, 
00128                 kPWC5, kPWC6};
00129   JobCAssert(cham >= 0 && cham < 9, "");
00130   JobCAssert(plane >= 0 && plane <= 4, "");
00131 
00132   return myCham[cham] + plane;
00133 }


Generated on Mon Nov 23 08:05:24 2009 for MIPP(E907) by  doxygen 1.4.7