HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PY_EvaluationContext.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  * This class represents an evaluation context in which pieces of compiled
8  * python code can run. Each evaluation context contains a globals
9  * dict, so it effectively acts as a namespace.
10  */
11 
12 #ifndef __PY_EvaluationContext_h__
13 #define __PY_EvaluationContext_h__
14 
15 #include "PY_API.h"
16 #include <UT/UT_NonCopyable.h>
17 #include <UT/UT_String.h>
18 
20 {
21 public:
22  explicit PY_EvaluationContext(const char* default_module="hou");
24 
26 
27  void clear();
28 
30  { return myOpaqueGlobalsDict; }
31 
32 private:
33  void initializeContents();
34 
35  friend class PY_CompiledCode;
36 
37  void *myOpaqueGlobalsDict;
38  UT_String myDefaultModule;
39 };
40 
41 #endif
#define UT_NON_COPYABLE(CLASS)
Define deleted copy constructor and assignment operator inside a class.
#define PY_API
Definition: PY_API.h:10