00001
00002
00003
00004
00005
00006
00007 #ifndef _H_TrackerVeto_reconstruction_
00008 #define _H_TrackerVeto_reconstruction_
00009
00010
00011 #include "reconstruction/ReconAnalysis.h"
00012
00013
00014 class GFTrack;
00015
00016
00025 class TrackerVeto : public ReconAnalysis {
00026 public:
00027
00028
00029
00030
00031 class Result : public ReconAnalysis::Result {
00032 public:
00033
00034 Result ( float _code, double _xsigma, double _ysigma );
00035
00036
00037 virtual ~Result () {}
00038
00039
00040 float code () const;
00041
00042
00043 double xsigma () const;
00044
00045
00046 double ysigma () const;
00047
00048 protected:
00049
00050 void code ( float );
00051
00052
00053 void xsigma ( double );
00054
00055
00056 void ysigma ( double );
00057
00058
00059 friend class TrackerVeto;
00060
00061 private:
00062 float m_vetocode;
00063 double m_xsigma;
00064 double m_ysigma;
00065 };
00066
00067
00068 TrackerVeto (GlastRecon*);
00069
00070
00071 virtual ~TrackerVeto ();
00072
00073
00074 virtual void compute ();
00075
00076
00077 const Result* result () const;
00078
00079 protected:
00080
00081 virtual void setUpData ();
00082
00083 private:
00084
00085
00086 LbldData::iterator i_trkVeto_code;
00087
00088 LbldData::iterator i_trkVeto_Xsigma;
00089 LbldData::iterator i_trkVeto_Ysigma;
00090 };
00091
00092
00093
00094
00095
00096 inline TrackerVeto::Result::Result ( float _code, double _xsigma, double _ysigma )
00097 : m_vetocode (_code), m_xsigma (_xsigma), m_ysigma (_ysigma)
00098 {
00099 }
00100
00101 inline float TrackerVeto::Result::code () const
00102 {
00103 return m_vetocode;
00104 }
00105
00106 inline double TrackerVeto::Result::xsigma () const
00107 {
00108 return m_xsigma;
00109 }
00110
00111 inline double TrackerVeto::Result::ysigma () const
00112 {
00113 return m_ysigma;
00114 }
00115
00116 inline void TrackerVeto::Result::code ( float c )
00117 {
00118 m_vetocode = c;
00119 }
00120
00121 inline void TrackerVeto::Result::xsigma ( double s )
00122 {
00123 m_xsigma = s;
00124 }
00125
00126 inline void TrackerVeto::Result::ysigma ( double s )
00127 {
00128 m_ysigma = s;
00129 }
00130
00131
00132
00133 inline const TrackerVeto::Result* TrackerVeto::result () const
00134 {
00135 return static_cast<const Result*>(ReconAnalysis::result());
00136 }
00137
00138 #endif // _H_TrackerVeto_reconstruction_