HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
api.h
Go to the documentation of this file.
1 //
2 // Copyright 2017 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_IMAGING_HDX_API_H
8 #define PXR_IMAGING_HDX_API_H
9 
10 #include "pxr/base/arch/export.h"
11 
12 #if defined(PXR_STATIC)
13 # define HDX_API
14 # define HDX_API_TEMPLATE_CLASS(...)
15 # define HDX_API_TEMPLATE_STRUCT(...)
16 # define HDX_LOCAL
17 #else
18 # if defined(HDX_EXPORTS)
19 # define HDX_API ARCH_EXPORT
20 # define HDX_API_TEMPLATE_CLASS(...) ARCH_EXPORT_TEMPLATE(class, __VA_ARGS__)
21 # define HDX_API_TEMPLATE_STRUCT(...) ARCH_EXPORT_TEMPLATE(struct, __VA_ARGS__)
22 # else
23 # define HDX_API ARCH_IMPORT
24 # define HDX_API_TEMPLATE_CLASS(...) ARCH_IMPORT_TEMPLATE(class, __VA_ARGS__)
25 # define HDX_API_TEMPLATE_STRUCT(...) ARCH_IMPORT_TEMPLATE(struct, __VA_ARGS__)
26 # endif
27 # define HDX_LOCAL ARCH_HIDDEN
28 #endif
29 
30 #endif // PXR_IMAGING_HDX_API_H