HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DOP_Python.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  * NAME: DOP_Python.h (DOP Library, C++)
7  *
8  * COMMENTS:
9  *
10  */
11 
12 #ifndef __DOP_Python_h__
13 #define __DOP_Python_h__
14 
15 #include "DOP_API.h"
16 #include "DOP_Node.h"
17 #include <SIM/SIM_ObjectArray.h>
18 class OP_OTLDefinition;
19 class OP_ScriptOperator;
20 
21 class DOP_API DOP_Python : public DOP_Node
22 {
23 public:
24  static OP_Node *myConstructor(
25  OP_Network *net, const char *name, OP_Operator *entry);
26 
27  static OP_ScriptOperator *createScriptOperator(const OP_OTLDefinition &);
28 
29  // Returns whether or not this sop is currently processing objects. It's
30  // used by HOM to decide if it may modify dop data.
31  bool isRunning() const
32  { return myIsRunning; }
33 
35  { return myObjectsToProcess; }
36 
37 protected:
38  DOP_Python(OP_Network *net, const char *name, OP_Operator *entry);
39  ~DOP_Python() override;
40 
42  fpreal time, int for_output_idx, const SIM_ObjectArray &objects,
43  DOP_Engine &engine) override;
44 
45 private:
46  SIM_ObjectArray myObjectsToProcess;
47  bool myIsRunning;
48 };
49 
50 #endif
GT_API const UT_StringHolder time
virtual void processObjectsSubclass(fpreal time, int foroutputidx, const SIM_ObjectArray &objects, DOP_Engine &engine)
This default implementation does not affect incoming objects.
bool isRunning() const
Definition: DOP_Python.h:31
#define DOP_API
Definition: DOP_API.h:10
Holds pointers to a number of SIM_Object objects.
const SIM_ObjectArray & objectsToProcess() const
Definition: DOP_Python.h:34
GLuint const GLchar * name
Definition: glcorearb.h:786
fpreal64 fpreal
Definition: SYS_Types.h:277
This is the base class for all DOP nodes.
Definition: DOP_Node.h:77