# 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 © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Wed Nov 3 2010 19:24:52