HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pxr.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 #ifndef PXR_H
8 #define PXR_H
9 
10 /// \file pxr/pxr.h
11 
12 // A few defines specific to how Houdini uses USD
13 #ifndef NDEBUG
14  #ifndef _DEBUG
15  #define _DEBUG
16  #endif
17  #ifndef TBB_USE_DEBUG
18  #define TBB_USE_DEBUG 1
19  #endif
20  #ifndef BUILD_OPTLEVEL_DEV
21  #define BUILD_OPTLEVEL_DEV
22  #endif
23 #else
24  #ifndef TBB_USE_DEBUG
25  #define TBB_USE_DEBUG 0
26  #endif
27  #ifndef BUILD_OPTLEVEL_OPT
28  #define BUILD_OPTLEVEL_OPT
29  #endif
30 #endif
31 #ifndef TF_NO_GNU_EXT
32  #define TF_NO_GNU_EXT
33 #endif
34 #ifndef BUILD_COMPONENT_SRC_PREFIX
35  #define BUILD_COMPONENT_SRC_PREFIX ""
36 #endif
37 #ifndef PXR_PYTHON_SUPPORT_ENABLED
38  #define PXR_PYTHON_SUPPORT_ENABLED
39 #endif
40 
41 #define PXR_PACKAGE_URL "https://github.com/sideeffects/USD.git"
42 #define PXR_PACKAGE_REVISION "d687c15dd305b6eb9341df89596f6ac721562403"
43 
44 #define PXR_MAJOR_VERSION 0
45 #define PXR_MINOR_VERSION 25
46 #define PXR_PATCH_VERSION 5
47 
48 #define PXR_VERSION 2505
49 
50 #define PXR_USE_NAMESPACES 1
51 
52 #if PXR_USE_NAMESPACES
53 
54 #define PXR_NS pxr
55 #define PXR_INTERNAL_NS pxrInternal_v0_25_5__pxrReserved__
56 #define PXR_NS_GLOBAL ::PXR_NS
57 
58 namespace PXR_INTERNAL_NS { }
59 
60 // The root level namespace for all source in the USD distribution.
61 namespace PXR_NS {
62  using namespace PXR_INTERNAL_NS;
63 }
64 
65 #if defined(MBSD)
66 #define PXR_NAMESPACE_OPEN_SCOPE \
67  _Pragma("GCC visibility push(default)") \
68  namespace PXR_INTERNAL_NS {
69 #define PXR_NAMESPACE_CLOSE_SCOPE \
70  } \
71  _Pragma("GCC visibility pop")
72 #else
73 #define PXR_NAMESPACE_OPEN_SCOPE namespace PXR_INTERNAL_NS {
74 #define PXR_NAMESPACE_CLOSE_SCOPE }
75 #endif
76 
77 #define PXR_NAMESPACE_USING_DIRECTIVE using namespace PXR_NS;
78 
79 #else
80 
81 #define PXR_NS
82 #define PXR_NS_GLOBAL
83 #define PXR_NAMESPACE_OPEN_SCOPE
84 #define PXR_NAMESPACE_CLOSE_SCOPE
85 #define PXR_NAMESPACE_USING_DIRECTIVE
86 
87 #endif // PXR_USE_NAMESPACES
88 
89 #if 1
90 #define PXR_PYTHON_SUPPORT_ENABLED
91 #endif
92 
93 #if 1
94 #define PXR_PREFER_SAFETY_OVER_SPEED
95 #endif
96 
97 // These defines ensure that when we include Python.h on Windows, we
98 // don't run the pragma comment that forces us to link against the python
99 // lib. Cmake will ensure we link against the correct python lib if/when
100 // necessary.
101 #define MS_NO_COREDLL
102 #define Py_ENABLE_SHARED 1
103 
104 #ifdef PXR_FORCE_PYTHON_SUPPORT_DISABLED
105 #undef PXR_PYTHON_SUPPORT_ENABLED
106 #endif
107 
108 #endif //PXR_H
#define PXR_NS
Definition: pxr.h:54
#define PXR_INTERNAL_NS
Definition: pxr.h:55