HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
HOM_AgentDefinition.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_AgentDefinition_h__
10 #define __HOM_AgentDefinition_h__
11 
12 #include "HOM_API.h"
13 #include "HOM_IterableList.h"
14 #include "HOM_Module.h"
15 #include "HOM_PtrOrNull.h"
16 
17 class HOM_AgentClip;
18 class HOM_AgentLayer;
19 class HOM_AgentRig;
22 
23 SWIGOUT(%rename(AgentDefinition) HOM_AgentDefinition;)
24 // Force SWIG to output an __init__ method even though it determines this
25 // class is abstract.
26 SWIGOUT(%feature("notabstract") HOM_AgentDefinition;)
27 
29 {
30 public:
31 #ifdef SWIG
32 %extend
33 {
35  const HOM_AgentShapeLibrary &shapelib)
36  { return HOM().newAgentDefinition(rig, shapelib); }
37 }
38 #else
40  { HOM_CONSTRUCT_OBJECT(this) }
41 #endif
42 
44  { HOM_DESTRUCT_OBJECT(this) }
45 
46  virtual bool operator==(HOM_PtrOrNull<HOM_AgentDefinition> defn) const = 0;
48  { return !operator==(defn); }
49 
50  virtual int __hash__() const = 0;
51  virtual std::string __repr__() const = 0;
52 
53  SWIGOUT(%newobject freeze;)
54  virtual HOM_AgentDefinition *
55  freeze(HOM_AgentShapeLibrary *new_shapelib = 0) const = 0;
56 
57  SWIGOUT(%newobject rig;)
58  virtual HOM_AgentRig *rig() const = 0;
59 
60  SWIGOUT(%newobject shapeLibrary;)
61  virtual HOM_AgentShapeLibrary *shapeLibrary() const = 0;
62 
63  SWIGOUT(%newobject layers;)
64  virtual HOM_IterableList<HOM_AgentLayer> *layers() const = 0;
65 
66  SWIGOUT(%newobject findLayer;)
67  virtual HOM_AgentLayer * findLayer(const char *name) const = 0;
68 
69  SWIGOUT(%newobject clips;)
70  virtual HOM_IterableList<HOM_AgentClip> *clips() const = 0;
71 
72  SWIGOUT(%newobject findClip;)
73  virtual HOM_AgentClip * findClip(const char *name) const = 0;
74 
75  SWIGOUT(%newobject transformGroups;)
76  virtual HOM_IterableList<HOM_AgentTransformGroup> *
77  transformGroups() const = 0;
78 
79  SWIGOUT(%newobject findTransformGroup;)
80  virtual HOM_AgentTransformGroup *
81  findTransformGroup(const char *name) const = 0;
82 
83  virtual void addClip(const HOM_AgentClip &clip) = 0;
84 
85  virtual void addLayer(const HOM_AgentLayer &layer) = 0;
86 
87  virtual void addTransformGroup(const HOM_AgentTransformGroup &group) = 0;
88 };
89 
90 #endif
virtual HOM_AgentDefinition * newAgentDefinition(const HOM_AgentRig &rig, const HOM_AgentShapeLibrary &shapelib)=0
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:974
GLenum GLuint GLint GLint layer
Definition: glcorearb.h:1298
GLsizei const GLchar *const * string
Definition: glcorearb.h:813
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
virtual std::string __repr__() const =0
#define HOM_API
Definition: HOM_API.h:13
bool operator!=(HOM_PtrOrNull< HOM_AgentDefinition > defn) const
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:973
GLuint const GLchar * name
Definition: glcorearb.h:785
virtual int __hash__() const =0
IMATH_INTERNAL_NAMESPACE_HEADER_ENTER T clip(const T &p, const Box< T > &box)
Definition: ImathBoxAlgo.h:89
HOM_API HOM_Module & HOM()
bool operator==(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Equality operator, does exact floating point comparisons.
Definition: Mat3.h:596