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 2025 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_EXEC_ESF_USD_API_H
8 #define PXR_EXEC_ESF_USD_API_H
9 
10 #include "pxr/base/arch/export.h"
11 
12 #if defined(PXR_STATIC)
13 # define ESFUSD_API
14 # define ESFUSD_API_TYPE
15 # define ESFUSD_API_TEMPLATE_CLASS(...)
16 # define ESFUSD_API_TEMPLATE_STRUCT(...)
17 # define ESFUSD_LOCAL
18 #else
19 # if defined(ESFUSD_EXPORTS)
20 # define ESFUSD_API ARCH_EXPORT
21 # define ESFUSD_API_TYPE ARCH_EXPORT_TYPE
22 # define ESFUSD_API_TEMPLATE_CLASS(...) ARCH_EXPORT_TEMPLATE(class, __VA_ARGS__)
23 # define ESFUSD_API_TEMPLATE_STRUCT(...) ARCH_EXPORT_TEMPLATE(struct, __VA_ARGS__)
24 # else
25 # define ESFUSD_API ARCH_IMPORT
26 # define ESFUSD_API_TYPE
27 # define ESFUSD_API_TEMPLATE_CLASS(...) ARCH_IMPORT_TEMPLATE(class, __VA_ARGS__)
28 # define ESFUSD_API_TEMPLATE_STRUCT(...) ARCH_IMPORT_TEMPLATE(struct, __VA_ARGS__)
29 # endif
30 # define ESFUSD_LOCAL ARCH_HIDDEN
31 #endif
32 
33 #endif