//Copyright 2020 Siemens Digital Industries Software //================================================== //Copyright $2020. //Siemens Product Lifecycle Management Software Inc. //All Rights Reserved. //================================================== //Copyright 2020 Siemens Digital Industries Software /** @file This file contains the declaration for the Dispatch Library dispatcher */ #include #ifdef EXPORTLIBRARY #define EXPORTLIBRARY something else #error ExportLibrary was already defined #endif #define EXPORTLIBRARY libdispatcher #if !defined(LIBDISPATCHER) && !defined(IPLIB) # error IPLIB or LIBDISPATCHER is not defined #endif /* Handwritten code should use DISPATCHER_API, not DISPATCHEREXPORT */ #define DISPATCHER_API DISPATCHEREXPORT #if IPLIB==libdispatcher || defined(LIBDISPATCHER) # if defined(__lint) # define DISPATCHEREXPORT __export(dispatcher) # define DISPATCHERGLOBAL extern __global(dispatcher) # define DISPATCHERPRIVATE extern __private(dispatcher) # elif defined(_WIN32) # define DISPATCHEREXPORT __declspec(dllexport) # define DISPATCHERGLOBAL extern __declspec(dllexport) # define DISPATCHERPRIVATE extern # else # define DISPATCHEREXPORT # define DISPATCHERGLOBAL extern # define DISPATCHERPRIVATE extern # endif #else # if defined(__lint) # define DISPATCHEREXPORT __export(dispatcher) # define DISPATCHERGLOBAL extern __global(dispatcher) # elif defined(_WIN32) && !defined(WNT_STATIC_LINK) # define DISPATCHEREXPORT __declspec(dllimport) # define DISPATCHERGLOBAL extern __declspec(dllimport) # else # define DISPATCHEREXPORT # define DISPATCHERGLOBAL extern # endif #endif