00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef TMDCUtil_FLAG_
00014 #define TMDCUtil_FLAG_
00015
00016 #ifdef TRKRECO_DEBUG_DETAIL
00017 #ifndef TRKRECO_DEBUG
00018 #define TRKRECO_DEBUG
00019 #endif
00020 #endif
00021
00022 #include <string>
00023
00024 #define HEP_SHORT_NAMES
00025 #ifndef CLHEP_POINT3D_H
00026 #include "CLHEP/Geometry/Point3D.h"
00027 #endif
00028 #ifndef ENABLE_BACKWARDS_COMPATIBILITY
00029 typedef HepGeom::Point3D<double> HepPoint3D;
00030 #endif
00031
00032 #include "CLHEP/Alist/AList.h"
00033
00034 class TMLink;
00035 class TMDCWire;
00036 class TMDCWireHit;
00037 class TSegment;
00038
00039
00040
00041 class MdcGeoWire;
00042 class MdcGeoLayer;
00043
00045 extern const HepPoint3D ORIGIN;
00046
00048
00049
00051 double chisq2confLevel(int, double);
00052
00054
00055
00056 float CathodeSectorId(unsigned id);
00057
00058
00059
00061
00062 int sortByWireId(const TMDCWireHit ** a, const TMDCWireHit ** b);
00063
00064
00065
00067
00068 int intersection(const HepPoint3D & c1,
00069 double r1,
00070 const HepPoint3D & c2,
00071 double r2,
00072 double eps,
00073 HepPoint3D & x1,
00074 HepPoint3D & x2);
00075
00077 void bitDisplay(unsigned);
00078 void bitDisplay(unsigned val, unsigned firstDigit, unsigned lastDigit);
00079
00080
00081
00082 #ifdef TMDCUtil_NO_INLINE
00083 #define inline
00084 #else
00085 #undef inline
00086 #define TMDCUtil_INLINE_DEFINE_HERE
00087 #endif
00088
00089 #ifdef TMDCUtil_INLINE_DEFINE_HERE
00090
00091
00092 #endif
00093
00094 #undef inline
00095
00096 #endif
00097