00001 // $Id: ActiveDistance.h,v 1.2 2001/05/23 13:19:47 burnett Exp $ 00002 // 00003 // Original author: Sawyer Gillespie 00004 // hgillesp@u.washington.edu 00005 // 00006 00007 #ifndef _H_ActiveDistance_reconstruction_ 00008 #define _H_ActiveDistance_reconstruction_ 00009 00010 // include super-class 00011 #include "reconstruction/ReconAnalysis.h" 00012 00013 // class ActiveDistance 00019 class ActiveDistance : public ReconAnalysis { 00020 public: 00021 00022 // class Result 00023 // This encapsulates the result for the ActiveDistance 00024 // analysis. 00025 class Result : public ReconAnalysis::Result { 00026 public: 00027 // constructor 00028 Result ( double _activeDistance ); 00029 00030 // destructor 00031 virtual ~Result () {} 00032 00033 // access the track veto border 00034 double activeDistance () const; 00035 00036 protected: 00037 // set the veto border 00038 void activeDistance ( double ); 00039 00040 // declare ActiveDistance a friend 00041 friend class ActiveDistance; 00042 00043 private: 00044 double m_activeDistance; // storage of the veto border 00045 }; 00046 00047 // construction 00048 ActiveDistance (GlastRecon*); 00049 00050 // destructor 00051 virtual ~ActiveDistance (); 00052 00053 // perform the computation 00054 virtual void compute (); 00055 00056 // access the Result 00057 const Result* result () const; 00058 00059 protected: 00060 00061 // set up the data declarations 00062 virtual void setUpData (); 00063 00064 private: 00065 // data members 00066 00067 LbldData::iterator i_activeDist; // the active distance parameter 00068 00069 }; 00070 00071 // inline declarations 00072 00073 // ActiveDistance::Result class 00074 00075 inline ActiveDistance::Result::Result ( double _activeDistance ) 00076 : m_activeDistance (_activeDistance) 00077 { 00078 } 00079 00080 inline double ActiveDistance::Result::activeDistance () const 00081 { 00082 return m_activeDistance; 00083 } 00084 00085 inline void ActiveDistance::Result::activeDistance ( double c ) 00086 { 00087 m_activeDistance = c; 00088 } 00089 00090 // ActiveDistance class 00091 00092 inline const ActiveDistance::Result* ActiveDistance::result () const 00093 { 00094 return static_cast<const Result*>(ReconAnalysis::result()); 00095 } 00096 00097 #endif // _H_ActiveDistance_reconstruction_
1.2.3 written by Dimitri van Heesch,
© 1997-2000