Threading_Macros

Macros used in the threading system.

__add_db16cycl__ Macro
C++
#define __add_db16cycl__ NIntrinsics::YieldFor16Cycles();
File

MultiThread.h

Description

SNC doesn't support inline assembly

AUTO_LOCK Macro
C++
#define AUTO_LOCK(lock) AUTO_LOCK_T(CryCriticalSection, lock)
File

CryThread.h

AUTO_LOCK_CS Macro
C++
#define AUTO_LOCK_CS(csLock) CryAutoCriticalSection __AL__##csLock(csLock)
File

CryThread.h

AUTO_LOCK_T Macro
C++
#define AUTO_LOCK_T(Type, lock) PREFAST_SUPPRESS_WARNING(6246); CryAutoLock __AutoLock(lock)
File

CryThread.h

AUTO_MODIFYLOCK Macro
C++
#define AUTO_MODIFYLOCK(p) PREFAST_SUPPRESS_WARNING(6246) AutoLockModify<CryReadModifyLock> __modifylock##__LINE__(p, __FUNC__)
File

CryThread.h

AUTO_READLOCK Macro
C++
#define AUTO_READLOCK(p) PREFAST_SUPPRESS_WARNING(6246) AutoLockRead<CryReadModifyLock> __readlock##__LINE__(p, __FUNC__)
File

CryThread.h

Description

On PS3, __FUNC__ isn't a char*, it provides some code to mimic the behaivor of __FUNC__ of other plattforms, but it wasn't threadsafe so we use __PRETTY_FUNCTION__ for PS3, also we don't want the runtime overhead of the macro emulation AUTO_READLOCK_PROT is special as it maps to a modify lock for PS3 always

AUTO_READLOCK_PROT Macro
C++
#define AUTO_READLOCK_PROT(p) PREFAST_SUPPRESS_WARNING(6246) AutoLockRead<CryReadModifyLock> __readlock_prot##__LINE__(p, __FUNC__)
File

CryThread.h

CRYLOCK_HAVE_FASTLOCK Macro
C++
#define CRYLOCK_HAVE_FASTLOCK 1
File

CryThread.h

DEBUG_MODIFYLOCK Macro
C++
#define DEBUG_MODIFYLOCK(p) 
File

CryThread.h

DEBUG_READLOCK Macro
C++
#define DEBUG_READLOCK(p) 
File

CryThread.h

ENABLE_THREADPROFILERSUPPORT Macro
C++
#define ENABLE_THREADPROFILERSUPPORT 0
File

ThreadProfilerSupport.h

INVALID_AFFINITY Macro
C++
#define INVALID_AFFINITY 0
File

IThreadTask.h

MAX_TASK_THREADS_COUNT Macro
C++
#define MAX_TASK_THREADS_COUNT 1
File

IThreadTask.h

PIPE_FUNCTION_PROFILER Macro
C++
#define PIPE_FUNCTION_PROFILER(sys) 
File

Pipe.h

Description
PIPE_REPLACE_SUPPORTED_FOR Macro
C++
#define PIPE_REPLACE_SUPPORTED_FOR(type) template <> struct Pipe_ReplaceSupported {enum {Value = true};}
File

Pipe.h

Description

Replacee is supported for these simple types.

PROFILE_PIPE_SYS Macro
C++
#define PROFILE_PIPE_SYS 
File

Pipe.h

Description

defined(PROFILE_PIPE_SYS)

WRITE_LOCK_VAL Macro
C++
#define WRITE_LOCK_VAL (1<<16)
File

MultiThread.h