Quantum GIS API Documentation  1.8
src/analysis/interpolation/HalfEdge.h
Go to the documentation of this file.
00001 /***************************************************************************
00002                           HalfEdge.h  -  description
00003                              -------------------
00004     copyright            : (C) 2004 by Marco Hugentobler
00005     email                : [email protected]
00006  ***************************************************************************/
00007 
00008 /***************************************************************************
00009  *                                                                         *
00010  *   This program is free software; you can redistribute it and/or modify  *
00011  *   it under the terms of the GNU General Public License as published by  *
00012  *   the Free Software Foundation; either version 2 of the License, or     *
00013  *   (at your option) any later version.                                   *
00014  *                                                                         *
00015  ***************************************************************************/
00016 
00017 #ifndef HALFEDGE_H
00018 #define HALFEDGE_H
00019 
00020 class ANALYSIS_EXPORT HalfEdge
00021 {
00022   protected:
00024     int mDual;
00026     int mNext;
00028     int mPoint;
00030     bool mBreak;
00032     bool mForced;
00033 
00034   public:
00036     HalfEdge();
00037     HalfEdge( int dual, int next, int point, bool mbreak, bool forced );
00038     ~HalfEdge();
00040     int getDual() const;
00042     int getNext() const;
00044     int getPoint() const;
00046     bool getBreak() const;
00048     bool getForced() const;
00050     void setDual( int d );
00052     void setNext( int n );
00054     void setPoint( int p );
00056     void setBreak( bool b );
00058     void setForced( bool f );
00059 };
00060 
00061 inline HalfEdge::HalfEdge(): mDual( -10 ), mNext( -10 ), mPoint( -10 ), mBreak( false ), mForced( false )
00062 {
00063 
00064 }
00065 
00066 inline HalfEdge::HalfEdge( int dual, int next, int point, bool mbreak, bool forced ): mDual( dual ), mNext( next ), mPoint( point ), mBreak( mbreak ), mForced( forced )
00067 {
00068 
00069 }
00070 
00071 inline HalfEdge::~HalfEdge()
00072 {
00073 
00074 }
00075 
00076 inline int HalfEdge::getDual() const
00077 {
00078   return mDual;
00079 }
00080 
00081 inline int HalfEdge::getNext() const
00082 {
00083   return mNext;
00084 }
00085 
00086 inline int HalfEdge::getPoint() const
00087 {
00088   return mPoint;
00089 }
00090 
00091 inline bool HalfEdge::getBreak() const
00092 {
00093   return mBreak;
00094 }
00095 
00096 inline bool HalfEdge::getForced() const
00097 {
00098   return mForced;
00099 }
00100 
00101 inline void HalfEdge::setDual( int d )
00102 {
00103   mDual = d;
00104 }
00105 
00106 inline void HalfEdge::setNext( int n )
00107 {
00108   mNext = n;
00109 }
00110 
00111 inline void HalfEdge::setPoint( int p )
00112 {
00113   mPoint = p;
00114 }
00115 
00116 inline void HalfEdge::setBreak( bool b )
00117 {
00118   mBreak = b;
00119 }
00120 
00121 inline void HalfEdge::setForced( bool f )
00122 {
00123   mForced = f;
00124 }
00125 
00126 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines