//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  asmaintained

*/

#include <common/library_indicators.h>

#ifdef EXPORTLIBRARY
#define EXPORTLIBRARY something else
#error ExportLibrary was already defined
#endif

#define EXPORTLIBRARY            libasmaintained

#if !defined(LIBASMAINTAINED) && !defined(IPLIB)
#   error IPLIB or LIBASMAINTAINED is not defined
#endif

/* Handwritten code should use ASMAINTAINED_API, not ASMAINTAINEDEXPORT */

#define ASMAINTAINED_API ASMAINTAINEDEXPORT

#if IPLIB==libasmaintained || defined(LIBASMAINTAINED)
#   if defined(__lint)
#       define ASMAINTAINEDEXPORT       __export(asmaintained)
#       define ASMAINTAINEDGLOBAL       extern __global(asmaintained)
#       define ASMAINTAINEDPRIVATE      extern __private(asmaintained)
#   elif defined(_WIN32)
#       define ASMAINTAINEDEXPORT       __declspec(dllexport)
#       define ASMAINTAINEDGLOBAL       extern __declspec(dllexport)
#       define ASMAINTAINEDPRIVATE      extern
#   else
#       define ASMAINTAINEDEXPORT
#       define ASMAINTAINEDGLOBAL       extern
#       define ASMAINTAINEDPRIVATE      extern
#   endif
#else
#   if defined(__lint)
#       define ASMAINTAINEDEXPORT       __export(asmaintained)
#       define ASMAINTAINEDGLOBAL       extern __global(asmaintained)
#   elif defined(_WIN32) && !defined(WNT_STATIC_LINK)
#       define ASMAINTAINEDEXPORT      __declspec(dllimport)
#       define ASMAINTAINEDGLOBAL       extern __declspec(dllimport)
#   else
#       define ASMAINTAINEDEXPORT
#       define ASMAINTAINEDGLOBAL       extern
#   endif
#endif
