regioncl.h

Go to the documentation of this file.
00001 /**
00002  * \file rvc/regioncl.h 
00003  * \brief interface for the RVC::REGION class.
00004  *
00005  * \if NODOC
00006  * $Id: regioncl.h_v 1.12 2004/06/25 16:12:26 scowan Exp $
00007  *
00008  * $Log: regioncl.h_v $
00009  * Revision 1.12  2004/06/25 16:12:26  scowan
00010  * Uses correct region class.
00011  *
00012  * Revision 1.11  2003/10/07 17:30:43  scowan
00013  * Object virtual method changes.
00014  *
00015  * Revision 1.10  2003/09/30 16:52:06  dwilliss
00016  * Doxygen
00017  *
00018  * Revision 1.9  2003/09/25 21:20:04  dwilliss
00019  * Fixed doxygen comment
00020  *
00021  * Revision 1.8  2003/09/15 13:49:45  fileserver!dwilliss
00022  * Doxygen
00023  *
00024  * Revision 1.7  2003/05/30 22:06:31  scowan
00025  * Added a get extentsd method.
00026  *
00027  * Revision 1.6  2002/12/10 18:14:59  scowan
00028  * Added region 2d code.
00029  *
00030  * Revision 1.5  2001/06/14 15:26:24  scowan
00031  * Added to RVC namespace.
00032  *
00033  * Revision 1.4  2000/12/01 16:08:28  scowan
00034  * Fixed MAC and i18n errors.
00035  *
00036  * Revision 1.3  2000/11/29 20:52:50  scowan
00037  * Fixed inclusion guards.
00038  *
00039  * Revision 1.2  2000/10/19 21:14:40  scowan
00040  * Checked in for vacation.
00041  *
00042  * Revision 1.1  2000/09/29 20:15:44  scowan
00043  * Initial revision
00044  *
00045  * \endif
00046 **/
00047 
00048 //!   \class RVC::REGION rvc/regioncl.h
00049 //!   \brief Manages RVC::OBJTYPE_Region RVC objects.  
00050 //!   
00051 //!   The interface currently wraps the MfRegion functions.
00052 //!
00053 //!   RVC Object Types that this class supports: RVC::OBJTYPE_Region.
00054 //!
00055 //!   Default RVC Object Type for this class: RVC::OBJTYPE_Region.
00056 //!
00057 //!   Valid parents for this class:
00058 //!      - RVC::OBJTYPE_File
00059 //!      - RVC::OBJTYPE_Folder
00060 //!      - RVC::OBJTYPE_Vector
00061 //!      - RVC::OBJTYPE_TIN
00062 //!      - RVC::OBJTYPE_CAD
00063 //!      - RVC::OBJTYPE_Raster
00064 //!      - RVC::OBJTYPE_RasterSet
00065 //!      - RVC::OBJTYPE_Hyperspectral
00066 //!
00067 //!   Read(), Make() and Write() methods inherited from RVCSIMPLE class.  View RVCSIMPLE docs for inherited methods
00068 
00069 #ifndef INC_RVC_REGIONCL_H
00070 #define INC_RVC_REGIONCL_H
00071 
00072 #ifndef INC_RVC_SIMPLE_H
00073    #include <rvc/simple.h>
00074 #endif
00075 
00076 #ifndef INC_MI32_REGION2D_H
00077    #include <mi32/region2d.h>
00078 #endif
00079 
00080 // Forward Declarations
00081 namespace SPATREF {
00082    class COORDREFSYS;
00083    }
00084 
00085 namespace RVC {
00086 
00087 class REGION : public RVC::SIMPLE {
00088    public:
00089 
00090       //! Default constructor
00091       REGION (
00092          );
00093 
00094       //! Copy constructor
00095       REGION (
00096          const RVC::REGION& rhs
00097          );
00098 
00099       //! Destructor
00100       virtual ~REGION (
00101          );
00102 
00103       //! Assignment
00104       RVC::REGION& operator= (
00105          const RVC::REGION& rhs
00106          );
00107 
00108       //! Get region extents.
00109       //! @return Region's extents
00110       const DRECT2D& GetExtents (
00111          ) const;
00112 
00113       //! Get region COORDREFSYS
00114       //! @return Region's COORDREFSYS
00115       const SPATREF::COORDREFSYS& GetCoordRefSys ( 
00116          ) const;
00117 
00118       //! Obtain region, must be read first
00119       //! @return Region reference
00120       const REGION2D& GetRegion (
00121          ) const;
00122 
00123       //! Set the current region to a new region
00124       ERRVALUE SetRegion (
00125          const REGION2D& region
00126          );
00127 
00128    private:
00129       #ifndef GENERATING_DOXYGEN_OUTPUT
00130 
00131       //! Implementation of RVC::OBJECT virtual methods
00132       virtual OBJTYPE v_GetDftObjectType () const;
00133       
00134       //! Implementation of RVC::SIMPLE virtual methods
00135       virtual ERRVALUE v_GetDftNameDesc (const OBJECT& parent, OBJECTNAME& name, OBJECTDESC& desc);
00136       virtual ERRVALUE v_ReadData ();
00137       virtual ERRVALUE v_WriteData (const RVCGENINFO& ginfo);
00138 
00139       REGION2D m_Region;
00140       #endif // GENERATING_DOXYGEN_OUTPUT
00141    };
00142 
00143 }     //! End of RVC namespace
00144 
00145 #endif      //!< INC_RVC_REGIONCL_H

Generated on Tue Dec 14 13:18:52 2004 for TNTsdk by  doxygen 1.3.8-20040913