HEX
Server: nginx/1.24.0
System: Linux DGT-WORDPRESS-VM-SERVER 6.14.0-1014-azure #14~24.04.1-Ubuntu SMP Fri Oct 3 20:52:11 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 8.4.12
Disabled: NONE
Upload Files
File: //usr/include/OpenEXR/IlmThreadExport.h
//
// SPDX-License-Identifier: BSD-3-Clause
// Copyright (c) Contributors to the OpenEXR Project.
//

#ifndef INCLUDED_ILMTHREADEXPORT_H
#define INCLUDED_ILMTHREADEXPORT_H

#include "OpenEXRConfig.h"

// See docs/SymbolVisibility.md for more discussion

/// \addtogroup ExportMacros
/// @{

// are we making a DLL under windows (might be msvc or mingw or others)
#if defined(OPENEXR_DLL)

// when building as a DLL for windows, typical dllexport / import case
// where we need to switch depending on whether we are compiling
// internally or not
#  if defined(ILMTHREAD_EXPORTS)
#    define ILMTHREAD_EXPORT __declspec(dllexport)
#  else
#    define ILMTHREAD_EXPORT __declspec(dllimport)
#  endif

// DLLs don't support these types of visibility controls, just leave them as empty
#  define ILMTHREAD_EXPORT_TYPE
#  define ILMTHREAD_HIDDEN

#else // OPENEXR_DLL

// just pass these through from the top level config
#  define ILMTHREAD_EXPORT OPENEXR_EXPORT
#  define ILMTHREAD_HIDDEN OPENEXR_HIDDEN
#  define ILMTHREAD_EXPORT_TYPE OPENEXR_EXPORT_TYPE

#endif // OPENEXR_DLL

/// @}

#endif // INCLUDED_ILMTHREADEXPORT_H