HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_DopData.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_DopData_h__
10 #define __HOM_DopData_h__
11 
12 #include "HOM_API.h"
13 #include "HOM_Defines.h"
14 #include "HOM_Module.h"
15 #include "HOM_Errors.h"
16 #include "HOM_PtrOrNull.h"
17 #include "HOM_IterableList.h"
18 #include <string>
19 #include <vector>
20 
21 class HOM_DopSimulation;
22 class HOM_DopRecord;
23 class HOM_Geometry;
25 
26 SWIGOUT(%rename(DopData) HOM_DopData;)
27 
29 {
30 public:
32  { HOM_CONSTRUCT_OBJECT(this) }
34  { HOM_CONSTRUCT_OBJECT(this) }
35  virtual ~HOM_DopData()
36  { HOM_DESTRUCT_OBJECT(this) }
37 
38  virtual bool operator==(HOM_PtrOrNull<HOM_DopData> data) = 0;
39  virtual bool operator!=(HOM_PtrOrNull<HOM_DopData> data) = 0;
40 
41  SWIGOUT(%newobject freeze;)
42  virtual HOM_DopData *freeze() = 0;
43  virtual bool isFrozen() = 0;
44  virtual std::string path() = 0;
45  virtual std::string selectionPath() = 0;
46 
47  virtual int __hash__() = 0;
48  virtual std::string __repr__() = 0;
49 
50  SWIGOUT(%newobject dopNetNode;)
51  virtual HOM_Node *dopNetNode() = 0;
52  SWIGOUT(%newobject simulation;)
53  virtual HOM_DopSimulation *simulation() = 0;
54  SWIGOUT(%newobject creator;)
55  virtual HOM_Node *creator() = 0;
56  SWIGOUT(%warnfilter(321) id;)
57  virtual std::string id() = 0;
58  virtual std::string dataType() = 0;
59 
60  virtual std::vector<std::string> recordTypes() = 0;
61 
62  SWIGOUT(%newobject record;)
63  virtual HOM_DopRecord *record(const char *record_type, int record_index = 0) = 0;
64 
65  SWIGOUT(%newobject records;)
66  virtual HOM_IterableList<HOM_DopRecord> *records(const char *record_type) = 0;
67 
68  SWIGOUT(%newobject options;)
69  virtual HOM_DopRecord *options() = 0;
70 
71  SWIGOUT(%newobject subData;)
72  virtual std::map<std::string, HOM_ElemPtr<HOM_DopData> > subData() = 0;
73  SWIGOUT(%newobject findSubData;)
74  virtual HOM_DopData *findSubData(const char *data_spec) = 0;
75 
76  SWIGOUT(%kwargs findAllSubData;)
77  virtual std::map<std::string, HOM_ElemPtr<HOM_DopData> >
78  findAllSubData(const char *data_spec, bool recurse=false) = 0;
79 
80 
81  SWIGOUT(%kwargs createSubData;)
82  virtual HOM_DopData *createSubData(
83  const char *data_name, const char *data_type="SIM_EmptyData",
84  bool avoid_name_collisions=false) = 0;
85 
86  SWIGOUT(%kwargs attachSubData;)
87  virtual void attachSubData(
88  HOM_DopData &hom_new_subdata, const char *new_data_name,
89  bool avoid_name_collisions=false) = 0;
90 
91  virtual void removeSubData(const char *data_spec) = 0;
92 
93  virtual void copyContentsFrom(HOM_DopData &hom_data) = 0;
94 
95  virtual void *_asVoidPointer() = 0;
96 
97  SWIGOUT(%newobject geometry;)
98  virtual HOM_Geometry *fieldGeometry(const char *data_name) = 0;
99 
100  SWIGOUT(%newobject geometry;)
101  SWIGOUT(%kwargs geometry;)
102  virtual HOM_Geometry *geometry(const char *data_name=NULL) = 0;
103 
104  SWIGOUT(%newobject editableGeometry;)
105  SWIGOUT(%kwargs editableGeometry;)
106  virtual HOM_EditableDopGeometryGuard *editableGeometry(
107  const char *data_name=NULL) = 0;
108 };
109 
110 #endif
111 
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1210
OIIO_API bool rename(string_view from, string_view to, std::string &err)
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
string __repr__(VtArray< T > const &self)
Definition: wrapArray.h:349
HOM_DopData(const HOM_DopData &data)
Definition: HOM_DopData.h:33
#define HOM_API
Definition: HOM_API.h:13
GLint GLenum GLsizei GLint GLsizei const void * data
Definition: glew.h:1379
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1209
bool operator!=(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Inequality operator, does exact floating point comparisons.
Definition: Mat3.h:563
INT GLenum dataType
Definition: wglew.h:145
GLsizei const GLchar *const * path
Definition: glew.h:6461
GLsizei const GLchar *const * string
Definition: glew.h:1844
virtual ~HOM_DopData()
Definition: HOM_DopData.h:35
bool operator==(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Equality operator, does exact floating point comparisons.
Definition: Mat3.h:549