Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Ugli Namespace Reference


Enumerations

enum  EModifyMode { kModifiable, kFrozen, kUseGlobal }

Functions

void SetDefaultModifyMode (EModifyMode mmode=kFrozen)
EModifyMode GetDefaultModifyMode ()
const Char_t * AsString (EModifyMode mmode)
bool XYisUV (Detector::Detector_t det)
void uv2xy (Detector::Detector_t det, Double_t u, Double_t v, Double_t &x, Double_t &y)
void uv2xy (Detector::Detector_t det, Float_t u, Float_t v, Float_t &x, Float_t &y)
void xy2uv (Detector::Detector_t det, Double_t x, Double_t y, Double_t &u, Double_t &v)
void xy2uv (Detector::Detector_t det, Float_t x, Float_t y, Float_t &u, Float_t &v)
TVector3 uvz2xyz (Detector::Detector_t det, const TVector3 &uvz)
TVector3 xyz2uvz (Detector::Detector_t det, const TVector3 &xyz)

Variables

EModifyMode fDefaultModifyMode = Ugli::kFrozen
const Double_t pi = 3.14159265358979323846
const Double_t rad2deg = 180. / pi
const Double_t deg2rad = pi / 180.
const Double_t r_sqrt2 = 7.07106781186547462e-01


Enumeration Type Documentation

enum EModifyMode
 

Enumeration values:
kModifiable 
kFrozen 
kUseGlobal 

Definition at line 24 of file Ugli.h.

Referenced by GetDefaultModifyMode().

00024                     {
00025       // Choose which list in the loan pool list UgliGeomHandle search
00026       kModifiable, // geometry may differ from database values 
00027       kFrozen,     // geometry is frozen at database values
00028       kUseGlobal   // choose from above based on static setting of class
00029    };


Function Documentation

const Char_t * Ugli::AsString EModifyMode  mmode  ) 
 

Definition at line 26 of file Ugli.cxx.

References kFrozen, kModifiable, and kUseGlobal.

00027 {
00028    // return the mode as a string
00029    switch (mmode) {
00030    case kFrozen:      return "Frozen";     break;
00031    case kModifiable:  return "Modifiable"; break;
00032    case kUseGlobal:   return "UseGlobal";  break;
00033    default: return "Unknown";
00034    }
00035 }

EModifyMode GetDefaultModifyMode  )  [inline]
 

Definition at line 41 of file Ugli.h.

References EModifyMode.

Referenced by UgliLoanPool::DoesValidGeomExist(), and UgliGeomHandle::UgliGeomHandle().

00041 { return fDefaultModifyMode; }

void Ugli::SetDefaultModifyMode EModifyMode  mmode = kFrozen  ) 
 

Definition at line 38 of file Ugli.cxx.

References kModifiable.

00039 {
00040    // set the global modify mode
00041    // must be either kFrozen or kModifiable
00042    // (kUseGlobal would be circular - if attempted default to kFrozen)
00043    if (kModifiable == mmode) fDefaultModifyMode = kModifiable;
00044    else                      fDefaultModifyMode = kFrozen;
00045 }

void Ugli::uv2xy Detector::Detector_t  det,
Float_t  u,
Float_t  v,
Float_t &  x,
Float_t &  y
 

Definition at line 48 of file Ugli.cxx.

References XYisUV().

00050 {
00051    // convert from detector (u,v) to world (x,y)
00052    if (XYisUV(det)) { x=u, y=v; return; }
00053    x = ( u - v ) * Ugli::r_sqrt2;
00054    y = ( u + v ) * Ugli::r_sqrt2;
00055 }

void Ugli::uv2xy Detector::Detector_t  det,
Double_t  u,
Double_t  v,
Double_t &  x,
Double_t &  y
 

Definition at line 58 of file Ugli.cxx.

References XYisUV().

Referenced by UgliGeomHandle::uv2xy(), and uvz2xyz().

00060 {
00061    // convert from detector (u,v) to world (x,y)
00062    if (XYisUV(det)) { x=u, y=v; return; }
00063    x = ( u - v ) * Ugli::r_sqrt2;
00064    y = ( u + v ) * Ugli::r_sqrt2;
00065 }

TVector3 Ugli::uvz2xyz Detector::Detector_t  det,
const TVector3 &  uvz
 

Definition at line 88 of file Ugli.cxx.

References uv2xy().

Referenced by UgliStripHandle::GlobalToLocal(), UgliSteelPlnHandle::GlobalToLocal(), UgliScintPlnHandle::GlobalToLocal(), UgliScintMdlHandle::GlobalToLocal(), UgliSteelPlnHandle::GlobalToLocalVect(), and UgliGeomHandle::uvz2xyz().

00089 {
00090    // convert from detector (u,v,z) to world (x,y,z)
00091    Double_t x, y;
00092    uv2xy(det,uvz.X(),uvz.Y(),x,y);
00093    return TVector3(x,y,uvz.Z());
00094 }

void Ugli::xy2uv Detector::Detector_t  det,
Float_t  x,
Float_t  y,
Float_t &  u,
Float_t &  v
 

Definition at line 68 of file Ugli.cxx.

References XYisUV().

00070 {
00071    // convert from world (x,y) to detector (u,v)
00072    if (XYisUV(det)) { u=x, v=y; return; }
00073    u = ( x + y ) * Ugli::r_sqrt2;
00074    v = (-x + y ) * Ugli::r_sqrt2;
00075 }

void Ugli::xy2uv Detector::Detector_t  det,
Double_t  x,
Double_t  y,
Double_t &  u,
Double_t &  v
 

Definition at line 78 of file Ugli.cxx.

References XYisUV().

Referenced by UgliGeomHandle::xy2uv(), and xyz2uvz().

00080 {
00081    // convert from world (x,y) to detector (u,v)
00082    if (XYisUV(det)) { u=x, v=y; return; }
00083    u = ( x + y ) * Ugli::r_sqrt2;
00084    v = (-x + y ) * Ugli::r_sqrt2;
00085 }

bool XYisUV Detector::Detector_t  det  )  [inline]
 

Definition at line 46 of file Ugli.h.

Referenced by uv2xy(), and xy2uv().

00047                { return (Detector::kCalDet == det); } // of three detectors ...

TVector3 Ugli::xyz2uvz Detector::Detector_t  det,
const TVector3 &  xyz
 

Definition at line 97 of file Ugli.cxx.

References xy2uv().

Referenced by UgliStripHandle::GlobalPos(), UgliStripHandle::LocalToGlobal(), UgliSteelPlnHandle::LocalToGlobal(), UgliScintPlnHandle::LocalToGlobal(), UgliScintMdlHandle::LocalToGlobal(), UgliSteelPlnHandle::LocalToGlobalVect(), and UgliGeomHandle::xyz2uvz().

00098 {
00099    // convert from world (x,y,z) to detector (u,v,z)
00100    Double_t u, v;
00101    xy2uv(det,xyz.X(),xyz.Y(),u,v);
00102    return TVector3(u,v,xyz.Z());
00103 }


Variable Documentation

const Double_t Ugli::deg2rad = pi / 180. [static]
 

Definition at line 68 of file Ugli.h.

EModifyMode Ugli::fDefaultModifyMode = Ugli::kFrozen [static]
 

Definition at line 35 of file Ugli.h.

const Double_t Ugli::pi = 3.14159265358979323846 [static]
 

Definition at line 66 of file Ugli.h.

const Double_t Ugli::r_sqrt2 = 7.07106781186547462e-01 [static]
 

Definition at line 69 of file Ugli.h.

const Double_t Ugli::rad2deg = 180. / pi [static]
 

Definition at line 67 of file Ugli.h.


Generated on Thu Nov 1 12:02:23 2007 for loon by  doxygen 1.3.9.1