OGRE-Next 3.0.0
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
OgreThreadDefinesPoco.h File Reference

Macros

#define OGRE_AUTO_MUTEX   mutable Poco::Mutex OGRE_AUTO_MUTEX_NAME
 
#define OGRE_AUTO_SHARED_MUTEX   mutable Poco::Mutex *OGRE_AUTO_MUTEX_NAME
 
#define OGRE_COPY_AUTO_SHARED_MUTEX(from)
 
#define OGRE_DELETE_AUTO_SHARED_MUTEX
 
#define OGRE_LOCK_AUTO_MUTEX   Poco::Mutex::ScopedLock ogreAutoMutexLock( OGRE_AUTO_MUTEX_NAME )
 
#define OGRE_LOCK_AUTO_SHARED_MUTEX
 
#define OGRE_LOCK_MUTEX(name)
 
#define OGRE_LOCK_MUTEX_NAMED(mutexName, lockName)
 
#define OGRE_LOCK_RW_MUTEX_READ(name)
 
#define OGRE_LOCK_RW_MUTEX_WRITE(name)
 
#define OGRE_MUTEX(name)
 
#define OGRE_MUTEX_CONDITIONAL(mutex)
 
#define OGRE_NEW_AUTO_SHARED_MUTEX
 
#define OGRE_RW_MUTEX(name)
 
#define OGRE_SET_AUTO_SHARED_MUTEX_NULL   OGRE_AUTO_MUTEX_NAME = 0
 
#define OGRE_STATIC_MUTEX(name)
 
#define OGRE_STATIC_MUTEX_INSTANCE(name)
 
#define OGRE_THREAD_CREATE(name, worker)
 
#define OGRE_THREAD_CURRENT_ID   ( size_t ) Poco::Thread::current()
 
#define OGRE_THREAD_DESTROY(name)
 
#define OGRE_THREAD_HARDWARE_CONCURRENCY   Poco::Environment::processorCount()
 
#define OGRE_THREAD_ID_TYPE   size_t
 
#define OGRE_THREAD_NOTIFY_ALL(sync)
 
#define OGRE_THREAD_NOTIFY_ONE(sync)
 
#define OGRE_THREAD_POINTER(T, var)
 
#define OGRE_THREAD_POINTER_DELETE(var)
 
#define OGRE_THREAD_POINTER_GET(var)
 
#define OGRE_THREAD_POINTER_INIT(var)
 
#define OGRE_THREAD_POINTER_SET(var, expr)
 
#define OGRE_THREAD_POINTER_VAR(T, var)
 
#define OGRE_THREAD_SLEEP(ms)
 
#define OGRE_THREAD_SYNCHRONISER(sync)
 
#define OGRE_THREAD_TYPE   Poco::Thread
 
#define OGRE_THREAD_WAIT(sync, mutex, lock)
 
#define OGRE_THREAD_WORKER_INHERIT   : public Poco::Runnable
 
#define OGRE_THREAD_YIELD   Poco::Thread::yield()
 
#define OGRE_TOKEN_PASTE(x, y)
 
#define OGRE_TOKEN_PASTE_EXTRA(x, y)
 

Macro Definition Documentation

◆ OGRE_AUTO_MUTEX

#define OGRE_AUTO_MUTEX   mutable Poco::Mutex OGRE_AUTO_MUTEX_NAME

◆ OGRE_AUTO_SHARED_MUTEX

#define OGRE_AUTO_SHARED_MUTEX   mutable Poco::Mutex *OGRE_AUTO_MUTEX_NAME

◆ OGRE_COPY_AUTO_SHARED_MUTEX

#define OGRE_COPY_AUTO_SHARED_MUTEX ( from)
Value:
assert( !OGRE_AUTO_MUTEX_NAME ); \
#define OGRE_AUTO_MUTEX_NAME
Definition OgreThreadDefines.h:29

◆ OGRE_DELETE_AUTO_SHARED_MUTEX

#define OGRE_DELETE_AUTO_SHARED_MUTEX
Value:

◆ OGRE_LOCK_AUTO_MUTEX

#define OGRE_LOCK_AUTO_MUTEX   Poco::Mutex::ScopedLock ogreAutoMutexLock( OGRE_AUTO_MUTEX_NAME )

◆ OGRE_LOCK_AUTO_SHARED_MUTEX

#define OGRE_LOCK_AUTO_SHARED_MUTEX
Value:
assert( OGRE_AUTO_MUTEX_NAME ); \
Poco::Mutex::ScopedLock ogreAutoMutexLock( *OGRE_AUTO_MUTEX_NAME )

◆ OGRE_LOCK_MUTEX

#define OGRE_LOCK_MUTEX ( name)
Value:
Poco::Mutex::ScopedLock OGRE_TOKEN_PASTE_EXTRA( ogrenameLock, __LINE__ )( name )
#define OGRE_TOKEN_PASTE_EXTRA(x, y)
Definition OgreThreadDefinesPoco.h:30

◆ OGRE_LOCK_MUTEX_NAMED

#define OGRE_LOCK_MUTEX_NAMED ( mutexName,
lockName )
Value:
Poco::Mutex::ScopedLock lockName( mutexName )

◆ OGRE_LOCK_RW_MUTEX_READ

#define OGRE_LOCK_RW_MUTEX_READ ( name)
Value:
Poco::RWLock::ScopedLock OGRE_TOKEN_PASTE_EXTRA( ogrenameLock, __LINE__ )( name, false )

◆ OGRE_LOCK_RW_MUTEX_WRITE

#define OGRE_LOCK_RW_MUTEX_WRITE ( name)
Value:
Poco::RWLock::ScopedLock OGRE_TOKEN_PASTE_EXTRA( ogrenameLock, __LINE__ )( name, true )

◆ OGRE_MUTEX

#define OGRE_MUTEX ( name)
Value:
mutable Poco::Mutex name

◆ OGRE_MUTEX_CONDITIONAL

#define OGRE_MUTEX_CONDITIONAL ( mutex)
Value:
if( mutex )

◆ OGRE_NEW_AUTO_SHARED_MUTEX

#define OGRE_NEW_AUTO_SHARED_MUTEX
Value:
assert( !OGRE_AUTO_MUTEX_NAME ); \
OGRE_AUTO_MUTEX_NAME = new Poco::Mutex()

◆ OGRE_RW_MUTEX

#define OGRE_RW_MUTEX ( name)
Value:
mutable Poco::RWLock name

◆ OGRE_SET_AUTO_SHARED_MUTEX_NULL

#define OGRE_SET_AUTO_SHARED_MUTEX_NULL   OGRE_AUTO_MUTEX_NAME = 0

◆ OGRE_STATIC_MUTEX

#define OGRE_STATIC_MUTEX ( name)
Value:
static Poco::Mutex name

◆ OGRE_STATIC_MUTEX_INSTANCE

#define OGRE_STATIC_MUTEX_INSTANCE ( name)
Value:
Poco::Mutex name

◆ OGRE_THREAD_CREATE

#define OGRE_THREAD_CREATE ( name,
worker )
Value:
Poco::Thread *name = OGRE_NEW_T( Poco::Thread, MEMCATEGORY_GENERAL )(); \
name->start( worker )
#define OGRE_NEW_T(T, category)
Allocate space for one primitive type, external type or non-virtual type with constructor parameters.
Definition OgreMemoryAllocatorConfig.h:326

◆ OGRE_THREAD_CURRENT_ID

#define OGRE_THREAD_CURRENT_ID   ( size_t ) Poco::Thread::current()

◆ OGRE_THREAD_DESTROY

#define OGRE_THREAD_DESTROY ( name)
Value:
OGRE_DELETE_T( name, Thread, MEMCATEGORY_GENERAL )
#define OGRE_DELETE_T(ptr, T, category)
Definition OgreMemoryAllocatorConfig.h:329

◆ OGRE_THREAD_HARDWARE_CONCURRENCY

#define OGRE_THREAD_HARDWARE_CONCURRENCY   Poco::Environment::processorCount()

◆ OGRE_THREAD_ID_TYPE

#define OGRE_THREAD_ID_TYPE   size_t

◆ OGRE_THREAD_NOTIFY_ALL

#define OGRE_THREAD_NOTIFY_ALL ( sync)
Value:
sync.broadcast()

◆ OGRE_THREAD_NOTIFY_ONE

#define OGRE_THREAD_NOTIFY_ONE ( sync)
Value:
sync.signal()

◆ OGRE_THREAD_POINTER

#define OGRE_THREAD_POINTER ( T,
var )
Value:
Poco::ThreadLocal<SharedPtr<T> > var

◆ OGRE_THREAD_POINTER_DELETE

#define OGRE_THREAD_POINTER_DELETE ( var)
Value:
var.get().setNull()

◆ OGRE_THREAD_POINTER_GET

#define OGRE_THREAD_POINTER_GET ( var)
Value:
var.get().get()

◆ OGRE_THREAD_POINTER_INIT

#define OGRE_THREAD_POINTER_INIT ( var)
Value:
var()

◆ OGRE_THREAD_POINTER_SET

#define OGRE_THREAD_POINTER_SET ( var,
expr )
Value:
do \
{ \
var.get().setNull(); \
var.get().bind( expr ); \
} while( 0 )

◆ OGRE_THREAD_POINTER_VAR

#define OGRE_THREAD_POINTER_VAR ( T,
var )
Value:
Poco::ThreadLocal<SharedPtr<T> > var

◆ OGRE_THREAD_SLEEP

#define OGRE_THREAD_SLEEP ( ms)
Value:
Poco::Thread::sleep( ms )

◆ OGRE_THREAD_SYNCHRONISER

#define OGRE_THREAD_SYNCHRONISER ( sync)
Value:
Poco::Condition sync

◆ OGRE_THREAD_TYPE

#define OGRE_THREAD_TYPE   Poco::Thread

◆ OGRE_THREAD_WAIT

#define OGRE_THREAD_WAIT ( sync,
mutex,
lock )
Value:
sync.wait( mutex )

◆ OGRE_THREAD_WORKER_INHERIT

#define OGRE_THREAD_WORKER_INHERIT   : public Poco::Runnable

◆ OGRE_THREAD_YIELD

#define OGRE_THREAD_YIELD   Poco::Thread::yield()

◆ OGRE_TOKEN_PASTE

#define OGRE_TOKEN_PASTE ( x,
y )
Value:
x##y

◆ OGRE_TOKEN_PASTE_EXTRA

#define OGRE_TOKEN_PASTE_EXTRA ( x,
y )
Value:
#define OGRE_TOKEN_PASTE(x, y)
Definition OgreThreadDefinesPoco.h:29