Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

TowerBoundaries.h

Go to the documentation of this file.
00001 // $Id: TowerBoundaries.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_TowerBoundaries_reconstruction_
00008 #define _H_TowerBoundaries_reconstruction_
00009 
00010 // include super-class
00011 #include "reconstruction/ReconAnalysis.h"
00012 
00013 // forward declarations
00014 class   GFTrack;
00015 
00016 // class TowerBoundaries
00025 class   TowerBoundaries : public ReconAnalysis {
00026 public:
00027     
00028     // class Result
00029     //  This encapsulates the result for the TowerBoundaries
00030     //  analysis.
00031     class   Result : public ReconAnalysis::Result {
00032     public:
00033         // constructor
00034         Result ( double _border, double _fitxv, double _fityv );
00035         
00036         // destructor
00037         virtual ~Result () {}
00038         
00039         // access the track veto border
00040         double   border () const;
00041         
00042         // access the x-sigma ?
00043         double  fitxv () const;
00044 
00045         // access the y-sigma ?
00046         double  fityv () const;
00047         
00048     protected:
00049         // set the veto border
00050         void    border ( double );
00051 
00052         // set the x-sigma ?
00053         void    fitxv ( double );
00054 
00055         // set the y-sigma ?
00056         void    fityv ( double );
00057 
00058         // declare TowerBoundaries a friend
00059         friend class TowerBoundaries;
00060         
00061     private:
00062         double  m_trkborder; // storage of the veto border
00063         double  m_fitxv;   // storage of the x-sigma
00064         double  m_fityv;   // storage of the y-sigma
00065     };
00066     
00067     // construction
00068     TowerBoundaries (GlastRecon*);
00069     
00070     // destructor
00071     virtual ~TowerBoundaries ();
00072     
00073     // perform the computation
00074     virtual void    compute ();
00075 
00076     // access the Result
00077     const Result*   result () const;
00078        
00079 protected:
00080     // set up data storage iterators
00081     virtual void    setUpData ();
00082         
00083 private:
00084     // data members
00085     
00086     LbldData::iterator i_Tower_Bnd;    // the tower boundary parameter
00087     LbldData::iterator i_Fit_xv;       // x border parameter
00088     LbldData::iterator i_Fit_yv;       // y border parameter
00089 };
00090 
00091 // inline declarations
00092 
00093 // TowerBoundaries::Result class
00094 
00095 inline TowerBoundaries::Result::Result ( double _border, double _fitxv, double _fityv )
00096 : m_trkborder (_border), m_fitxv (_fitxv), m_fityv (_fityv)
00097 {
00098 }
00099 
00100 inline double TowerBoundaries::Result::border () const 
00101 {
00102     return m_trkborder;
00103 }
00104 
00105 inline double TowerBoundaries::Result::fitxv () const
00106 {
00107     return m_fitxv;
00108 }
00109 
00110 inline double TowerBoundaries::Result::fityv () const
00111 {
00112     return m_fityv;
00113 }
00114 
00115 inline void TowerBoundaries::Result::border ( double c )
00116 {
00117     m_trkborder = c;
00118 }
00119 
00120 inline void TowerBoundaries::Result::fitxv ( double s )
00121 {
00122     m_fitxv = s;
00123 }
00124 
00125 inline void TowerBoundaries::Result::fityv ( double s )
00126 {
00127     m_fityv = s;
00128 }
00129 
00130 // TowerBoundaries class
00131 
00132 inline const TowerBoundaries::Result*  TowerBoundaries::result () const
00133 {
00134     return static_cast<const Result*>(ReconAnalysis::result());
00135 }
00136 
00137 #endif  // _H_TowerBoundaries_reconstruction_

Generated at Wed Nov 21 12:20:45 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000