OgreThreadDefinesTBB.h File Reference

Go to the source code of this file.

## Macros

#define | OGRE_AUTO_MUTEX mutable tbb::recursive_mutex OGRE_AUTO_MUTEX_NAME
#define | OGRE_AUTO_SHARED_MUTEX mutable tbb::recursive_mutex *OGRE_AUTO_MUTEX_NAME
#define | OGRE_COPY_AUTO_SHARED_MUTEX(from) assert(!OGRE_AUTO_MUTEX_NAME); OGRE_AUTO_MUTEX_NAME = from
#define | OGRE_DELETE_AUTO_SHARED_MUTEX assert(OGRE_AUTO_MUTEX_NAME); delete OGRE_AUTO_MUTEX_NAME
#define | OGRE_LOCK_AUTO_MUTEX tbb::recursive_mutex::scoped_lock ogreAutoMutexLock(OGRE_AUTO_MUTEX_NAME)
#define | OGRE_LOCK_AUTO_SHARED_MUTEX assert(OGRE_AUTO_MUTEX_NAME); tbb::recursive_mutex::scoped_lock ogreAutoMutexLock(*OGRE_AUTO_MUTEX_NAME)
#define | OGRE_LOCK_MUTEX(name) tbb::recursive_mutex::scoped_lock OGRE_TOKEN_PASTE_EXTRA(ogrenameLock, __LINE__) (name)
#define | OGRE_LOCK_MUTEX_NAMED(mutexName, lockName) tbb::recursive_mutex::scoped_lock lockName(mutexName)
#define | OGRE_LOCK_RW_MUTEX_READ(name) tbb::queuing_rw_mutex::scoped_lock ogrenameLock(name, false)
#define | OGRE_LOCK_RW_MUTEX_WRITE(name) tbb::queuing_rw_mutex::scoped_lock ogrenameLock(name, true)
#define | OGRE_MUTEX(name) mutable tbb::recursive_mutex name
#define | OGRE_MUTEX_CONDITIONAL(mutex) if (mutex)
#define | OGRE_NEW_AUTO_SHARED_MUTEX assert(!OGRE_AUTO_MUTEX_NAME); OGRE_AUTO_MUTEX_NAME = new tbb::recursive_mutex()
#define | OGRE_RW_MUTEX(name) mutable tbb::queuing_rw_mutex name
#define | OGRE_SET_AUTO_SHARED_MUTEX_NULL OGRE_AUTO_MUTEX_NAME = 0
#define | OGRE_STATIC_MUTEX(name) static tbb::recursive_mutex name
#define | OGRE_STATIC_MUTEX_INSTANCE(name) tbb::recursive_mutex name
#define | OGRE_THREAD_CURRENT_ID tbb::this_tbb_thread::get_id()
#define | OGRE_THREAD_HARDWARE_CONCURRENCY tbb::task_scheduler_init::default_num_threads()
#define | OGRE_THREAD_ID_TYPE tbb::tbb_thread::id
#define | OGRE_THREAD_POINTER(T, var) tbb::enumerable_thread_specific<SharedPtr<T> > var
#define | OGRE_THREAD_POINTER_DELETE(var) var.local().setNull()
#define | OGRE_THREAD_POINTER_GET(var) var.local().get()
#define | OGRE_THREAD_POINTER_INIT(var) var()
#define | OGRE_THREAD_POINTER_SET(var, expr) do { var.local().setNull(); var.local().bind(expr); } while (0)
#define | OGRE_THREAD_POINTER_VAR(T, var) tbb::enumerable_thread_specific<SharedPtr<T> > var
#define | OGRE_THREAD_SLEEP(ms) tbb::this_tbb_thread::sleep(tbb::tick_count::interval_t(double(ms)/1000))
#define | OGRE_THREAD_WORKER_INHERIT
#define | OGRE_THREAD_YIELD tbb::this_tbb_thread::yield()
#define | OGRE_TOKEN_PASTE(x, y) x ## y
#define | OGRE_TOKEN_PASTE_EXTRA(x, y) OGRE_TOKEN_PASTE(x, y)

## Macro Definition Documentation

## OGRE_AUTO_MUTEX

#define OGRE_AUTO_MUTEX mutable tbb::recursive_mutex OGRE_AUTO_MUTEX_NAME

Definition at line 31 of file OgreThreadDefinesTBB.h.

## OGRE_AUTO_SHARED_MUTEX

#define OGRE_AUTO_SHARED_MUTEX mutable tbb::recursive_mutex *OGRE_AUTO_MUTEX_NAME

Definition at line 39 of file OgreThreadDefinesTBB.h.

## OGRE_COPY_AUTO_SHARED_MUTEX

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

Definition at line 43 of file OgreThreadDefinesTBB.h.

## OGRE_DELETE_AUTO_SHARED_MUTEX

#define OGRE_DELETE_AUTO_SHARED_MUTEX assert(OGRE_AUTO_MUTEX_NAME); delete OGRE_AUTO_MUTEX_NAME

Definition at line 42 of file OgreThreadDefinesTBB.h.

## OGRE_LOCK_AUTO_MUTEX

#define OGRE_LOCK_AUTO_MUTEX tbb::recursive_mutex::scoped_lock ogreAutoMutexLock(OGRE_AUTO_MUTEX_NAME)

Definition at line 32 of file OgreThreadDefinesTBB.h.

## OGRE_LOCK_AUTO_SHARED_MUTEX

#define OGRE_LOCK_AUTO_SHARED_MUTEX assert(OGRE_AUTO_MUTEX_NAME); tbb::recursive_mutex::scoped_lock ogreAutoMutexLock(*OGRE_AUTO_MUTEX_NAME)

Definition at line 40 of file OgreThreadDefinesTBB.h.

## OGRE_LOCK_MUTEX

#define OGRE_LOCK_MUTEX | ( |  | name | ) | tbb::recursive_mutex::scoped_lock OGRE_TOKEN_PASTE_EXTRA(ogrenameLock, __LINE__) (name)

Definition at line 36 of file OgreThreadDefinesTBB.h.

## OGRE_LOCK_MUTEX_NAMED

#define OGRE_LOCK_MUTEX_NAMED | ( |  | mutexName,
|  |  | lockName
| ) |  | tbb::recursive_mutex::scoped_lock lockName(mutexName)

Definition at line 37 of file OgreThreadDefinesTBB.h.

## OGRE_LOCK_RW_MUTEX_READ

#define OGRE_LOCK_RW_MUTEX_READ | ( |  | name | ) | tbb::queuing_rw_mutex::scoped_lock ogrenameLock(name, false)

Definition at line 48 of file OgreThreadDefinesTBB.h.

## OGRE_LOCK_RW_MUTEX_WRITE

#define OGRE_LOCK_RW_MUTEX_WRITE | ( |  | name | ) | tbb::queuing_rw_mutex::scoped_lock ogrenameLock(name, true)

Definition at line 49 of file OgreThreadDefinesTBB.h.

## OGRE_MUTEX

#define OGRE_MUTEX | ( |  | name | ) | mutable tbb::recursive_mutex name

Definition at line 33 of file OgreThreadDefinesTBB.h.

## OGRE_MUTEX_CONDITIONAL

#define OGRE_MUTEX_CONDITIONAL | ( |  | mutex | ) | if (mutex)

Definition at line 45 of file OgreThreadDefinesTBB.h.

## OGRE_NEW_AUTO_SHARED_MUTEX

#define OGRE_NEW_AUTO_SHARED_MUTEX assert(!OGRE_AUTO_MUTEX_NAME); OGRE_AUTO_MUTEX_NAME = new tbb::recursive_mutex()

Definition at line 41 of file OgreThreadDefinesTBB.h.

## OGRE_RW_MUTEX

#define OGRE_RW_MUTEX | ( |  | name | ) | mutable tbb::queuing_rw_mutex name

Definition at line 47 of file OgreThreadDefinesTBB.h.

## OGRE_SET_AUTO_SHARED_MUTEX_NULL

#define OGRE_SET_AUTO_SHARED_MUTEX_NULL OGRE_AUTO_MUTEX_NAME = 0

Definition at line 44 of file OgreThreadDefinesTBB.h.

## OGRE_STATIC_MUTEX

#define OGRE_STATIC_MUTEX | ( |  | name | ) | static tbb::recursive_mutex name

Definition at line 34 of file OgreThreadDefinesTBB.h.

## OGRE_STATIC_MUTEX_INSTANCE

#define OGRE_STATIC_MUTEX_INSTANCE | ( |  | name | ) | tbb::recursive_mutex name

Definition at line 35 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_CURRENT_ID

#define OGRE_THREAD_CURRENT_ID tbb::this_tbb_thread::get_id()

Definition at line 59 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_HARDWARE_CONCURRENCY

#define OGRE_THREAD_HARDWARE_CONCURRENCY tbb::task_scheduler_init::default_num_threads()

Definition at line 58 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_ID_TYPE

#define OGRE_THREAD_ID_TYPE tbb::tbb_thread::id

Definition at line 62 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_POINTER

#define OGRE_THREAD_POINTER | ( |  | T,
|  |  | var
| ) |  | tbb::enumerable_thread_specific<SharedPtr<T> > var

Definition at line 51 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_POINTER_DELETE

#define OGRE_THREAD_POINTER_DELETE | ( |  | var | ) | var.local().setNull()

Definition at line 56 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_POINTER_GET

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

Definition at line 54 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_POINTER_INIT

#define OGRE_THREAD_POINTER_INIT | ( |  | var | ) | var()

Definition at line 52 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_POINTER_SET

#define OGRE_THREAD_POINTER_SET | ( |  | var,
|  |  | expr
| ) |  | do { var.local().setNull(); var.local().bind(expr); } while (0)

Definition at line 55 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_POINTER_VAR

#define OGRE_THREAD_POINTER_VAR | ( |  | T,
|  |  | var
| ) |  | tbb::enumerable_thread_specific<SharedPtr<T> > var

Definition at line 53 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_SLEEP

#define OGRE_THREAD_SLEEP | ( |  | ms | ) | tbb::this_tbb_thread::sleep(tbb::tick_count::interval_t(double(ms)/1000))

Definition at line 60 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_WORKER_INHERIT

#define OGRE_THREAD_WORKER_INHERIT

Definition at line 61 of file OgreThreadDefinesTBB.h.

## OGRE_THREAD_YIELD

#define OGRE_THREAD_YIELD tbb::this_tbb_thread::yield()

Definition at line 63 of file OgreThreadDefinesTBB.h.

## OGRE_TOKEN_PASTE

#define OGRE_TOKEN_PASTE | ( |  | x,
|  |  | y
| ) |  | x ## y

Definition at line 29 of file OgreThreadDefinesTBB.h.

## OGRE_TOKEN_PASTE_EXTRA

#define OGRE_TOKEN_PASTE_EXTRA | ( |  | x,
|  |  | y
| ) |  | OGRE_TOKEN_PASTE(x, y)

Definition at line 30 of file OgreThreadDefinesTBB.h.

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.