VR-Engage  2.2
Loading...
Searching...
No Matches
export.h
Go to the documentation of this file.
1/*******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4*******************************************************************************/
5
6//! \file export.h
7//! \brief Defines export macros for the vreLuaBindings library
8//!
9//! This file contains platform-specific export macros that control the visibility
10//! of functions and classes in the vreLuaBindings library. These macros ensure proper
11//! symbol export when building the library and proper import when using the library.
12
13#pragma once
14
15//! \name DLL Export/Import Macros
16//! @{
17
18#ifdef _WIN32
19 #ifdef VRELUABINDING_EXPORTS
20 //! \brief Export macro for Windows platform
21 //!
22 //! When building the vreLuaBindings library, this macro expands to __declspec(dllexport)
23 //! to make symbols visible to clients of the library.
24 #define VRELUABINDING_DLL __declspec(dllexport)
25 #else
26 //! \brief Import macro for Windows platform
27 //!
28 //! When using the vreLuaBindings library, this macro expands to __declspec(dllimport)
29 //! to properly import symbols from the library.
30 #define VRELUABINDING_DLL __declspec(dllimport)
31 #endif
32#else
33 //! \brief Export/import macro for non-Windows platforms
34 //!
35 //! On non-Windows platforms, this macro expands to nothing as these platforms
36 //! typically handle symbol visibility differently.
37 #define VRELUABINDING_DLL
38#endif
39
40//! @}