OgreThreadDefinesPoco.h File Reference

Go to the source code of this file.

Defines

#define OGRE_AUTO_MUTEX   mutable Poco::Mutex OGRE_AUTO_MUTEX_NAME;
#define OGRE_LOCK_AUTO_MUTEX   Poco::Mutex::ScopedLock ogreAutoMutexLock(OGRE_AUTO_MUTEX_NAME);
#define OGRE_MUTEX(name)   mutable Poco::Mutex name;
#define OGRE_STATIC_MUTEX(name)   static Poco::Mutex name;
#define OGRE_STATIC_MUTEX_INSTANCE(name)   Poco::Mutex name;
#define OGRE_LOCK_MUTEX(name)   Poco::Mutex::ScopedLock ogrenameLock(name);
#define OGRE_LOCK_MUTEX_NAMED(mutexName, lockName)   Poco::Mutex::ScopedLock lockName(mutexName);
#define OGRE_AUTO_SHARED_MUTEX   mutable Poco::Mutex *OGRE_AUTO_MUTEX_NAME;
#define OGRE_LOCK_AUTO_SHARED_MUTEX   assert(OGRE_AUTO_MUTEX_NAME); Poco::Mutex::ScopedLock ogreAutoMutexLock(*OGRE_AUTO_MUTEX_NAME);
#define OGRE_NEW_AUTO_SHARED_MUTEX   assert(!OGRE_AUTO_MUTEX_NAME); OGRE_AUTO_MUTEX_NAME = new Poco::Mutex();
#define OGRE_DELETE_AUTO_SHARED_MUTEX   assert(OGRE_AUTO_MUTEX_NAME); delete OGRE_AUTO_MUTEX_NAME;
#define OGRE_COPY_AUTO_SHARED_MUTEX(from)   assert(!OGRE_AUTO_MUTEX_NAME); OGRE_AUTO_MUTEX_NAME = from;
#define OGRE_SET_AUTO_SHARED_MUTEX_NULL   OGRE_AUTO_MUTEX_NAME = 0;
#define OGRE_MUTEX_CONDITIONAL(mutex)   if (mutex)
#define OGRE_THREAD_SYNCHRONISER(sync)   Poco::Condition sync;
#define OGRE_THREAD_WAIT(sync, mutex, lock)   sync.wait(mutex);
#define OGRE_THREAD_NOTIFY_ONE(sync)   sync.signal();
#define OGRE_THREAD_NOTIFY_ALL(sync)   sync.broadcast();
#define OGRE_RW_MUTEX(name)   mutable Poco::RWLock name
#define OGRE_LOCK_RW_MUTEX_READ(name)   Poco::RWLock::ScopedLock ogrenameLock(name, false);
#define OGRE_LOCK_RW_MUTEX_WRITE(name)   Poco::RWLock::ScopedLock ogrenameLock(name, true);
#define OGRE_THREAD_POINTER(T, var)   Poco::ThreadLocal<SharedPtr<T> > var
#define OGRE_THREAD_POINTER_INIT(var)   var()
#define OGRE_THREAD_POINTER_VAR(T, var)   Poco::ThreadLocal<SharedPtr<T> > var
#define OGRE_THREAD_POINTER_GET(var)   var.get().get()
#define OGRE_THREAD_POINTER_SET(var, expr)   { var.get().setNull(); var.get().bind(expr); }
#define OGRE_THREAD_POINTER_DELETE(var)   var.get().setNull()
#define OGRE_THREAD_TYPE   Poco::Thread
#define OGRE_THREAD_CREATE(name, worker)   Poco::Thread* name = OGRE_NEW_T(Poco::Thread, MEMCATEGORY_GENERAL)(); name->start(worker);
#define OGRE_THREAD_DESTROY(name)   OGRE_DELETE_T(name, Thread, MEMCATEGORY_GENERAL)
#define OGRE_THREAD_HARDWARE_CONCURRENCY   2
#define OGRE_THREAD_CURRENT_ID   (size_t)Poco::Thread::current()
#define OGRE_THREAD_WORKER_INHERIT   : public Poco::Runnable
#define OGRE_THREAD_SLEEP(ms)   Poco::Thread::sleep(ms);

Define Documentation

#define OGRE_AUTO_MUTEX   mutable Poco::Mutex OGRE_AUTO_MUTEX_NAME;

Definition at line 29 of file OgreThreadDefinesPoco.h.

#define OGRE_AUTO_SHARED_MUTEX   mutable Poco::Mutex *OGRE_AUTO_MUTEX_NAME;

Definition at line 37 of file OgreThreadDefinesPoco.h.

#define OGRE_COPY_AUTO_SHARED_MUTEX ( from   )     assert(!OGRE_AUTO_MUTEX_NAME); OGRE_AUTO_MUTEX_NAME = from;

Definition at line 41 of file OgreThreadDefinesPoco.h.

#define OGRE_DELETE_AUTO_SHARED_MUTEX   assert(OGRE_AUTO_MUTEX_NAME); delete OGRE_AUTO_MUTEX_NAME;

Definition at line 40 of file OgreThreadDefinesPoco.h.

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

Definition at line 30 of file OgreThreadDefinesPoco.h.

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

Definition at line 38 of file OgreThreadDefinesPoco.h.

#define OGRE_LOCK_MUTEX ( name   )     Poco::Mutex::ScopedLock ogrenameLock(name);

Definition at line 34 of file OgreThreadDefinesPoco.h.

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

Definition at line 35 of file OgreThreadDefinesPoco.h.

#define OGRE_LOCK_RW_MUTEX_READ ( name   )     Poco::RWLock::ScopedLock ogrenameLock(name, false);

Definition at line 50 of file OgreThreadDefinesPoco.h.

#define OGRE_LOCK_RW_MUTEX_WRITE ( name   )     Poco::RWLock::ScopedLock ogrenameLock(name, true);

Definition at line 51 of file OgreThreadDefinesPoco.h.

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

Definition at line 31 of file OgreThreadDefinesPoco.h.

#define OGRE_MUTEX_CONDITIONAL ( mutex   )     if (mutex)

Definition at line 43 of file OgreThreadDefinesPoco.h.

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

Definition at line 39 of file OgreThreadDefinesPoco.h.

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

Definition at line 49 of file OgreThreadDefinesPoco.h.

#define OGRE_SET_AUTO_SHARED_MUTEX_NULL   OGRE_AUTO_MUTEX_NAME = 0;

Definition at line 42 of file OgreThreadDefinesPoco.h.

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

Definition at line 32 of file OgreThreadDefinesPoco.h.

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

Definition at line 33 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_CREATE ( name,
worker   )     Poco::Thread* name = OGRE_NEW_T(Poco::Thread, MEMCATEGORY_GENERAL)(); name->start(worker);

Definition at line 61 of file OgreThreadDefinesPoco.h.

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

Definition at line 64 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_DESTROY ( name   )     OGRE_DELETE_T(name, Thread, MEMCATEGORY_GENERAL)

Definition at line 62 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_HARDWARE_CONCURRENCY   2

Definition at line 63 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_NOTIFY_ALL ( sync   )     sync.broadcast();

Definition at line 47 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_NOTIFY_ONE ( sync   )     sync.signal();

Definition at line 46 of file OgreThreadDefinesPoco.h.

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

Definition at line 53 of file OgreThreadDefinesPoco.h.

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

Definition at line 58 of file OgreThreadDefinesPoco.h.

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

Definition at line 56 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_POINTER_INIT ( var   )     var()

Definition at line 54 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_POINTER_SET ( var,
expr   )     { var.get().setNull(); var.get().bind(expr); }

Definition at line 57 of file OgreThreadDefinesPoco.h.

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

Definition at line 55 of file OgreThreadDefinesPoco.h.

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

Definition at line 68 of file OgreThreadDefinesPoco.h.

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

Definition at line 44 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_TYPE   Poco::Thread

Definition at line 60 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_WAIT ( sync,
mutex,
lock   )     sync.wait(mutex);

Definition at line 45 of file OgreThreadDefinesPoco.h.

#define OGRE_THREAD_WORKER_INHERIT   : public Poco::Runnable

Definition at line 65 of file OgreThreadDefinesPoco.h.


Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:36:29 2012