StHbtMaker/Infrastructure/StHbtKink.hh

00001 /*********************************************************************** 00002 * 00003 * $Id: StHbtKink.hh,v 1.4 2003/09/02 17:58:32 perev Exp $ 00004 * 00005 * Author: Mike Lisa, Ohio State, 23May2001 00006 * 00007 *********************************************************************** 00008 * 00009 * Description: Kink class with information gotten from the StKinkVertex 00010 * of Wenshen Deng and Spiros Margetis 00011 * 00012 *********************************************************************** 00013 * 00014 * $Log: StHbtKink.hh,v $ 00015 * Revision 1.4 2003/09/02 17:58:32 perev 00016 * gcc 3.2 updates + WarnOff 00017 * 00018 * Revision 1.3 2001/11/14 21:07:21 lisa 00019 * Fixed several small things (mostly discarded const) that caused fatal errors with gcc2.95.3 00020 * 00021 * Revision 1.2 2001/06/21 19:15:46 laue 00022 * Modified fiels: 00023 * CTH.hh : new constructor added 00024 * StHbtEvent, StHbtKink, StHbtTrack : constructors from the persistent 00025 * (TTree) classes added 00026 * StHbtLikeSignAnalysis : minor changes, for debugging 00027 * StHbtTypes: split into different files 00028 * Added files: for the new TTree muDst's 00029 * StExceptions.cxx StExceptions.hh StHbtEnumeration.hh 00030 * StHbtHelix.hh StHbtHisto.hh StHbtString.hh StHbtTFile.hh 00031 * StHbtTTreeEvent.cxx StHbtTTreeEvent.h StHbtTTreeKink.cxx 00032 * StHbtTTreeKink.h StHbtTTreeTrack.cxx StHbtTTreeTrack.h 00033 * StHbtTTreeV0.cxx StHbtTTreeV0.h StHbtVector.hh 00034 * 00035 * Revision 1.1 2001/05/25 23:23:59 lisa 00036 * Added in StHbtKink stuff 00037 * 00038 * 00039 * 00040 ***********************************************************************/ 00041 #ifndef StHbtKink_hh 00042 #define StHbtKink_hh 00043 00044 class StKinkVertex; 00045 class StHbtTTreeEvent; 00046 class StHbtTTreeKink; 00047 //#include "StEvent/StKinkVertex.h" // from StEvent 00048 #include "StHbtMaker/Infrastructure/StHbtTrack.hh" 00049 00050 #include "Stiostream.h" 00051 #include "StHbtMaker/Infrastructure/StHbtTypes.hh" //same as in StHbtTrack.hh 00052 00053 class StHbtKink { 00054 public: 00055 StHbtKink(){/* no-op */} 00056 StHbtKink( const StHbtKink&); // copy constructor 00057 #ifdef __ROOT__ 00058 StHbtKink( const StKinkVertex&, StHbtThreeVector PrimaryVertex); // create a StHbtKink from a StKinkVertex 00059 StHbtKink( const StHbtTTreeEvent*, const StHbtTTreeKink*); 00060 #endif 00061 ~StHbtKink(){/* no-op */} 00062 00063 // Get's 00064 float DcaParentDaughter() const; 00065 float DcaDaughterPrimaryVertex() const; 00066 float DcaParentPrimaryVertex() const; 00067 float HitDistanceParentDaughter() const; 00068 float HitDistanceParentVertex() const; 00069 float DeltaEnergy(int i=0) const; 00070 float DecayAngle() const; 00071 float DecayAngleCM() const; 00072 StHbtTrack Daughter() const; 00073 StHbtTrack Parent() const; 00074 StHbtThreeVector Position() const; 00075 00076 00077 friend ostream& operator<<(ostream& out, StHbtKink& kink); 00078 friend istream& operator>>(istream& in, StHbtKink& kink); 00079 00080 friend class StHbtIOBinary; 00081 friend class StHbtTTreeKink; 00082 00083 protected: 00084 00085 float mDcaParentDaughter; // from StKinkVertex class directly 00086 float mDcaDaughterPrimaryVertex; // from StKinkVertex class directly 00087 float mDcaParentPrimaryVertex; // from StKinkVertex class directly 00088 float mHitDistanceParentDaughter; // from StKinkVertex class directly 00089 float mHitDistanceParentVertex; // from StKinkVertex class directly 00090 float mDeltaEnergy[3]; // from StKinkVertex class directly 00091 float mDecayAngle; // from StKinkVertex class directly 00092 float mDecayAngleCM; // from StKinkVertex class directly 00093 StHbtTrack mDaughter; // from StKinkVertex class directly 00094 StHbtTrack mParent; // from StVertex class (which StKinkVertex inherits from) 00095 StHbtThreeVector mPosition; // from StMeasuredPoint class (which StVertex inherits from) 00096 00097 }; 00098 00099 // Get's 00100 inline float StHbtKink::DcaParentDaughter() const {return mDcaParentDaughter;} 00101 inline float StHbtKink::DcaDaughterPrimaryVertex() const {return mDcaDaughterPrimaryVertex;} 00102 inline float StHbtKink::DcaParentPrimaryVertex() const {return mDcaParentPrimaryVertex;} 00103 inline float StHbtKink::HitDistanceParentDaughter() const {return mHitDistanceParentDaughter;} 00104 inline float StHbtKink::HitDistanceParentVertex() const {return mHitDistanceParentVertex;} 00105 inline float StHbtKink::DeltaEnergy(int i) const {return mDeltaEnergy[i];} 00106 inline float StHbtKink::DecayAngle() const {return mDecayAngle;} 00107 inline float StHbtKink::DecayAngleCM() const {return mDecayAngleCM;} 00108 inline StHbtTrack StHbtKink::Daughter() const {return mDaughter;} 00109 inline StHbtTrack StHbtKink::Parent() const {return mParent;} 00110 inline StHbtThreeVector StHbtKink::Position() const {return mPosition;} 00111 00112 00113 00114 00115 #endif 00116 00117 00118 00119 00120 00121 00122 00123 00124 00125 00126 00127 00128 00129 00130 00131 00132 00133

Generated on Wed Mar 18 04:53:26 2009 for StRoot by doxygen 1.3.7