ImportExport.h#

Fully qualified name: carb/ImportExport.h

File members: carb/ImportExport.h

// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-License-Identifier: LicenseRef-NvidiaProprietary
//
// NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
// property and proprietary rights in and to this material, related
// documentation and any modifications thereto. Any use, reproduction,
// disclosure or distribution of this material and related documentation
// without an express license agreement from NVIDIA CORPORATION or
// its affiliates is strictly prohibited.

#pragma once

#include "Compiler.h"

#if defined(__cplusplus) || defined(DOXYGEN_BUILD)
#    define CARB_EXTERN_C extern "C"
#else
#    define CARB_EXTERN_C
#endif

#define CARB_EXPORT CARB_EXTERN_C CARB_DECLSPEC(dllexport) CARB_ATTRIBUTE(visibility("default"))

#define CARB_IMPORT CARB_EXTERN_C

// For documentation only
#ifdef DOXYGEN_BUILD
#    define CARB_EXPORTS
#endif

#if defined(CARB_EXPORTS) || defined(DOXYGEN_BUILD)
#    define CARB_DYNAMICLINK CARB_EXPORT
#else
#    define CARB_DYNAMICLINK CARB_IMPORT
#endif