HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_LopViewportOverrides.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  * Class used to create a block for editing the session layer on a
8  * LOP Network.
9  */
10 
11 #ifndef __HOM_LopViewportOverrides_h__
12 #define __HOM_LopViewportOverrides_h__
13 
14 #include "HOM_API.h"
15 #include "HOM_Errors.h"
16 #include "HOM_Module.h"
17 
19 
20 SWIGOUT(%rename(LopViewportOverrides) HOM_LopViewportOverrides;)
21 
22 SWIGOUT(%feature("notabstract") HOM_LopViewportOverrides;)
24 {
25 public:
26 #ifdef SWIG
27 %extend
28 {
30  { return HOM().newLopViewportOverrides(); }
31 }
32 #else
34  { HOM_CONSTRUCT_OBJECT(this) }
36  { HOM_CONSTRUCT_OBJECT(this) }
38  { HOM_DESTRUCT_OBJECT(this) }
39 #endif
40 
41  // Let swig know we're overriding __repr__ for this class so it doesn't
42  // provide its own __repr__.
43  virtual std::string __repr__() = 0;
44 
45  virtual HOM_LopViewportOverrides *__enter__() = 0;
46 
47  virtual void setDrawMode(HOM_LopSelectionRule *prims,
48  const char *drawmode) = 0;
49  virtual void setActive(HOM_LopSelectionRule *prims, bool active) = 0;
50  virtual void setVisible(HOM_LopSelectionRule *prims, bool visible) = 0;
51  virtual void setSelectable(HOM_LopSelectionRule *prims,
52  bool active, bool solo = false) = 0;
53  virtual void setSoloLights(HOM_LopSelectionRule *prims = nullptr) = 0;
54  virtual void addSoloLights(HOM_LopSelectionRule *prims) = 0;
55  virtual void removeSoloLights(HOM_LopSelectionRule *prims) = 0;
56  SWIGOUT(%ignore opaqueSoloLights;)
57  virtual void *opaqueSoloLights() = 0;
58  virtual void setSoloGeometry(HOM_LopSelectionRule *prims = nullptr) = 0;
59  virtual void addSoloGeometry(HOM_LopSelectionRule *prims) = 0;
60  virtual void removeSoloGeometry(HOM_LopSelectionRule *prims) = 0;
61  SWIGOUT(%ignore opaqueSoloGeometry;)
62  virtual void *opaqueSoloGeometry() = 0;
63  virtual void showPurpose(HOM_LopSelectionRule *prims,
64  const char *purpose) = 0;
65  virtual void setDisplayOpacity(
66  HOM_LopSelectionRule *prims, float opacity) = 0;
67 
68  SWIGOUT(%kwargs clear;)
69  virtual void clear(HOM_EnumValue *layer_id = nullptr,
70  const char *from_prim = nullptr) = 0;
71 
72  virtual HOM_BinaryString dumps() = 0;
73  virtual void loads(HOM_BinaryString overrides_str) = 0;
74 
75  SWIGOUT(%ignore opaqueLayer;)
76  virtual void *opaqueLayer() = 0;
77  SWIGOUT(%ignore opaqueStage;)
78  virtual void *opaqueStage() = 0;
79 
80  SWIGOUT(%ignore opaqueExit;)
81  virtual void opaqueExit() = 0;
82 
83 #ifdef SWIG
84 %extend
85 {
86  InterpreterObject layer()
87  { return HOMincRef((InterpreterObject)self->opaqueLayer()); }
88  InterpreterObject stage()
89  { return HOMincRef((InterpreterObject)self->opaqueStage()); }
90  InterpreterObject soloLights()
91  { return HOMincRef((InterpreterObject)self->opaqueSoloLights()); }
92  InterpreterObject soloGeometry()
93  { return HOMincRef((InterpreterObject)self->opaqueSoloGeometry()); }
94 
95  // We can ignore the type, value, and traceback Python objects.
96  SWIGOUT(virtual void __exit__(
97  InterpreterObject type, InterpreterObject value,
98  InterpreterObject traceback)
99  { self->opaqueExit(); };)
100 }
101 #endif
102 
103 };
104 
105 #endif
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1348
GLsizei const GLfloat * value
Definition: glcorearb.h:824
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
string __repr__(VtArray< T > const &self)
Definition: wrapArray.h:312
GLenum GLuint GLint GLint layer
Definition: glcorearb.h:1299
GLint GLint GLsizei GLint GLenum GLenum type
Definition: glcorearb.h:108
#define HOM_API
Definition: HOM_API.h:13
void ignore(T const &) VULKAN_HPP_NOEXCEPT
Definition: vulkan.hpp:6508
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1347
that also have some descendant prim *whose name begins with which in turn has a child named baz where *the predicate active
virtual HOM_LopViewportOverrides * newLopViewportOverrides()=0
HOM_LopViewportOverrides(const HOM_LopViewportOverrides &)
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)
HOM_API HOM_Module & HOM()