/data3/calcul/jacquem/working_dir/Micromegas/micromegasFrameWork/lcio/src/cpp/src/IMPL/TrackerHitImpl.cc

Go to the documentation of this file.
00001 #include "IMPL/TrackerHitImpl.h"
00002 #include "EVENT/LCIO.h"
00003 #include "UTIL/LCWarning.h"
00004 
00005 using namespace EVENT ;
00006 
00007 namespace IMPL {
00008   
00009   TrackerHitImpl::TrackerHitImpl() :
00010     _type(0),
00011     //_dEdx(0),
00012     _EDep(0),
00013     _EDepError(0),
00014     _time(0),
00015     _quality(0) {
00016     _pos[0] = 0. ;
00017     _pos[1] = 0. ;
00018     _pos[2] = 0. ;
00019     
00020     _cov.resize( TRKHITNCOVMATRIX ) ;
00021     //     for(int i=0;i<TRKHITNCOVMATRIX;i++){
00022     //       _cov.push_back(0.0) ;
00023     //     }
00024   }
00025   
00026   TrackerHitImpl::~TrackerHitImpl(){  
00027   } 
00028 
00029   const double* TrackerHitImpl::getPosition() const {  return _pos ; } 
00030 
00031   const FloatVec & TrackerHitImpl::getCovMatrix() const {
00032     return _cov ;
00033   }
00034 
00035   // DEPRECATED. use getEDep()
00036   float TrackerHitImpl::getdEdx() const {
00037 
00038       UTIL::LCWarning::getInstance().printWarning( "TRACKERHIT_DEPRECATED_GETDEDX" ) ;
00039 
00040       //return _dEdx ;
00041       return getEDep();
00042   }
00043 
00044   float TrackerHitImpl::getTime() const { return _time ; }
00045 
00046 
00047   const EVENT::LCObjectVec & TrackerHitImpl::getRawHits() const {
00048     return _rawHits ;
00049   }
00050 
00051   EVENT::LCObjectVec & TrackerHitImpl::rawHits() {
00052     checkAccess("TrackerHitImpl::rawHits") ;
00053     return _rawHits ;
00054   }
00055 
00056 //   const std::string & TrackerHitImpl::getType() const {
00057 //     static std::string tpcHitType( LCIO::TPCHIT ) ;
00058 //     static std::string unknown( "Unknown" ) ;
00059 //     TPCHit* tpchit = dynamic_cast<TPCHit*>( _rawHit ) ;
00060 //     if( tpchit != 0 ) 
00061 //       return tpcHitType ;
00062 //     else
00063 //       return unknown ;
00064 //   }
00065 
00066   int TrackerHitImpl::getType() const {
00067     return _type ;
00068   }
00069 
00070 
00071   void TrackerHitImpl::setType(int type) { 
00072     checkAccess("TrackerHitImpl::setType") ;
00073     _type= type ; 
00074   }
00075 
00076   void TrackerHitImpl::setPosition( double pos[3]){ 
00077     checkAccess("TrackerHitImpl::setPosition") ;
00078     _pos[0] = pos[0] ; 
00079     _pos[1] = pos[1] ; 
00080     _pos[2] = pos[2] ; 
00081   }
00082 
00083   // DEPRECATED. use setEDep()
00084   void TrackerHitImpl::setdEdx( float dedx )  {
00085 
00086     UTIL::LCWarning::getInstance().printWarning( "TRACKERHIT_DEPRECATED_SETDEDX" ) ;
00087 
00088     //checkAccess("TrackerHitImpl::setdEdx") ;
00089     //_dEdx = dedx ; 
00090     setEDep( dedx ) ;
00091   }
00092 
00093   void TrackerHitImpl::setEDep( float e )  { 
00094     checkAccess("TrackerHitImpl::setEDep") ;
00095     _EDep = e ; 
00096   }
00097 
00098   void TrackerHitImpl::setEDepError( float e )  { 
00099     checkAccess("TrackerHitImpl::setEDepError") ;
00100     _EDepError = e ; 
00101   }
00102 
00103   void TrackerHitImpl::setTime( float t )  { 
00104     checkAccess("TrackerHitImpl::setTime") ;
00105     _time = t ; 
00106   }
00107 
00108   void TrackerHitImpl::setQuality( int quality )  { 
00109     checkAccess("TrackerHitImpl::setQuality") ;
00110     _quality = quality ; 
00111   }
00112 
00113   void TrackerHitImpl::setQualityBit( int bit , bool val ) {
00114     checkAccess("TrackerHitImpl::setQuality") ;
00115 
00116     if( val )
00117       _quality |=  ( 1 << bit )  ;
00118     else
00119       _quality &= ~( 1 << bit ) ;
00120   }
00121 
00122   void TrackerHitImpl::setCovMatrix( const FloatVec& cov ){
00123     checkAccess("TrackerHitImpl::setCovMatrix") ;
00124     for(int i=0;i<TRKHITNCOVMATRIX;i++){
00125       _cov[i] = cov[i] ;
00126     }
00127   }
00128   void TrackerHitImpl::setCovMatrix( float cov[TRKHITNCOVMATRIX]  ){
00129     checkAccess("TrackerHitImpl::setCovMatrix") ;
00130     for(int i=0;i<TRKHITNCOVMATRIX;i++){
00131       _cov[i] = cov[i] ;
00132     }
00133   }
00134 
00135 
00136 } // namespace IMPL

Generated on Mon Jan 7 13:15:21 2013 for MicromegasFramework by  doxygen 1.4.7