HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_GeometryDrawable.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * COMMENTS:
7  */
8 
9 #ifndef HOM_GeometryDrawable_H
10 #define HOM_GeometryDrawable_H
11 
12 #include "HOM_API.h"
13 #include "HOM_AdvancedDrawable.h"
14 
15 #include <string>
16 
17 SWIGOUT(%rename(GeometryDrawable) HOM_GeometryDrawable;)
18 SWIGOUT(%feature("notabstract") HOM_GeometryDrawable;)
19 
21 {
22 public:
23 #ifdef SWIG
24 %extend
25 {
26  %kwargs HOM_GeometryDrawable;
27  HOM_GeometryDrawable(
28  HOM_SceneViewer& scene_viewer,
29  HOM_EnumValue const & geo_type,
30  std::string const & name,
31  HOM_Geometry* geometry = nullptr,
33  std::string const & label = std::string())
34  {
35  return HOM().newGeometryDrawable(scene_viewer, geo_type, name, geometry, params, label);
36  }
37 }
38 #else
40  { HOM_CONSTRUCT_OBJECT(this) }
41 #endif
42 
44  { HOM_DESTRUCT_OBJECT(this) }
45 
46  virtual std::string __repr__() = 0;
47 
48  SWIGOUT(%newobject geometry;)
49  virtual HOM_Geometry* geometry() const = 0;
50  virtual void setGeometry(HOM_Geometry const &geometry) = 0;
51 
52  SWIGOUT(%warnfilter(321) type;)
53  virtual HOM_EnumValue& type() const = 0;
54  virtual void useClipPlane(bool value) = 0;
55 };
56 
57 #endif // HOM_GeometryDrawable_H
58 
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1291
GLuint GLsizei const GLchar * label
Definition: glcorearb.h:2545
GLsizei const GLchar *const * string
Definition: glcorearb.h:814
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
string __repr__(VtArray< T > const &self)
Definition: wrapArray.h:352
GLenum const GLfloat * params
Definition: glcorearb.h:105
#define HOM_API
Definition: HOM_API.h:13
std::map< std::string, hboost::any > Params
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1290
GLuint const GLchar * name
Definition: glcorearb.h:786
virtual HOM_Geometry * geometry(int output_index=0)=0
virtual HOM_GeometryDrawable * newGeometryDrawable(HOM_SceneViewer &scene_viewer, HOM_EnumValue const &geo_type, std::string const &name, HOM_Geometry *geometry, std::map< std::string, hboost::any > const &params, std::string const &label)=0
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)
Definition: core.h:1131
HOM_API HOM_Module & HOM()
type
Definition: core.h:1059