00001 //-------------------------------------------------------------------------- 00002 // File and Version Information: 00003 // $Id: TrkTypeUtil.cxx,v 1.1.1.1 2005/04/21 06:01:42 zhangy Exp $ 00004 // 00005 // Description: 00006 // Class TrkTypeUtil 00007 // 00008 // Environment: 00009 // Software developed for BaBar expirment @ SLAC B-Factory 00010 // 00011 // Author List: 00012 // Eric A Charles 00013 // 00014 // Copyright Information: 00015 // Copyright (C) 1998 Univ. Wisconsin-Madison 00016 // 00017 //------------------------------------------------------------------------ 00018 00019 //---------------- 00020 // BaBar header 00021 //---------------- 00022 //#include "BaBar/BaBar.hh" 00023 00024 //----------------------- 00025 // This Class's Header -- 00026 //----------------------- 00027 #include "TrkBase/TrkTypeUtil.h" 00028 00029 //------------- 00030 // C Headers -- 00031 //------------- 00032 extern "C" { 00033 } 00034 00035 //--------------- 00036 // C++ Headers -- 00037 //--------------- 00038 00039 //------------------------------- 00040 // Collaborating Class Headers -- 00041 //------------------------------- 00042 00043 #include "TrkBase/TrkRecoTrk.h" 00044 #include "TrkBase/TrkRep.h" 00045 #include "TrkBase/TrkFitTypeKey.h" 00046 #include "TrkBase/TrkHitList.h" 00047 00048 //----------------------------------------------------------------------- 00049 // Local Macros, Typedefs, Structures, Unions and Forward Declarations -- 00050 //----------------------------------------------------------------------- 00051 00052 00053 00054 // ----------------------------------------------- 00055 // -- Static Data & Function Member Definitions -- 00056 // ----------------------------------------------- 00057 00058 const TrkRep* 00059 TrkTypeUtil::getRep( const TrkRecoTrk& aTrk, 00060 const PdtPid::PidType& pid){ 00061 return pid != PdtPid::null ? aTrk.testRep(pid) 00062 : aTrk.testRep(aTrk.defaultType()); 00063 } 00064 00065 const TrkHitList* 00066 TrkTypeUtil::getHits( const TrkRecoTrk& aTrk, 00067 const PdtPid::PidType& pid){ 00068 return pid != PdtPid::null ? aTrk.hits(pid) 00069 : aTrk.hits(aTrk.defaultType()); 00070 } 00071 00072 const TrkRep* 00073 TrkTypeUtil::getRep( const TrkRecoTrk& aTrk, 00074 const TrkFitTypeKey& key ){ 00075 return getRep( aTrk, key.pidType() ); 00076 } 00077 00078 const TrkHitList* 00079 TrkTypeUtil::getHits( const TrkRecoTrk& aTrk, 00080 const TrkFitTypeKey& key ){ 00081 return getHits( aTrk, key.pidType() ); 00082 } 00083 00084 PdtPid::PidType 00085 TrkTypeUtil::pidType( const TrkRecoTrk& aTrk, 00086 const TrkFitTypeKey& key ){ 00087 return key.pidType() != PdtPid::null ? key.pidType() 00088 : aTrk.defaultType(); 00089 } 00090