ssGatherStrikes.h

Go to the documentation of this file.
00001 /* $Id: ssGatherStrikes.h,v 1.9 2005/10/26 12:13:31 pfb Exp $ */
00002 
00003 #ifndef _ssGatherStrikes_h
00004 #define _ssGatherStrikes_h
00005 
00010 #include <vtkPolyDataToPolyDataFilter.h>
00011 #include "BeamPoint.h"
00012 #include "PingPoint.h"
00013 #include <vector>
00014 
00015 class ssInstrumentParameters;
00016 
00021 class VTK_EXPORT ssGatherStrikes : public vtkPolyDataToPolyDataFilter
00022   {
00023   //****************************************************************************
00024                              public:
00030   static ssGatherStrikes *New();
00031 
00035   vtkTypeMacro(ssGatherStrikes, vtkPolyDataToPolyDataFilter);
00036 
00042   void PrintSelf(ostream& os, vtkIndent indent); 
00043 
00048   void SetLineInput(vtkPolyData *input);
00049 
00054   vtkPolyData *GetLineInput() const;
00055 
00060   void instrumentParameters(const ssInstrumentParameters *instrument); 
00061 
00066   bool eof() const; 
00067 
00068   //****************************************************************************
00069                              protected:
00070   
00074   ssGatherStrikes();
00075 
00079   ~ssGatherStrikes();
00080 
00084   void Execute();
00085 
00086   //****************************************************************************
00087                              private:
00091   ssGatherStrikes(const ssGatherStrikes&);
00092   ssGatherStrikes& operator=(const ssGatherStrikes&);
00093 
00094   vtkPolyData *line_input;
00095   const ssInstrumentParameters *instrument;
00096   double *beamtheta;
00097   double *tanbeamtheta;
00098   bool dirty;
00099   int cur_ping;
00100   std::vector<BeamPoint> output_points;
00101   std::vector<BeamPoint>::iterator cur_beam_itr;
00102   std::vector<PingPoint> output_pings;
00103   std::vector<PingPoint>::iterator cur_ping_itr;
00104   bool eofflag;
00105   };
00106 
00107 /*
00108  * $Log: ssGatherStrikes.h,v $
00109  * Revision 1.9  2005/10/26 12:13:31  pfb
00110  * Fixed doxygen tags.
00111  *
00112  * Revision 1.8  2005/06/10 07:49:02  pfb
00113  * Changes made as a result of dev. machine update from woody to sarge.
00114  * Most of the changes are because of the upgrade from gcc-2.95 to gcc-3.3.
00115  *
00116  * Revision 1.7  2005/05/11 11:40:12  pfb
00117  * Added module info.
00118  *
00119  * Revision 1.6  2001/12/11 11:57:30  pfb
00120  * Updated algorithm. It is probably not correct but need to move on to the
00121  * reader. Will return to this.
00122  *
00123  * Revision 1.5  2001/12/08 16:54:39  pfb
00124  * Re-did Execute().
00125  *
00126  * Revision 1.4  2001/11/30 11:14:42  pfb
00127  * Work in progress.
00128  *
00129  * Revision 1.3  2001/11/24 09:14:02  pfb
00130  * Work in progress.
00131  *
00132  * Revision 1.2  2001/11/17 09:55:37  pfb
00133  * Work in progress.
00134  *
00135  * Revision 1.1  2001/11/16 09:57:58  pfb
00136  * Work in progress.
00137  *
00138  *
00139  */
00140 
00144 #endif