JD2022-TU1/main/extern/gear4/gear_detection/detectionconfig.h

66 lines
2 KiB
C++

////////////////////////////////////////////////////////////////////////////////
//
// File : detectionconfig.h
// Copyright (c) Ubisoft Entertainment. All rights reserved.
//
////////////////////////////////////////////////////////////////////////////////
#pragma once
#ifndef G4_DETECTIONCONFIG__INCLUDED
#define G4_DETECTIONCONFIG__INCLUDED
#include <gear_core/base/ealallocator.h>
#include <gear_core/generics/gearbasicstring.h>
#include <gear_detection/core/stddef.h>
////////////////////////////////////////////////////////////
// Detection Lib/DLL macros - Should only be used inside of Detection
// If Detection is compiling in DLL mode, let's set a meaning for DLLIMPORT & DLLEXPORT
#ifdef G4_DETECTION_DLL
#if (G4_PLATFORM != G4_PLATFORM_WIN32) && (G4_PLATFORM != G4_PLATFORM_WIN64)
#error G4_DETECTION_DLL can only be defined on win32 & win64 platforms !
#endif
#define G4_DETECTION_DLL_ENTRY_IMPORT __declspec(dllimport)
#define G4_DETECTION_DLL_ENTRY_EXPORT __declspec(dllexport)
#else
#define G4_DETECTION_DLL_ENTRY_IMPORT
#define G4_DETECTION_DLL_ENTRY_EXPORT
#endif
// If we are currently compiling the Detection DLL, export. Otherwise import!
#ifdef G4_DETECTION_EXPORT_DLL
#if !defined(G4_DETECTION_DLL)
#error G4_DETECTION_DLL must be defined when G4_DETECTION_EXPORT_DLL is defined !
#endif
#define G4_DETECTION_DLL_ENTRY G4_DETECTION_DLL_ENTRY_EXPORT
#else
#define G4_DETECTION_DLL_ENTRY G4_DETECTION_DLL_ENTRY_IMPORT
#endif
#if defined(G4_DETECTION_DLL)
#include <dll_init.h>
namespace G4
{
EALPP_DECLARE_DLL_INIT_SETTER(SystemDetection, G4_DETECTION_DLL_ENTRY);
}
#endif // defined(G4_DETECTION_DLL)
namespace G4 {
namespace SystemDetection
{
typedef GearBasicString<Char, EalAllocator<EAL_ID_TG_GEAR_DETECTION> > GearDetectionString;
} // namespace SystemDetection
} // namespace G4
#endif // #ifndef G4_DETECTIONCONFIG__INCLUDED