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 2024 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 
8 #ifndef PXR_BASE_TS_API_H
9 #define PXR_BASE_TS_API_H
10 
11 #include "pxr/base/arch/export.h"
12 
13 #if defined(PXR_STATIC)
14 # define TS_API
15 # define TS_API_TEMPLATE_CLASS(...)
16 # define TS_API_TEMPLATE_STRUCT(...)
17 # define TS_LOCAL
18 #else
19 # if defined(TS_EXPORTS)
20 # define TS_API ARCH_EXPORT
21 # define TS_API_TEMPLATE_CLASS(...) ARCH_EXPORT_TEMPLATE(class, __VA_ARGS__)
22 # define TS_API_TEMPLATE_STRUCT(...) ARCH_EXPORT_TEMPLATE(struct, __VA_ARGS__)
23 # else
24 # define TS_API ARCH_IMPORT
25 # define TS_API_TEMPLATE_CLASS(...) ARCH_IMPORT_TEMPLATE(class, __VA_ARGS__)
26 # define TS_API_TEMPLATE_STRUCT(...) ARCH_IMPORT_TEMPLATE(struct, __VA_ARGS__)
27 # endif
28 # define TS_LOCAL ARCH_HIDDEN
29 #endif
30 
31 #endif