/* 
   Copyright 2020 Siemens Digital Industries Software
   ==================================================
   Copyright 2009.
   Siemens Product Lifecycle Management Software Inc.
   All Rights Reserved.
   ==================================================
   Copyright 2020 Siemens Digital Industries Software
*/
 
/** 
    @file 
 
    The header file that defines the export symbols for the PRODUCTVARIANT library
 
*/

#include <common/library_indicators.h>

#ifdef EXPORTLIBRARY
#error ExportLibrary is defined to be EXPORTLIBRARY
#endif

#define EXPORTLIBRARY            libproductvariant

#if !defined(IPLIB)
#   error IPLIB is not defined
#endif

#define PRODUCTVARIANT_LIBRARY_NAME libproductvariant
#define PRODUCTVARIANT_LIBRARY_ID_NAME productvariant

/* Handwritten code should use PRODUCTVARIANT_API, not PRODUCTVARIANTEXPORT */

#define PRODUCTVARIANT_API PRODUCTVARIANTEXPORT

/* Support PRODUCTVARIANTEXPORT for autogenerated schema/pif code only */

#if IPLIB==PRODUCTVARIANT_LIBRARY_NAME
#   if defined(__lint)
#       define PRODUCTVARIANTEXPORT       __export(PRODUCTVARIANT_LIBRARY_ID_NAME)
#       define PRODUCTVARIANTGLOBAL       extern __global(PRODUCTVARIANT_LIBRARY_ID_NAME)
#       define PRODUCTVARIANTPRIVATE      extern __private(PRODUCTVARIANT_LIBRARY_ID_NAME)
#   elif defined(_WIN32)
#       define PRODUCTVARIANTEXPORT       __declspec(dllexport)
#       define PRODUCTVARIANTGLOBAL       extern __declspec(dllexport)
#       define PRODUCTVARIANTPRIVATE      extern
#   else
#       define PRODUCTVARIANTEXPORT
#       define PRODUCTVARIANTGLOBAL       extern
#       define PRODUCTVARIANTPRIVATE      extern
#   endif
#else
#   if defined(__lint)
#       define PRODUCTVARIANTEXPORT       __export(PRODUCTVARIANT_LIBRARY_ID_NAME)
#       define PRODUCTVARIANTGLOBAL       extern __global(PRODUCTVARIANT_LIBRARY_ID_NAME)
#   elif defined(_WIN32) && !defined(WNT_STATIC_LINK)
#       define PRODUCTVARIANTEXPORT       __declspec(dllimport)
#       define PRODUCTVARIANTGLOBAL       extern __declspec(dllimport)
#   else
#       define PRODUCTVARIANTEXPORT
#       define PRODUCTVARIANTGLOBAL       extern
#   endif
#endif
