parallelfor.h File Reference

Classes

class   ParallelFor
class   ParallelFor::InvokeSelector< CONTEXT, RESULTVALUETYPE >
struct   ParallelFor::BreakCondition
class   ParallelFor::BaseContext
class   ParallelFor::BreakContext
class   ParallelFor::Dummy
class   ParallelFor::NoContext
class   ParallelFor::NoBreakContext
class   ParallelFor::NoContextSelector< RESULTVALUETYPE >
class   ParallelFor::ParallelForJob
struct   ParallelFor::ForAlignedContext< FORCONTEXT, INDEXTYPE, INIT, FINALIZE >
struct   ParallelFor::ForAlignedContext< FORCONTEXT, INDEXTYPE, Dummy, Dummy >
struct   ParallelFor::StaticContext< USERCONTEXT, INDEXTYPE >
class   ParallelFor::StaticJob< CONTEXT, FLAGS, INDEXTYPE, LOOP, INIT, FINALIZE >
struct   ParallelFor::ForState< USERCONTEXT, FLAGS, INDEXTYPE, INIT, FINALIZE >
struct   ParallelFor::DynamicContext< USERCONTEXT, INDEXTYPE >
class   ParallelFor::DynamicJob< CONTEXT, FLAGS, INDEXTYPE, LOOP, INIT, FINALIZE >

Namespaces

  maxon

Macros

#define  DISABLE_IF_LOOP_TYPE_IS_INT (TYPE, ...)

Enumerations

enum   PARALLELFORFLAGS {
   INITTHREADED_FINALIZETHREADED ,
   INITTHREADED_FINALIZESYNC ,
   INITSYNC_FINALIZETHREADED ,
   INITSYNC_FINALIZESYNC ,
   NOINIT_NOFINALIZE ,
   INITTHREADEDWITHSYNC_FINALIZESYNC
}

函数

enum maxon::PARALLELFORFLAGS   MAXON_ENUM_FLAGS (PARALLELFORFLAGS)

变量

  INITTHREADED_FINALIZETHREADED
  INITTHREADED_FINALIZESYNC
  INITSYNC_FINALIZETHREADED
  INITSYNC_FINALIZESYNC
  NOINIT_NOFINALIZE
  INITTHREADEDWITHSYNC_FINALIZESYNC
static const Int   PARALLELFOR_DEFAULTGRANULARITY
static const Int   PARALLELFOR_MINIMUMGRANULARITY
static const Int   PARALLELFOR_USEMAXIMUMTHREADS
static const Int   PARALLELFOR_DISABLETHREADING
static const Int   PARALLELFOR_MAXIMUMDEPTH

Variable Documentation

◆  INITTHREADED_FINALIZETHREADED

INITTHREADED_FINALIZETHREADED

Init() and Finalize() calls are threaded.

◆  INITTHREADED_FINALIZESYNC

INITTHREADED_FINALIZESYNC

Init() is called threaded, Finalize() is called synchronously (default case).

◆  INITSYNC_FINALIZETHREADED

INITSYNC_FINALIZETHREADED

Init() is called synchronously, Finalize() is called threaded.

◆  INITSYNC_FINALIZESYNC

INITSYNC_FINALIZESYNC

Init() and Finalize() are called synchronously.

◆  NOINIT_NOFINALIZE

NOINIT_NOFINALIZE

no call to Init() or Finalize().

◆  INITTHREADEDWITHSYNC_FINALIZESYNC

INITTHREADEDWITHSYNC_FINALIZESYNC

Init() is called threaded but the parallel loop body won't start until Init() has finished for all threads, Finalize() is called synchronously.