FiletoActor.h

Go to the documentation of this file.
00001 /* $Id: FiletoActor.h,v 1.19 2005/10/26 11:47:29 pfb Exp $ */
00002 
00003 #ifndef _FiletoActor_h
00004 #define _FiletoActor_h
00005 
00010 #include "../../Common/Utility/Misc/GoNogo.h"
00011 #include "../../C++/Common/DataSource/FiletoPoly/FiletoPoly.h"
00012 #include "../../Common/Observer/Subject.h"
00013 #include "../../Common/Utility/Misc/GoNogo.h"
00014 #include <vtkObject.h>
00015 #include <vtkActor.h>
00016 #include <vtkPolyDataMapper.h>
00017 #include <vtkPolyData.h>
00018 #include <string>
00019 
00020 //class vtkActor;
00021 //class vtkPolyDataMapper;
00022 //class vtkPolyData;
00023 //class FiletoPoly;
00024 
00030 class FiletoActor : public GoNogo, public vtkObject
00031   {
00032   //****************************************************************************
00033                              public:
00034 
00035 
00041   static FiletoActor *New();
00042 
00046   vtkTypeMacro(FiletoActor, vtkObject);
00047 
00053   void PrintSelf(ostream& os, vtkIndent indent);
00054 
00065   void decimate(float arg);
00066 
00071   float decimate() const;
00072     
00077   vtkActor *actor() const;
00078   
00083   vtkPolyDataMapper *mapper() const;
00084 
00085 
00090   virtual void SetFileName(const char *pathname);
00091 
00096   virtual void SetFileName(const std::string pathname);
00097 
00104   vtkPolyData *GetOutput() const;
00105 
00112   vtkPolyData *GetDecimatedOutput() const;
00113 
00122   void SetInput(vtkPolyData *input);
00123 
00128   vtkPolyData *GetInput() const;
00129 
00134   std::string inputType() const;
00135 
00139   virtual void ReleaseDataFlagOn();
00140   
00144   virtual void ReleaseDataFlagOff();
00145 
00150   virtual void SetReleaseDataFlag(int dynamic);
00151 
00156  virtual int GetReleaseDataFlag();
00157 
00162   void DebugOn();
00163 
00168   void DebugOff();
00169 
00170   //****************************************************************************
00171                              protected:
00172 
00176   FiletoActor();
00177 
00181   virtual ~FiletoActor();
00182 
00189   void constructDataflow();
00190 
00194   FiletoPoly *_dataflow;
00195 
00199   vtkPolyDataMapper *_mapper;
00200 
00204   vtkActor *_actor;
00205 
00206   //****************************************************************************
00207                              private:
00208 
00212   FiletoActor(const FiletoActor&);
00213   FiletoActor& operator=(const FiletoActor&);
00214 
00215   int memmanagejk;
00216   };
00217 
00218 /*
00219  * $Log: FiletoActor.h,v $
00220  * Revision 1.19  2005/10/26 11:47:29  pfb
00221  * Fixed doxygen tags.
00222  *
00223  * Revision 1.18  2005/06/10 07:49:02  pfb
00224  * Changes made as a result of dev. machine update from woody to sarge.
00225  * Most of the changes are because of the upgrade from gcc-2.95 to gcc-3.3.
00226  *
00227  * Revision 1.17  2005/05/10 17:08:00  pfb
00228  * Added module info.
00229  *
00230  * Revision 1.16  2004/11/09 03:47:30  pfb
00231  * Documentation change.
00232  *
00233  * Revision 1.15  2003/07/09 06:52:46  pfb
00234  * Removed inheritance from Subject. Now gets this via GoNogo.
00235  *
00236  * Revision 1.14  2003/05/14 03:51:17  pfb
00237  * Added test for window instantiated.
00238  *
00239  * Revision 1.13  2003/05/12 19:25:42  pfb
00240  * Added ReleaseDataFlagOn(), ReleaseDataFlagOff(), SetReleaseDataFlag()
00241  * and GetReleaseDataFlag().
00242  *
00243  * Revision 1.12  2003/02/26 05:03:50  pfb
00244  * Made this class a Subject.
00245  *
00246  * Revision 1.11  2003/02/21 15:07:57  pfb
00247  * Added GetInput(). Fixed decimate() to give correct value under all
00248  * conditions.
00249  *
00250  * Revision 1.10  2003/01/25 13:43:57  pfb
00251  * This class is a GoNogo instead of just having one.
00252  *
00253  * Revision 1.9  2002/11/15 14:48:33  pfb
00254  * Modified the decimate() functions so that the factor may now be specified.
00255  *
00256  * Revision 1.8  2002/10/25 13:50:15  pfb
00257  * Added debugging functionality.
00258  *
00259  * Revision 1.7  2002/07/06 05:28:37  pfb
00260  * Added SetFileName(const string).
00261  *
00262  * Revision 1.6  2002/07/04 08:50:30  pfb
00263  * Forbit copying.
00264  *
00265  * Revision 1.5  2002/04/21 14:50:43  pfb
00266  * This class is now a Vtk type object. This is necessary so that the WrapTcl
00267  * and WrapJAva etc work (and its a good thing anyway).
00268  *
00269  * Revision 1.4  2002/04/14 16:24:37  pfb
00270  * Fixed member var initialization and added dtor - just as it should be.
00271  *
00272  * Revision 1.3  2002/04/13 16:13:34  pfb
00273  * Added comment.
00274  *
00275  * Revision 1.2  2002/04/13 16:11:51  pfb
00276  * Compiles. Needs testing?
00277  *
00278  * Revision 1.1  2002/04/09 14:31:30  pfb
00279  * Initial rev. Work in progress.
00280  *
00281  *
00282  */
00283 
00287 #endif