JD2022-TU1/main/extern/Soundwich/Solution/Engine/Inc/Defs.h

101 lines
2.8 KiB
C

#pragma once
#if defined( WIN32 )
#define SW_PLATFORM_PC
#endif
#if defined( ORBIS )
#define SW_PLATFORM_PS4
#endif
#if defined( _DURANGO )
#define SW_PLATFORM_XBONE
#endif
#if defined( _CAFE )
#define SW_PLATFORM_CAFE
#endif
#if defined( SW_PLATFORM_PC )
#if( _MSC_VER < 1700 )
#pragma warning( disable : 4482 ) // disable nonstandard extension used: enum used in qualified name
#endif
#endif
#if !defined( SW_PLATFORM_PC )
#define __stdcall
#endif
#if defined( _SCARLETT )
#define SW_PLATFORM_SCARLETT
#endif
// USE_WWISE
//
// Defined this to enable the Wwise interface components. With this enabled Soundwich can communicate with a Wwise project at the same location
// as the Soundwich data (use SetDataPath( ) to set the location)
// Enabling this also requires adding WwiseEngine.lib to avoid link errors
#if !defined( SW_PLATFORM_PS4 )
#if !defined( USE_WWISE )
//#define USE_WWISE
#endif
#endif
#if defined( SW_PLATFORM_PS4 ) && defined( USE_WWISE )
#define AK_PS4
#endif
// USE_NATIVE_AUDIO
//
// Define this to create all the required elements for the native audio processing layer, without this soundwich will only process standard datatypes.
// This enables the AudioRenderer which creates threads to perform the rendering, and brings in the Vorbis decoder library
// Enabling this also requires adding libogg_static.lib and libvorbis_static.lib to avoid link errors
//#define USE_NATIVE_AUDIO
// USE_DEFERRED_COMMANDS
//
// Define this to enable the deferred send and return command queues within the API.
// With this enabled all API calls return immediately and processing is carried out during the Tick( ) call or on a secondary
// processing worker thread (see USE_PROCESSING_THREAD below)
//#define USE_DEFERRED_COMMANDS
// USE_PROCESSING_THREAD
//
// Define this to create a secondary thread to perform all work within Soundwich, this can only be used with deferred commands
// (see USE_DEFERRED_COMMANDS above). All API calls return immediately and a work request is signalled by Tick( ) and all
// commands pending will be executed on the worker thread. Any outputs generated by the work performed will be returned during
// the next call to Tick( )
#if defined( USE_DEFERRED_COMMANDS )
//#define USE_PROCESSING_THREAD
#endif
// if CREATE_LOG_FILE is defined the system will pipe output to [WorkingDir]\Log.txt as well as to the console
//#define CREATE_LOG_FILE
#if !defined ( ITF_FINAL )
// if LOG_COMPONENT_PUSHES is defined the system will log all component push operations
#define LOG_COMPONENT_PUSHES
// if LOG_CONNECTION_PUSHES is defined the system will log all connection push operations
#define LOG_CONNECTION_PUSHES
#endif
// if SW_USE_CLIENT_SYSTEM is defined the client must implement a system object which is passed at creation
// DON'T DEFINE THIS FOR DYNAMIC_SOUNDWICH_LIB
#ifndef DYNAMIC_SOUNDWICH_LIB
#define SW_USE_CLIENT_SYSTEM
#endif