You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.8 KiB

//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 <common/library_indicators.h>
#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