00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef __HOM_Vertex_h__
00017 #define __HOM_Vertex_h__
00018
00019 #include "HOM_API.h"
00020 #include "HOM_Module.h"
00021 #include "HOM_PtrOrNull.h"
00022 #include "HOM_EnumValue.h"
00023 #include <vector>
00024 class HOM_Attrib;
00025 class HOM_Geometry;
00026 class HOM_Prim;
00027 class HOM_Point;
00028
00029 SWIGOUT(%rename(Vertex) HOM_Vertex;)
00030
00031 class HOM_API HOM_Vertex
00032 {
00033 public:
00034 HOM_Vertex()
00035 { HOM_CONSTRUCT_OBJECT(this) }
00036 HOM_Vertex(const HOM_Vertex &)
00037 { HOM_CONSTRUCT_OBJECT(this) }
00038 virtual ~HOM_Vertex()
00039 { HOM_DESTRUCT_OBJECT(this) }
00040
00041 virtual bool operator==(HOM_PtrOrNull<HOM_Vertex> vertex)
00042 throw(HOM_ObjectWasDeleted, HOM_Error) = 0;
00043 virtual bool operator!=(HOM_PtrOrNull<HOM_Vertex> vertex)
00044 throw(HOM_ObjectWasDeleted, HOM_Error) = 0;
00045
00046 virtual int __hash__() throw(HOM_Error) = 0;
00047 virtual std::string __repr__() throw(HOM_ObjectWasDeleted, HOM_Error) = 0;
00048
00049 SWIGOUT(%newobject geometry;)
00050 virtual HOM_Geometry *geometry() throw(HOM_ObjectWasDeleted, HOM_Error) = 0;
00051
00052 SWIGOUT(%newobject prim;)
00053 virtual HOM_Prim *prim() throw(HOM_ObjectWasDeleted, HOM_Error) = 0;
00054
00055 SWIGOUT(%newobject point;)
00056 virtual HOM_Point *point() throw(HOM_ObjectWasDeleted, HOM_Error) = 0;
00057
00058 virtual int number() throw(HOM_Error) = 0;
00059
00060 virtual HOM_EnumValue& attribType() throw(HOM_Error) = 0;
00061
00062
00063 virtual double floatAttribValue(const char *name)
00064 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00065
00066 virtual double floatAttribValue(HOM_Attrib &attrib)
00067 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00068
00069 virtual std::vector<double> floatListAttribValue(const char *name)
00070 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00071
00072 virtual std::vector<double> floatListAttribValue(HOM_Attrib &attrib)
00073 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00074
00075 virtual int intAttribValue(const char *name)
00076 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00077
00078 virtual int intAttribValue(HOM_Attrib &attrib)
00079 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00080
00081 virtual std::vector<int> intListAttribValue(const char *name)
00082 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00083
00084 virtual std::vector<int> intListAttribValue(HOM_Attrib &attrib)
00085 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00086
00087 virtual std::string stringAttribValue(const char *name)
00088 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00089
00090 virtual std::string stringAttribValue(HOM_Attrib &attrib)
00091 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00092
00093 virtual std::vector<std::string> stringListAttribValue(const char *name)
00094 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00095
00096 virtual std::vector<std::string> stringListAttribValue(HOM_Attrib &attrib)
00097 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error) = 0;
00098
00099
00100 virtual void setAttribValue(
00101 HOM_Attrib &attrib, int attrib_value)
00102 throw(HOM_OperationFailed, HOM_GeometryPermissionError,
00103 HOM_ObjectWasDeleted, HOM_Error) = 0;
00104 virtual void setAttribValue(
00105 HOM_Attrib &attrib, double attrib_value)
00106 throw(HOM_OperationFailed, HOM_GeometryPermissionError,
00107 HOM_ObjectWasDeleted, HOM_Error) = 0;
00108 virtual void setAttribValue(
00109 HOM_Attrib &attrib, const char *attrib_value)
00110 throw(HOM_OperationFailed, HOM_GeometryPermissionError,
00111 HOM_ObjectWasDeleted, HOM_Error) = 0;
00112 virtual void setAttribValue(
00113 HOM_Attrib &attrib, const std::vector<int> &attrib_value)
00114 throw(HOM_OperationFailed, HOM_GeometryPermissionError,
00115 HOM_ObjectWasDeleted, HOM_Error) = 0;
00116 virtual void setAttribValue(
00117 HOM_Attrib &attrib, const std::vector<double> &attrib_value)
00118 throw(HOM_OperationFailed, HOM_GeometryPermissionError,
00119 HOM_ObjectWasDeleted, HOM_Error) = 0;
00120 virtual void setAttribValue(
00121 HOM_Attrib &attrib, const std::vector<std::string> &attrib_value)
00122 throw(HOM_OperationFailed, HOM_GeometryPermissionError,
00123 HOM_ObjectWasDeleted, HOM_Error) = 0;
00124
00125 virtual void setAttribValue(
00126 const char *attrib_name, int attrib_value)
00127 throw(HOM_TypeError, HOM_OperationFailed, HOM_GeometryPermissionError,
00128 HOM_ObjectWasDeleted, HOM_Error) = 0;
00129 virtual void setAttribValue(
00130 const char *attrib_name, double attrib_value)
00131 throw(HOM_TypeError, HOM_OperationFailed, HOM_GeometryPermissionError,
00132 HOM_ObjectWasDeleted, HOM_Error) = 0;
00133 virtual void setAttribValue(
00134 const char *attrib_name, const char *attrib_value)
00135 throw(HOM_TypeError, HOM_OperationFailed, HOM_GeometryPermissionError,
00136 HOM_ObjectWasDeleted, HOM_Error) = 0;
00137
00138
00139
00140
00141 virtual void setAttribValue(
00142 const char *attrib_name, const std::vector<int> &attrib_value)
00143 throw(HOM_TypeError, HOM_OperationFailed, HOM_GeometryPermissionError,
00144 HOM_ObjectWasDeleted, HOM_Error) = 0;
00145 virtual void setAttribValue(
00146 const char *attrib_name, const std::vector<double> &attrib_value)
00147 throw(HOM_TypeError, HOM_OperationFailed, HOM_GeometryPermissionError,
00148 HOM_ObjectWasDeleted, HOM_Error) = 0;
00149 virtual void setAttribValue(
00150 const char *attrib_name,
00151 const std::vector<std::string> &attrib_value)
00152 throw(HOM_TypeError, HOM_OperationFailed, HOM_GeometryPermissionError,
00153 HOM_ObjectWasDeleted, HOM_Error) = 0;
00154
00155 #ifdef SWIG
00156 %extend
00157 {
00158 InterpreterObject attribValue(const char *name)
00159 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error)
00160 { return HOMattribValue(*self, name); }
00161
00162 InterpreterObject attribValue(HOM_Attrib &attrib)
00163 throw(HOM_OperationFailed, HOM_ObjectWasDeleted, HOM_Error)
00164 { return HOMattribValue(*self, attrib); }
00165 }
00166 #endif
00167 };
00168
00169 #endif