<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="page">
    <name>index</name>
    <title></title>
    <filename>index</filename>
    <docanchor file="index">codeapi</docanchor>
  </compound>
  <compound kind="file">
    <name>cuda_common.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>cuda__common_8h</filename>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockDim</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a79e686de5a1d8773ace5bc0da0185ceb</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockDimX</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a86eb0ab71bef24d8dc337081a40f9685</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockDimY</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a988645473a3ff3fcb72e0bc734830eac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockIdx</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a156d15f09e4ec9c5db203ef1795d9d1e</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockIdxX</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>af48bc5e240c2403775f234a732a01845</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockIdxY</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aa058841261c6fb35f592b43a59d02da1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxConstant</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aa78dfd6fc3a0ccb0082e672241ae75ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDevice</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a91fc8964f5135c75f3537b37375bd7fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceContext</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a7b9dabc9bda756a3486de15a7a41bb07</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceData</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a8df00dfe8a206caabee1a5b391af70fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceQueue</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aa93fcf4f4e6e637641d824f6eb5f0c74</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxExecKernel</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>ab605dbd1d9a949654e06e70a5d319fa6</anchor>
      <arglist>(numb, numt, kfunc, args)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobal</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a264b2da6bb9848e55284c8082b7c68b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalIdxX</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a1c5d1ad8fa21fd770ae26b8cebf0c3eb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalIdxY</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a45f4820718c617ed0d7dd2ecd1091818</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalOffsetX</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a5b8fb73e4eca2a629d9a72dc68b29e8b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalOffsetY</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a4846300a1f790db66e24b0ea190c4f82</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGridDimX</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aef80cdae9b6f37432a49d69dbe88b0fd</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxHost</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>addb5825f8330223ab1fc1635f2504a3f</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxOverload</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>afaaf6363131a4acaf5193ca402e2e923</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParallelInfD</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a5a99af78550c02e09707993c26cc8011</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParallelInfF</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>acf6903dfc3dda704c512478b00b2a09a</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParams</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a0dab1f867dd4d818a2967ddace505f69</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxShared</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aa7743028d6807a27f2d5ebc159c41939</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxSyncthreads</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aa24864c8b1c8570ff1304c715dfba149</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxThreadIdx</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a23a28dd814c5193fb712539ca350257f</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxThreadIdxX</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a8407748489c7cb4bbe5bf76c2cd5bfac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxThreadIdxY</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a53e49051a9d6b245b825947cce5a9739</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDeviceContext</type>
      <name>dxGetDeviceContext</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>ae338471cfaab0afff4d814486158ea6c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDeviceQueue</type>
      <name>dxGetDeviceQueue</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a7e4d69ae9736e8389298c330eff487f0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxGlobalSync</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a6b7477a8b4079196bb2b6d00894e6fbe</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxInitDevice</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>aacf237ff2cd04fb110f1bd02ec93a01e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxShutdownDevice</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a159c544ec60065e6f232a3c620bf43a2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static dxDeviceContext</type>
      <name>sDeviceContext</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>a1bc507c2d998d1a299ff6699d0d93f81</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static dxDeviceQueue</type>
      <name>sDeviceQueue</name>
      <anchorfile>cuda__common_8h.html</anchorfile>
      <anchor>acc5e65ba313fe6e71ddcb2ff2e18821d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>cuda_solver.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>cuda__solver_8cpp</filename>
    <includes id="cuda__solver_8h" name="cuda_solver.h" local="no" imported="no">cuda_solver.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <includes id="cuda__utils_8h" name="cuda_utils.h" local="no" imported="no">cuda_utils.h</includes>
    <includes id="cuda__solver_8cpp" name="cuda_solver.cpp" local="yes" imported="no">cuda_kernels.cuh</includes>
    <includes id="parallel__math_8h" name="parallel_math.h" local="no" imported="no">parallel_math.h</includes>
    <namespace>parallel_ode</namespace>
  </compound>
  <compound kind="file">
    <name>cuda_solver.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>cuda__solver_8h</filename>
    <includes id="cuda__solver_8h" name="cuda_solver.h" local="yes" imported="no">parallel_solver.h</includes>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__memory_8h" name="parallel_memory.h" local="no" imported="no">parallel_memory.h</includes>
    <class kind="class">parallel_ode::CudaPGSSolver</class>
    <namespace>parallel_ode</namespace>
  </compound>
  <compound kind="file">
    <name>cuda_timer.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>cuda__timer_8h</filename>
    <class kind="class">CUDAODETimer</class>
  </compound>
  <compound kind="file">
    <name>cuda_utils.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>cuda__utils_8h</filename>
    <includes id="cuda__utils_8h" name="cuda_utils.h" local="yes" imported="no">cuda_common.h</includes>
    <member kind="define">
      <type>#define</type>
      <name>CUDA_CHECK_ERROR</name>
      <anchorfile>cuda__utils_8h.html</anchorfile>
      <anchor>a48875bb17debe32f352cb7d71296064d</anchor>
      <arglist>(errorMessage)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CUDA_CHECK_ERROR_BASE</name>
      <anchorfile>cuda__utils_8h.html</anchorfile>
      <anchor>a409d2ad0cfcccb5161258c5488dc6c33</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CUDA_SAFE_CALL</name>
      <anchorfile>cuda__utils_8h.html</anchorfile>
      <anchor>a0bc2332eff86e645eae632d071929dc5</anchor>
      <arglist>(call)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CUDA_SAFE_CALL_NO_SYNC</name>
      <anchorfile>cuda__utils_8h.html</anchorfile>
      <anchor>a024604466a0ecc1c84ca93c25332b3c2</anchor>
      <arglist>(call)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>cudaDeviceInit</name>
      <anchorfile>cuda__utils_8h.html</anchorfile>
      <anchor>ad68a7d38384ba6743ac34fb8f6c3ebd0</anchor>
      <arglist>(int dev=0)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>main_for_lib.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>main__for__lib_8cpp</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>main__for__lib_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>parallelReduceTest</name>
      <anchorfile>main__for__lib_8cpp.html</anchorfile>
      <anchor>a5e004c85306186e358ec7fb8a2f7db9d</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>mainpage.dox</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/</path>
    <filename>mainpage_8dox</filename>
  </compound>
  <compound kind="file">
    <name>opencl_common.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>opencl__common_8h</filename>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockDimX</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a86eb0ab71bef24d8dc337081a40f9685</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockDimY</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a988645473a3ff3fcb72e0bc734830eac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockIdxX</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>af48bc5e240c2403775f234a732a01845</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockIdxY</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>aa058841261c6fb35f592b43a59d02da1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxConstant</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>aa78dfd6fc3a0ccb0082e672241ae75ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDevice</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a91fc8964f5135c75f3537b37375bd7fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceContext</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a7b9dabc9bda756a3486de15a7a41bb07</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceData</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a8df00dfe8a206caabee1a5b391af70fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceQueue</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>aa93fcf4f4e6e637641d824f6eb5f0c74</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxExecKernel</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>ab605dbd1d9a949654e06e70a5d319fa6</anchor>
      <arglist>(numb, numt, kfunc, args)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobal</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a264b2da6bb9848e55284c8082b7c68b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalIdxX</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a1c5d1ad8fa21fd770ae26b8cebf0c3eb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalIdxY</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a45f4820718c617ed0d7dd2ecd1091818</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalOffsetX</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a5b8fb73e4eca2a629d9a72dc68b29e8b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobalOffsetY</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a4846300a1f790db66e24b0ea190c4f82</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGridDimX</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>aef80cdae9b6f37432a49d69dbe88b0fd</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxHost</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>addb5825f8330223ab1fc1635f2504a3f</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxMul24</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a55e839edfee68c9fbf015826552f9f7b</anchor>
      <arglist>(a, b)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxOverload</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>afaaf6363131a4acaf5193ca402e2e923</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParallelInfD</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a5a99af78550c02e09707993c26cc8011</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParallelInfF</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>acf6903dfc3dda704c512478b00b2a09a</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParams</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a0dab1f867dd4d818a2967ddace505f69</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxShared</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>aa7743028d6807a27f2d5ebc159c41939</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxSyncthreads</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>aa24864c8b1c8570ff1304c715dfba149</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxThreadIdxX</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a8407748489c7cb4bbe5bf76c2cd5bfac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxThreadIdxY</name>
      <anchorfile>opencl__common_8h.html</anchorfile>
      <anchor>a53e49051a9d6b245b825947cce5a9739</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>opencl_kernels.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>opencl__kernels_8cpp</filename>
    <includes id="opencl__kernels_8cpp" name="opencl_kernels.cpp" local="yes" imported="no">opencl_kernels.h</includes>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="opencl__utils_8h" name="opencl_utils.h" local="no" imported="no">opencl_utils.h</includes>
    <includes id="parallel__reduce_8h" name="parallel_reduce.h" local="no" imported="no">parallel_reduce.h</includes>
    <includes id="parallel__math_8h" name="parallel_math.h" local="no" imported="no">parallel_math.h</includes>
    <namespace>parallel_ode</namespace>
    <member kind="function">
      <type>std::string</type>
      <name>extractDirectory</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a13bf323f08eb71576f4da9165ebb2e49</anchor>
      <arglist>(const std::string &amp;path)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclInitializeKernels</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a5f2f4c358680de3a19840d7e55667788</anchor>
      <arglist>(cl_context cxGPUContext, cl_command_queue cqParamCommandQue)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ab52e28c944a1941e87e7ecf10779d3af</anchor>
      <arglist>(cl_mem fc0, cl_mem fc1, cl_mem fc0_reduction, cl_mem fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa1d9aa2b26d0fd23fa9613cd1d1cea23</anchor>
      <arglist>(cl_mem fc0_reduction, cl_mem fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a7f72d4ccaf932ca30e1d43c3dc215952</anchor>
      <arglist>(int offset, int numConstraints, bool bUseAtomics)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSSolveInit</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa1ea4fe36091ba886c7977ca6198542f</anchor>
      <arglist>(cl_mem bodyIDs, cl_mem fIDs, cl_mem j, cl_mem ij, cl_mem fc0, cl_mem fc1, cl_mem fc0_reduction, cl_mem fc1_reduction, cl_mem lambda, cl_mem adcfm, cl_mem rhs, cl_mem hilo, int bStride, int cStride, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclShutdownKernels</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a4ad2b5943cb6721326ba1e28ca60ac24</anchor>
      <arglist>(void)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclZeroVector</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a9de181ca6b173fedf12c075fd2eb0438</anchor>
      <arglist>(cl_mem buffer, int bufferSize, bool bScalarType)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static size_t</type>
      <name>uSnap</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a380d8a608489ac77e0546fc5ecd368ec</anchor>
      <arglist>(size_t a, size_t b)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa8d89f99785c2b684b2a3010f82e30d8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a8e451413dee66685280cf62269591523</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckZero</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a4b36cd2a7eb50a806da0a4491b41aed1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckZero4</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ad4e03224186c0242e04116b2a11c902a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_program</type>
      <name>cpSolver</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a1d007407ba2be594cd1937a3f92f5be4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_command_queue</type>
      <name>cqDefaultCommandQueue</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a85504a48a117737a1c9c35ba9d7200b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>FILENAME</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a59d5853903b9f03ed7186ff598770ffb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>INC_DIR</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a9c8bfdf7ad43ff3adc44813f0f83da66</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>SRC_DIR</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac91f25ca8969c5c226d03bb64acddf49</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>opencl_kernels.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>opencl__kernels_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <namespace>parallel_ode</namespace>
    <member kind="function">
      <type>void</type>
      <name>oclInitializeKernels</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a5f2f4c358680de3a19840d7e55667788</anchor>
      <arglist>(cl_context cxGPUContext, cl_command_queue cqParamCommandQue)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ab52e28c944a1941e87e7ecf10779d3af</anchor>
      <arglist>(cl_mem fc0, cl_mem fc1, cl_mem fc0_reduction, cl_mem fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa1d9aa2b26d0fd23fa9613cd1d1cea23</anchor>
      <arglist>(cl_mem fc0_reduction, cl_mem fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a7f72d4ccaf932ca30e1d43c3dc215952</anchor>
      <arglist>(int offset, int numConstraints, bool bUseAtomics)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSSolveInit</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa1ea4fe36091ba886c7977ca6198542f</anchor>
      <arglist>(cl_mem bodyIDs, cl_mem fIDs, cl_mem j, cl_mem ij, cl_mem fc0, cl_mem fc1, cl_mem fc0_reduction, cl_mem fc1_reduction, cl_mem lambda, cl_mem adcfm, cl_mem rhs, cl_mem hilo, int bStride, int cStride, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclShutdownKernels</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a4ad2b5943cb6721326ba1e28ca60ac24</anchor>
      <arglist>(void)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclZeroVector</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a9de181ca6b173fedf12c075fd2eb0438</anchor>
      <arglist>(cl_mem buffer, int bufferSize, bool bScalarType)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>opencl_solver.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>opencl__solver_8cpp</filename>
    <includes id="opencl__solver_8h" name="opencl_solver.h" local="no" imported="no">opencl_solver.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <includes id="opencl__kernels_8h" name="opencl_kernels.h" local="yes" imported="no">opencl_kernels.h</includes>
    <namespace>parallel_ode</namespace>
  </compound>
  <compound kind="file">
    <name>opencl_solver.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>opencl__solver_8h</filename>
    <includes id="parallel__solver_8h" name="parallel_solver.h" local="yes" imported="no">parallel_solver.h</includes>
    <class kind="class">parallel_ode::OpenCLPGSSolver</class>
    <namespace>parallel_ode</namespace>
    <member kind="variable" static="yes">
      <type>static const int</type>
      <name>DEFAULT_CL_FLAGS</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a628a9c1cc56f4374de53ec93ea8976f6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>opencl_utils.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>opencl__utils_8cpp</filename>
    <includes id="opencl__utils_8h" name="opencl_utils.h" local="no" imported="no">opencl_utils.h</includes>
    <member kind="define">
      <type>#define</type>
      <name>HDASHLINE</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a26f835228b471f166ec78a0d6a8e9983</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>const char *</type>
      <name>oclErrorString</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a197eef45f75b6b32b20af2b8fa4cc3dc</anchor>
      <arglist>(cl_int error)</arglist>
    </member>
    <member kind="function">
      <type>char *</type>
      <name>oclFindFilePath</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a75b552af74912b8f0c3bf6f3327e5e17</anchor>
      <arglist>(const char *filename, const char *executable_path)</arglist>
    </member>
    <member kind="function">
      <type>cl_device_id</type>
      <name>oclGetFirstDev</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>ae6db9e7b820be8abfe33210ddd09a6d2</anchor>
      <arglist>(cl_context cxGPUContext)</arglist>
    </member>
    <member kind="function">
      <type>cl_context</type>
      <name>oclGetGlobalContext</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>aae071659591aeb91858f7544ccb75634</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>cl_command_queue</type>
      <name>oclGetGlobalQueue</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a03a80fc243e24be22d4c441c3827d239</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>cl_int</type>
      <name>oclGetPlatformID</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>ac16157a7e510b76f34fa3b4efe8d8394</anchor>
      <arglist>(cl_platform_id *clSelectedPlatformID)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclGetProgBinary</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a5e00298fa6768489cb1a3c24a8cf0ca9</anchor>
      <arglist>(cl_program cpProgram, cl_device_id cdDevice, char **binary, size_t *length)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclInit</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>af9b8854e58296338210e576fb6c12c07</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>char *</type>
      <name>oclLoadProgSource</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a5e243e26c5304d99dc8f0fb3c7120db0</anchor>
      <arglist>(const char *cFilename, const char *cPreamble, size_t *szFinalLength)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclLogBuildInfo</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a691d1ad981cc84158368336f39183ddf</anchor>
      <arglist>(cl_program cpProgram, cl_device_id cdDevice)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclLogPtx</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a11ed3c57d14112e5444eb28f92b80aad</anchor>
      <arglist>(cl_program cpProgram, cl_device_id cdDevice, const char *cPtxFileName)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclShutdown</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a834e43d7528250ebc0fbfecff628f2a5</anchor>
      <arglist>(cl_context clContext, cl_command_queue clQueue)</arglist>
    </member>
    <member kind="variable">
      <type>cl_context</type>
      <name>g_clDeviceContext</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a070b99d95a0778b2c5e163d4dd030add</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>cl_command_queue</type>
      <name>g_clDeviceQueue</name>
      <anchorfile>opencl__utils_8cpp.html</anchorfile>
      <anchor>a2456710073c0e53fb6988c2e56e92252</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>opencl_utils.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>opencl__utils_8h</filename>
    <member kind="define">
      <type>#define</type>
      <name>oclCheckError</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a5eddd2280525cfc7b94cc82bbe16b311</anchor>
      <arglist>(a, b)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>oclCheckErrorEX</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>ae376c38b10d10243dc6954c63e21ed72</anchor>
      <arglist>(a, b, c)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>__oclCheckErrorEX</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>aa4d844f17b60aaae8c88d2d1a48387a3</anchor>
      <arglist>(cl_int iSample, cl_int iReference, void(*pCleanup)(int), const char *cFile, const int iLine)</arglist>
    </member>
    <member kind="function">
      <type>cl_context</type>
      <name>dxGetDeviceContext</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a8df6c3263e4111d82ccf01a7029d417d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>cl_command_queue</type>
      <name>dxGetDeviceQueue</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a6afa66d2bccf116d21d3db3fd4e76e2c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxGlobalSync</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a6b7477a8b4079196bb2b6d00894e6fbe</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxInitDevice</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>aacf237ff2cd04fb110f1bd02ec93a01e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxShutdownDevice</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a159c544ec60065e6f232a3c620bf43a2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>const char *</type>
      <name>oclErrorString</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a197eef45f75b6b32b20af2b8fa4cc3dc</anchor>
      <arglist>(cl_int error)</arglist>
    </member>
    <member kind="function">
      <type>char *</type>
      <name>oclFindFilePath</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a053691544cec0c0235a55600d11a03eb</anchor>
      <arglist>(const char *filename, const char *executablePath)</arglist>
    </member>
    <member kind="function">
      <type>cl_device_id</type>
      <name>oclGetFirstDev</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>ae6db9e7b820be8abfe33210ddd09a6d2</anchor>
      <arglist>(cl_context cxGPUContext)</arglist>
    </member>
    <member kind="function">
      <type>cl_context</type>
      <name>oclGetGlobalContext</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>aae071659591aeb91858f7544ccb75634</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>cl_command_queue</type>
      <name>oclGetGlobalQueue</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a03a80fc243e24be22d4c441c3827d239</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>cl_int</type>
      <name>oclGetPlatformID</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>ac16157a7e510b76f34fa3b4efe8d8394</anchor>
      <arglist>(cl_platform_id *clSelectedPlatformID)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclGetProgBinary</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a5e00298fa6768489cb1a3c24a8cf0ca9</anchor>
      <arglist>(cl_program cpProgram, cl_device_id cdDevice, char **binary, size_t *length)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclInit</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>af9b8854e58296338210e576fb6c12c07</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclInitializeKernels</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a2aec58fccd64f1a688f16cb20dfd6581</anchor>
      <arglist>(cl_context cxGPUContext, cl_command_queue cqCommandQueue)</arglist>
    </member>
    <member kind="function">
      <type>char *</type>
      <name>oclLoadProgSource</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a5e243e26c5304d99dc8f0fb3c7120db0</anchor>
      <arglist>(const char *cFilename, const char *cPreamble, size_t *szFinalLength)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclLogBuildInfo</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a691d1ad981cc84158368336f39183ddf</anchor>
      <arglist>(cl_program cpProgram, cl_device_id cdDevice)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclLogPtx</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a11ed3c57d14112e5444eb28f92b80aad</anchor>
      <arglist>(cl_program cpProgram, cl_device_id cdDevice, const char *cPtxFileName)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclShutdown</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>a834e43d7528250ebc0fbfecff628f2a5</anchor>
      <arglist>(cl_context clContext, cl_command_queue clQueue)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclShutdownKernels</name>
      <anchorfile>opencl__utils_8h.html</anchorfile>
      <anchor>aedc4bc83295be17e96c4dcd4db1c4f64</anchor>
      <arglist>(void)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>openmp_common.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>openmp__common_8h</filename>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockDim</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a79e686de5a1d8773ace5bc0da0185ceb</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxBlockIdx</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a156d15f09e4ec9c5db203ef1795d9d1e</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxConstant</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>aa78dfd6fc3a0ccb0082e672241ae75ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDevice</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a91fc8964f5135c75f3537b37375bd7fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceContext</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a7b9dabc9bda756a3486de15a7a41bb07</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceData</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a8df00dfe8a206caabee1a5b391af70fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxDeviceQueue</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>aa93fcf4f4e6e637641d824f6eb5f0c74</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxGlobal</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a264b2da6bb9848e55284c8082b7c68b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxHost</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>addb5825f8330223ab1fc1635f2504a3f</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxMul24</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a55e839edfee68c9fbf015826552f9f7b</anchor>
      <arglist>(a, b)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxOverload</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>afaaf6363131a4acaf5193ca402e2e923</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParallelInfD</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a5a99af78550c02e09707993c26cc8011</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParallelInfF</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>acf6903dfc3dda704c512478b00b2a09a</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxParams</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a0dab1f867dd4d818a2967ddace505f69</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxShared</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>aa7743028d6807a27f2d5ebc159c41939</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxSyncthreads</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>aa24864c8b1c8570ff1304c715dfba149</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>dxThreadIdx</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a23a28dd814c5193fb712539ca350257f</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>dxDeviceContext</type>
      <name>dxGetDeviceContext</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>ae338471cfaab0afff4d814486158ea6c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDeviceQueue</type>
      <name>dxGetDeviceQueue</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a7e4d69ae9736e8389298c330eff487f0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxGlobalSync</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a6b7477a8b4079196bb2b6d00894e6fbe</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxInitDevice</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>aacf237ff2cd04fb110f1bd02ec93a01e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxShutdownDevice</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a159c544ec60065e6f232a3c620bf43a2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static dxDeviceContext</type>
      <name>sCpuContext</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>a4144437fb23d6c94fda6a18c1b0bcc8e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static dxDeviceQueue</type>
      <name>sDeviceQueue</name>
      <anchorfile>openmp__common_8h.html</anchorfile>
      <anchor>acc5e65ba313fe6e71ddcb2ff2e18821d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>openmp_kernels.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>openmp__kernels_8cpp</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__reduce_8h" name="parallel_reduce.h" local="no" imported="no">parallel_reduce.h</includes>
    <includes id="parallel__math_8h" name="parallel_math.h" local="no" imported="no">parallel_math.h</includes>
    <includes id="openmp__kernels_8cpp" name="openmp_kernels.cpp" local="yes" imported="no">openmp_kernels.h</includes>
    <namespace>parallel_ode</namespace>
    <member kind="function">
      <type>void</type>
      <name>ompPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac8fc8225461e3408bcaa4ae0fb85a392</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>ompPGSReduce&lt; dReal &gt;</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a5866746ef7a7f1877e893a67c7a36e42</anchor>
      <arglist>(dReal4 *fc0, dReal4 *fc1, dReal4 *fc0_reduction, dReal4 *fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompPGSSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a844984c865b0265a9e83bd78ed169b54</anchor>
      <arglist>(int4 *bodyIDs, int *fIDs, typename vec4&lt; T &gt;::Type *j, typename vec4&lt; T &gt;::Type *ij, typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, T *lambda, T *adcfm, T *rhs, T *hilo, int offset, int numConstraints, bool bUseAtomics, int bStride, int cStride)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>ompPGSSolve&lt; dReal &gt;</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa8c2fc0b11ae8dc2f44d3a3d6a4bc976</anchor>
      <arglist>(int4 *bodyIDs, int *fIDs, dReal4 *j, dReal4 *ij, dReal4 *fc0, dReal4 *fc1, dReal4 *fc0_reduction, dReal4 *fc1_reduction, dReal *lambda, dReal *adcfm, dReal *rhs, dReal *hilo, int batch, int numConstraints, bool bUseAtomics, int bStride, int cStride)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompZeroVector</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>afd1351860e3cd69d8bbb081d7ffb7293</anchor>
      <arglist>(T *buffer, int bufferSize)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>ompZeroVector&lt; dReal4 &gt;</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac14c9ec43ec1989194231d9be3ea46b2</anchor>
      <arglist>(dReal4 *buffer, int bufferSize)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>openmp_kernels.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>openmp__kernels_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__math_8h" name="parallel_math.h" local="no" imported="no">parallel_math.h</includes>
    <namespace>parallel_ode</namespace>
    <member kind="function">
      <type>void</type>
      <name>ompPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac8fc8225461e3408bcaa4ae0fb85a392</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompPGSSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a844984c865b0265a9e83bd78ed169b54</anchor>
      <arglist>(int4 *bodyIDs, int *fIDs, typename vec4&lt; T &gt;::Type *j, typename vec4&lt; T &gt;::Type *ij, typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, T *lambda, T *adcfm, T *rhs, T *hilo, int offset, int numConstraints, bool bUseAtomics, int bStride, int cStride)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompZeroVector</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>afd1351860e3cd69d8bbb081d7ffb7293</anchor>
      <arglist>(T *buffer, int bufferSize)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>openmp_solver.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>openmp__solver_8cpp</filename>
    <includes id="openmp__solver_8h" name="openmp_solver.h" local="no" imported="no">openmp_solver.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <includes id="openmp__kernels_8h" name="openmp_kernels.h" local="yes" imported="no">openmp_kernels.h</includes>
    <namespace>parallel_ode</namespace>
  </compound>
  <compound kind="file">
    <name>openmp_solver.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>openmp__solver_8h</filename>
    <includes id="parallel__solver_8h" name="parallel_solver.h" local="yes" imported="no">parallel_solver.h</includes>
    <class kind="class">parallel_ode::OpenMPPGSSolver</class>
    <namespace>parallel_ode</namespace>
    <member kind="variable">
      <type>const int</type>
      <name>DEFAULT_OPENMP_FLAGS</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a1d1a7074abb16a372fb3fef78cb4fbfe</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>openmp_utils.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>openmp__utils_8h</filename>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>myAtomicVecAdd</name>
      <anchorfile>openmp__utils_8h.html</anchorfile>
      <anchor>a167d46dbaf3888916c227221748e5085</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type &amp;a, typename vec4&lt; T &gt;::Type &amp;b)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_array.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__array_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__memory_8h" name="parallel_memory.h" local="no" imported="no">parallel_memory.h</includes>
    <class kind="class">parallel_utils::ParallelArray</class>
    <class kind="class">parallel_utils::ParallelHDArray</class>
    <namespace>parallel_utils</namespace>
    <namespace>parallel_utils::ArrayTypes</namespace>
    <member kind="define">
      <type>#define</type>
      <name>BUFFER_MAX_THRESHOLD_MULTIPLIER</name>
      <anchorfile>parallel__array_8h.html</anchorfile>
      <anchor>a5112ffa579870383e99b14122164a7b6</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>BUFFER_MIN_THRESHOLD_MULTIPLIER</name>
      <anchorfile>parallel__array_8h.html</anchorfile>
      <anchor>ac82aab4d2f1519d5235e5460e4b51707</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>BUFFER_MULTIPLIER</name>
      <anchorfile>parallel__array_8h.html</anchorfile>
      <anchor>a27398871dcde1e2e77e036d7d186f743</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>ArrayTypes::ArrayType</type>
      <name>ArrayType</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a251c1c087b74c261c43b186b6294e2bb</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ArrayType</name>
      <anchorfile>namespaceparallel__utils_1_1ArrayTypes.html</anchorfile>
      <anchor>ac724e8e14446be401b4e52204446f548</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>HOST_ARRAY</name>
      <anchorfile>namespaceparallel__utils_1_1ArrayTypes.html</anchorfile>
      <anchor>ac724e8e14446be401b4e52204446f548a2363c8f695bdfeae6947e261f95bf501</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEVICE_ARRAY</name>
      <anchorfile>namespaceparallel__utils_1_1ArrayTypes.html</anchorfile>
      <anchor>ac724e8e14446be401b4e52204446f548ac59368c60fd74b2d7efb12715a679d90</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_batch.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__batch_8cpp</filename>
    <includes id="parallel__batch_8h" name="parallel_batch.h" local="no" imported="no">parallel_batch.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <namespace>parallel_ode</namespace>
    <member kind="typedef">
      <type>boost::unordered_map&lt; int, int &gt;</type>
      <name>BatchMap</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a25869018e6370bd72046177e69c81671</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::multimap&lt; int, int, std::greater&lt; int &gt; &gt;</type>
      <name>BatchMultimap</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aef9efe59592db9cfe769044409a6dd02</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>BatchMultimap::iterator</type>
      <name>BatchMultimapIterator</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a3b55f605fe7099a08ef45f3b859a4e08</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_batch.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__batch_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="yes" imported="no">parallel_common.h</includes>
    <class kind="class">parallel_ode::BatchStrategy</class>
    <class kind="class">parallel_ode::BatchStrategyFactory</class>
    <class kind="class">parallel_ode::ColoringBatchStrategy</class>
    <class kind="class">parallel_ode::GreedyBatchStrategy</class>
    <namespace>parallel_ode</namespace>
    <namespace>parallel_ode::BatchTypes</namespace>
    <member kind="typedef">
      <type>BatchTypes::BatchType</type>
      <name>BatchType</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>adb354f2012437512e731594e58ae573a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>BatchType</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BATCH_RANDOM</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299a87346525584a1176714c3fdcaa0d397c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BATCH_GREEDY</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299aa3aedcdad6e95d74961f48c00e9e0a93</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BATCH_COLORED</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299a0730a8925ff2c97128813aec65d112b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULT_BATCH_TYPE</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299afdde8b101c4e449eb9c7b74b2b5af78d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_common.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__common_8h</filename>
    <namespace>ParallelOptions</namespace>
    <namespace>ParallelTypes</namespace>
    <member kind="define">
      <type>#define</type>
      <name>PARALLEL_ENABLED</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>a16d0aa9cbc43fef2331f84f15948c6c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PARALLEL_TYPE</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>a67505bab9d8a7634248ddc42e08c7e51</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PROJ_NAME</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>a377eb3b534c40be96f3cfd177916fa9e</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>size_t</type>
      <name>ArrayIndex</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>abd4408c238533e075a954f8e17bfb2d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>size_t</type>
      <name>ArraySize</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>a2db11bb0fa80eeeecd9f716a0b92a683</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>IntVector::const_iterator</type>
      <name>ConstIntVectorIter</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>ade60095715a813734b229949366e652e</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::vector&lt; int &gt;</type>
      <name>IntVector</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>a9b8f2f96749808efd0d975e75d96a71c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>IntVector::iterator</type>
      <name>IntVectorIter</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>aee2bf47d4ed73a5a2bd373a1ad866bea</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>ParallelOptions::ParallelOption</type>
      <name>ParallelOption</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>ac28bbff98b085c883cc43b0bd6a14a09</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>ParallelTypes::ParallelType</type>
      <name>ParallelType</name>
      <anchorfile>parallel__common_8h.html</anchorfile>
      <anchor>a00713f100a9d498d84c557dad08411e8</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ParallelOption</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MAXBATCHES</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a6c64db685592acbbfa78cc571ad774ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MAXBODYREPETITION</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a00c6c750ed4f5a7eab47a7f0fe87bf6a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BSIZE</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19ad16a95a6b682ca75b7f4c7457aa2d4be</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MBSIZE</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19ad4e55a2559e806d34489e33dac049fcd</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MAXTHREADS</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a88b1df893ad48c95ec95097367edc65e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>SHAREDMEMORYSIZE</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a7f3c6cee777048df70dcdb704cd34226</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MEMALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a54b77cbdd0fcfcf76f195cc1a5931f8a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULTALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a4d3c2275b381abf7da54bc93470a2312</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>FLOATALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a9487ea0c91999bbe70e48eb83c0eccc6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DOUBLEALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a0d1985e73f38943dc13d9269a8f67453</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULTSCALARALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19ad9f8fa982d892c365b6cb6c8665e635d</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ParallelType</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>CUDA</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962eab3e0ec2d7abf7f3432bc5b2bc34c8cce</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OpenCL</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962eae10b62668f03267ff2cce08e76342591</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OpenMP</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962eaa3faf36d31046c76aabce3f3c5083d12</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>None</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962ea10694bd4f1d564835113b3081563d9da</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_defines.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__defines_8h</filename>
  </compound>
  <compound kind="file">
    <name>parallel_kernels.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__kernels_8h</filename>
    <member kind="define">
      <type>#define</type>
      <name>B_ID</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a91cf8c3bc353a53ac05e5c411b08c03a</anchor>
      <arglist>(index, i)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>C_ID</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a44e0c9b562ec2b16ea4db3587732aa69</anchor>
      <arglist>(index, i)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaComputeAdcfmBT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a59b3c06bede783d964cc9a6133d13464</anchor>
      <arglist>(int4 *bodyIDs, typename vec4&lt; T &gt;::Type *j0, typename vec4&lt; T &gt;::Type *j1, typename vec4&lt; T &gt;::Type *j2, typename vec4&lt; T &gt;::Type *j3, typename vec4&lt; T &gt;::Type *ij0, typename vec4&lt; T &gt;::Type *ij1, typename vec4&lt; T &gt;::Type *ij2, typename vec4&lt; T &gt;::Type *ij3, T *adcfm, T *rhs, T sorParam, int numConstraints)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaComputeInvMJTT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a24219c29a676ad3dd8c821b001b8c065</anchor>
      <arglist>(int4 *bodyIDs, typename vec4&lt; T &gt;::Type *j0, typename vec4&lt; T &gt;::Type *j1, typename vec4&lt; T &gt;::Type *j2, typename vec4&lt; T &gt;::Type *j3, typename vec4&lt; T &gt;::Type *ij0, typename vec4&lt; T &gt;::Type *ij1, typename vec4&lt; T &gt;::Type *ij2, typename vec4&lt; T &gt;::Type *ij3, T *iMass, int numConstraints, typename vec4&lt; T &gt;::Type *ii0, typename vec4&lt; T &gt;::Type *ii1, typename vec4&lt; T &gt;::Type *ii2)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaIntegrateT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a804dabe8bc4463b100fe0ba87dbf78dc</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *pos, typename vec4&lt; T &gt;::Type *lVel, typename vec4&lt; T &gt;::Type *aVel, float deltaTime, int numConstraints)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaReduceIterativeCompactT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a2019b4299f9aff01c9906cee46736e3f</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, const int treePower)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaReduceLoopedCompactT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>aee94449aa05fc65864321057ca08ed9d</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, const int size, const int step)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaReduceSequentialT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a2254d67de49dca6f11e9d756709bbfed</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, int n)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaReduceStridedT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a9ee79e6748a453f437b35a015e63cf6c</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, const typename vec4&lt; T &gt;::Type *fc0_reduction, const typename vec4&lt; T &gt;::Type *fc1_reduction, const int reductionStride, const int bodySize, const int reductionSize)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaSORLCPT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>affab807897b74f275562bd5cd0ef8978</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, T *lambda, const int4 *bodyIDs, const int *fIDs, const typename vec4&lt; T &gt;::Type *j, const typename vec4&lt; T &gt;::Type *ij, const typename vec4&lt; T &gt;::Type *fc0, const typename vec4&lt; T &gt;::Type *fc1, const T *adcfm, const T *rhs, const T *hilo, const int offset, const int numConstraints, const int bStride, const int cStride)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>cudaZeroT</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a641416bc33fb75bffcf1add648e4514f</anchor>
      <arglist>(T *buffer, const int bufferSize)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static dxDevice T</type>
      <name>parallel_inf</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>ad63ee0fd8ba3b4b03f11c033cbcee7a4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDevice double</type>
      <name>parallel_inf&lt; double &gt;</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a7a50f559c58cff53a46034d80cebb6e6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDevice float</type>
      <name>parallel_inf&lt; float &gt;</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a0ef4ff555a57f7bdd2b32a66683c424a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static dxDevice T</type>
      <name>parallel_zero</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>ace08290e4b451c4dfb0cac7be37e8f9b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDevice double</type>
      <name>parallel_zero&lt; double &gt;</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a892cd65d3a9a9e27ea90bd6046c20d07</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDevice double4</type>
      <name>parallel_zero&lt; double4 &gt;</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a6403de064bc9bff0615a278c73d9b121</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDevice float</type>
      <name>parallel_zero&lt; float &gt;</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>ab4c517f76593c7a2b1b85233fe3a78eb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>dxDevice float4</type>
      <name>parallel_zero&lt; float4 &gt;</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a0d47fc721cdfe8ad3a6f3c19bd659181</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static uint2</type>
      <name>s_blockDim</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>ad69f4e9a41cc4ae6f37c2e91040e4b4c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static uint2</type>
      <name>s_blockIdx</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>abdff9f9e94f3d94010477a4c8aeeb7b6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static uint2</type>
      <name>s_threadIdx</name>
      <anchorfile>parallel__kernels_8h.html</anchorfile>
      <anchor>a5b6583c794c8473d3b32348d54a6d210</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_kernels_nontemplate.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__kernels__nontemplate_8h</filename>
    <member kind="define">
      <type>#define</type>
      <name>B_ID</name>
      <anchorfile>parallel__kernels__nontemplate_8h.html</anchorfile>
      <anchor>a91cf8c3bc353a53ac05e5c411b08c03a</anchor>
      <arglist>(index, i)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>C_ID</name>
      <anchorfile>parallel__kernels__nontemplate_8h.html</anchorfile>
      <anchor>a44e0c9b562ec2b16ea4db3587732aa69</anchor>
      <arglist>(index, i)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>parallelReduce</name>
      <anchorfile>parallel__kernels__nontemplate_8h.html</anchorfile>
      <anchor>a752112f8d1891e5c05cac6dc839a04c1</anchor>
      <arglist>(dxDeviceData dReal4 *fc0, dxDeviceData dReal4 *fc1, dxDeviceData const dReal4 *fc0_reduction, dxDeviceData const dReal4 *fc1_reduction, const int reductionStride, const int bodySize, const int reductionSize)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>parallelSORLCP</name>
      <anchorfile>parallel__kernels__nontemplate_8h.html</anchorfile>
      <anchor>a63b0af3cc1996480bdb9f2ba728c6327</anchor>
      <arglist>(dxDeviceData dReal4 *fc0_reduction, dxDeviceData dReal4 *fc1_reduction, dxDeviceData dReal *lambda, dxDeviceData const int4 *bodyIDs, dxDeviceData const int *fIDs, dxDeviceData const dReal4 *j, dxDeviceData const dReal4 *ij, dxDeviceData const dReal4 *fc0, dxDeviceData const dReal4 *fc1, dxDeviceData const dReal *adcfm, dxDeviceData const dReal *rhs, dxDeviceData const dReal *lohi, const int offset, const int numConstraints, const int bStride, const int cStride)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>parallelZero</name>
      <anchorfile>parallel__kernels__nontemplate_8h.html</anchorfile>
      <anchor>a7a8717996d09dbdb77b3558e2376794b</anchor>
      <arglist>(dxDeviceData dReal *buffer, int bufferSize)</arglist>
    </member>
    <member kind="function">
      <type>dxGlobal void</type>
      <name>parallelZero4</name>
      <anchorfile>parallel__kernels__nontemplate_8h.html</anchorfile>
      <anchor>a9912f766b07b0862907793c569617f56</anchor>
      <arglist>(dxDeviceData dReal4 *buffer, int bufferSize)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_math.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__math_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="yes" imported="no">parallel_common.h</includes>
    <class kind="struct">vec3</class>
    <class kind="struct">vec3&lt; double &gt;</class>
    <class kind="struct">vec3&lt; float &gt;</class>
    <class kind="struct">vec4</class>
    <class kind="struct">vec4&lt; double &gt;</class>
    <class kind="struct">vec4&lt; float &gt;</class>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>add_assign_volatile</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ae8f564ea6fe1299fa92d005567e8c658</anchor>
      <arglist>(volatile double4 &amp;a, double4 &amp;b, volatile double4 &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>add_assign_volatile</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a944b339fcc1d52ed636bb227374ba932</anchor>
      <arglist>(volatile float4 &amp;a, float4 &amp;b, volatile float4 &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>add_assign_volatile</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a8f3286576cac957b17e1e41dea0f8280</anchor>
      <arglist>(volatile double3 &amp;a, double3 &amp;b, volatile double3 &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>add_assign_volatile</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2acf52062ff475ba9f9e33992db86c7d</anchor>
      <arglist>(volatile float3 &amp;a, float3 &amp;b, volatile float3 &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>assign_volatile</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5ce0b530a692d66f15ca1d397a3674c9</anchor>
      <arglist>(volatile double3 &amp;a, double3 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>assign_volatile</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2c3a8ca9e5bcde2413ea3ffd533f4bc3</anchor>
      <arglist>(volatile float3 &amp;a, float3 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice dxHost float4</type>
      <name>clamp</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa610cc03aa4bef6db1045f047003c933</anchor>
      <arglist>(float4 v, float4 a, float4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice dxHost float4</type>
      <name>clamp</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a505c9f623c09f9943f8131e8fa1065df</anchor>
      <arglist>(float4 v, float a, float b)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice dxHost float3</type>
      <name>clamp</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a452cb3a5faeb5f0dec17ebb98459dc3d</anchor>
      <arglist>(float3 v, float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice dxHost float3</type>
      <name>clamp</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>abaa0a1267820a6424379fac60499e734</anchor>
      <arglist>(float3 v, float a, float b)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice dxHost double</type>
      <name>clamp</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a92dec151fc0b5bb50698be49e62ff953</anchor>
      <arglist>(double f, double a, double b)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice dxHost float</type>
      <name>clamp</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>afa29faf3bd854c91e1256322f388e497</anchor>
      <arglist>(float f, float a, float b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>cross</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a42828b92d4abecd31889261e3c42d1a8</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice T</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a3e3c9c2058a3fabb771b0e3ebd3940d8</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type a, typename vec4&lt; T &gt;::Type b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a00e818071214f4a16bb2e9c170664f5b</anchor>
      <arglist>(const double4 &amp;a, const double4 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ad5fa504dc1540c5f12630e59e7673856</anchor>
      <arglist>(const float4 &amp;a, const float4 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a996b773be21d0a9aaf60c3af07510b4e</anchor>
      <arglist>(const double3 &amp;a, const double4 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a3c845c271fb6cb13549cf61188ffd7b1</anchor>
      <arglist>(const float3 &amp;a, const float4 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>afcc61c04c94143a4d30a276097250483</anchor>
      <arglist>(const double3 &amp;a, const double3 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float</type>
      <name>dot</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a4de640773218d158ffebac3d6135a56e</anchor>
      <arglist>(const float3 &amp;a, const float3 &amp;b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>floor</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5252301371fec884775a4391c3dca709</anchor>
      <arglist>(const float4 v)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>floor</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a04a799cec94e8ccf994c631585ba0cae</anchor>
      <arglist>(const float3 v)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ dxHost dxDevice float4</type>
      <name>fmaxf</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5fb9f11b75f5fc538d1d18fe8e8efd11</anchor>
      <arglist>(float4 a, float4 b)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ dxHost dxDevice float3</type>
      <name>fmaxf</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ad81062f443e118960aea60c8f5a585d0</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>float</type>
      <name>fmaxf</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2e3ea020fe010be1ba2da473f17223b7</anchor>
      <arglist>(float a, float b)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ dxHost dxDevice float4</type>
      <name>fminf</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa1d0bd5cd63988353b3581c2787e3a36</anchor>
      <arglist>(float4 a, float4 b)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ dxHost dxDevice float3</type>
      <name>fminf</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aab087f2c930a889cbe4ee09d71b66fa0</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>float</type>
      <name>fminf</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a550f4f667b306665a335168336fc95b3</anchor>
      <arglist>(float a, float b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float</type>
      <name>length</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2e573f77441bc968190a7d655fb7f4ee</anchor>
      <arglist>(float4 r)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float</type>
      <name>length</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a184e0e46289d9e81c8199a9bc9b2a8c8</anchor>
      <arglist>(float3 v)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double3</type>
      <name>make_double3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a0705714ebd0ca7ef0b2af385b94d3427</anchor>
      <arglist>(int3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double3</type>
      <name>make_double3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a44a42e39ec7f37de38283ade24dc6972</anchor>
      <arglist>(double4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double3</type>
      <name>make_double3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a504f9cbb54560daf5978943697244494</anchor>
      <arglist>(double s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>make_double4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a49b2d8855f20dff8b6653d20d76bd759</anchor>
      <arglist>(int4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>make_double4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a6eb67f2e7f46a38cf9b4be465de5caf1</anchor>
      <arglist>(const double &amp;a, const double &amp;b, const double &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>make_double4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5119732d96622da6dfa8a144bc04152d</anchor>
      <arglist>(double3 a, double w)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>make_double4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ae5149fc1be6ef25208d6c073887e29e4</anchor>
      <arglist>(double3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>make_double4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa11b8029c7f62bb5417ac0a866a3e93c</anchor>
      <arglist>(double s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>make_fdouble4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a40544155bf177e6d3d76012505270e4b</anchor>
      <arglist>(double s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>make_float3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a524fba7d0c4c88681c822600829f8e69</anchor>
      <arglist>(int3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>make_float3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a0a21fe47108b403ca529615644d6ea18</anchor>
      <arglist>(float4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>make_float3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a6604dec2263a6bb793aa0e533f9a0186</anchor>
      <arglist>(float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>make_float4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a27d3d742020e8ef55d5b1f30af99faf8</anchor>
      <arglist>(int4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>make_float4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2b0c2d25069942dce10f5170b43b911e</anchor>
      <arglist>(const float &amp;a, const float &amp;b, const float &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>make_float4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a3f356c1ffed1989f908fe383c702e389</anchor>
      <arglist>(float3 a, float w)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>make_float4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ae8ce7b335506e0f4b1238ade08a9d71b</anchor>
      <arglist>(float3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>make_float4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa554ef80af15592019db537bf1b4bf26</anchor>
      <arglist>(float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec3&lt; double &gt;::Type</type>
      <name>make_vec3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a0c748c3b780f8bd0c99d8c2a59398ada</anchor>
      <arglist>(double a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec3&lt; float &gt;::Type</type>
      <name>make_vec3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a10f4d140786cbc0e3d87d1088bddf50d</anchor>
      <arglist>(float a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec3&lt; double &gt;::Type</type>
      <name>make_vec3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a0cfb7e6e2f4c8229d1393b621271f2b9</anchor>
      <arglist>(double4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec3&lt; float &gt;::Type</type>
      <name>make_vec3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a7df8d5a781d61a55eb3f6dccbdf89370</anchor>
      <arglist>(float4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec3&lt; double &gt;::Type</type>
      <name>make_vec3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a615059539651311c57df2eaa2c006ecb</anchor>
      <arglist>(double a, double b, double c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec3&lt; float &gt;::Type</type>
      <name>make_vec3</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a43737dbdfa7bb3af9f3cd383b1f1a73c</anchor>
      <arglist>(float a, float b, float c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; double &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a67108d17db76dec633b13c67be6fe876</anchor>
      <arglist>(double a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; float &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a921fcd45a17896215a169fc6e40de65f</anchor>
      <arglist>(float a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; double &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a3756dfb589e22e0de16d975aea96a590</anchor>
      <arglist>(double3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; float &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a90cc3a804b536c4c28830631f01ef7ca</anchor>
      <arglist>(float3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; double &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ad1cf3f087f2c8cdfb7b73553093666e0</anchor>
      <arglist>(double a, double b, double c, double d)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; float &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ab6f538f221938b8bb1eb84a094d57ecb</anchor>
      <arglist>(float a, float b, float c, float d)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; double &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a652c84051954c808db2682388691518d</anchor>
      <arglist>(const double &amp;a, const double &amp;b, const double &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; float &gt;::Type</type>
      <name>make_vec4</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a6e0827d709b47269a18f39e0767f39ba</anchor>
      <arglist>(const float &amp;a, const float &amp;b, const float &amp;c)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>make_zero</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ae7c7ede66e1b8811c95a7557f8e83cad</anchor>
      <arglist>(double4 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>make_zero</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa0335726bfc63414856a6e6bbd7d0f66</anchor>
      <arglist>(float4 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>make_zero</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>acb36e79eb606853234d3b02088eec3e4</anchor>
      <arglist>(double3 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>make_zero</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a177c933daac8d487907c909bb14408cc</anchor>
      <arglist>(float3 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>max</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>af082905f7eac6d03e92015146bbc1925</anchor>
      <arglist>(int a, int b)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>min</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>abd8bbcfabb3ddef2ccaafb9928a37b95</anchor>
      <arglist>(int a, int b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>normalize</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a735d179dabc78163ff359554bcb6593a</anchor>
      <arglist>(float4 v)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>normalize</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a18404c3f7d4c9961b3ca2c1f922a4bb8</anchor>
      <arglist>(float3 v)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ac28e69553348462b27d75c571765a1a8</anchor>
      <arglist>(float s, float4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice vec4&lt; T &gt;::Type</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5361cc122cb331a63d79d170ee8827c0</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type a, T s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aca3cb4de42b9ab766d727e687b8da83c</anchor>
      <arglist>(float s, float3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a0234ec61f2dcb972fea51dccf7e7ba00</anchor>
      <arglist>(float3 a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a938b832c51c535f06d3475b704b1e1f0</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice int2</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2f183fccdf3275ef06504bede02b7fa2</anchor>
      <arglist>(int s, int2 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice int2</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a484ad70bb5522e4bf182b06fc9727cc7</anchor>
      <arglist>(int2 a, int s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice int2</type>
      <name>operator*</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa673859654931bc8b9744fe51b43407b</anchor>
      <arglist>(int2 a, int2 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator*=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a6b22564c3b598fed6967b8793be66660</anchor>
      <arglist>(double4 &amp;a, double s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator*=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a8bdd14eb49759d3f412d0786fd14c762</anchor>
      <arglist>(float4 &amp;a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator*=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aa33f889863534bc606bf5e47bf79a674</anchor>
      <arglist>(double3 &amp;a, double s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator*=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a7a6fe1da8c06ab1d61d2494e06de8573</anchor>
      <arglist>(float3 &amp;a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator*=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a2a81ad6db812b07a4ed443a0caa3a0e5</anchor>
      <arglist>(int2 &amp;a, int s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double4</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a89fc2dbcb03e41728f67aed2bc3de09c</anchor>
      <arglist>(double4 a, double4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a9a22b198681871769731cf577d87264b</anchor>
      <arglist>(float4 a, float4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double3</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a78b06f0bfa9109459571dcc1dfe9db6b</anchor>
      <arglist>(double3 a, double b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>ab4639d83369c4eecf89f30848179918c</anchor>
      <arglist>(float3 a, float b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice double3</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a73d31c02cb6c8a99449f9395e5762cf3</anchor>
      <arglist>(double3 a, double3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a320b7e09b5e50a6b032526a705c80e53</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice int2</type>
      <name>operator+</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a08378ade37978ed9593ef72a0c3787f2</anchor>
      <arglist>(int2 a, int2 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator+=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5c23c3892c27cb979fc9ef55cb77a70e</anchor>
      <arglist>(double4 &amp;a, double4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator+=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a5dd770cace9a0c9992e753cbcdaca6d4</anchor>
      <arglist>(float4 &amp;a, float4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator+=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>acf014c75cbbf682e7a0ab0cdef6607a3</anchor>
      <arglist>(double3 &amp;a, double3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator+=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>acc6ff66c8c14801d73b8fe75f177a7ff</anchor>
      <arglist>(float3 &amp;a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator+=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a4a6047643058434c3bcbd98d2e219e3e</anchor>
      <arglist>(int2 &amp;a, int2 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a784444aafe3c1bff19edbdbaa8b048b6</anchor>
      <arglist>(float4 a, float4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a58f3eb889cf74644fe10684226d0013f</anchor>
      <arglist>(float4 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a956fa5cde158aac95b5060ed69d4dbdd</anchor>
      <arglist>(float3 a, float b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a0fcebe724b6f218164ad4e270f657ab3</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aff18d3792ccb16ac42ad44a01a26cd08</anchor>
      <arglist>(float3 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice int2</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>af0ba88d2c6efac2168e404be1bb08f82</anchor>
      <arglist>(int2 a, int2 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice int2</type>
      <name>operator-</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a00961bd1904f26851e577ade1b528443</anchor>
      <arglist>(int2 &amp;a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator-=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a9e0cef577f8de361dc58eecf2965ae34</anchor>
      <arglist>(float4 &amp;a, float4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator-=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>abd75f797defc30c24d692c124930912e</anchor>
      <arglist>(float3 &amp;a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator-=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>acc6393c90e60f0644a10f356fb47919a</anchor>
      <arglist>(int2 &amp;a, int2 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator/</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>af163bb38b6caf267a1a67ae152142f89</anchor>
      <arglist>(float s, float4 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator/</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a4287478fb053c12a3a1d716b022770bf</anchor>
      <arglist>(float4 a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float4</type>
      <name>operator/</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a068d8b04b92e8e37addff1775f60a0fb</anchor>
      <arglist>(float4 a, float4 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator/</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>acd78e54f5666d9d64818f7f52d530590</anchor>
      <arglist>(float s, float3 a)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator/</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a933e82751e5a673b36ec68a4990ea438</anchor>
      <arglist>(float3 a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice float3</type>
      <name>operator/</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>aeb6664f8a2316f65957ee6d41a46471f</anchor>
      <arglist>(float3 a, float3 b)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator/=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>abb6bf64b79e542177f1378ef2b5724fc</anchor>
      <arglist>(float4 &amp;a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxHost dxDevice void</type>
      <name>operator/=</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a6c2d411942e1d85ac5d93ccda62c068e</anchor>
      <arglist>(float3 &amp;a, float s)</arglist>
    </member>
    <member kind="function">
      <type>dxDevice T</type>
      <name>readAndReplace</name>
      <anchorfile>parallel__math_8h.html</anchorfile>
      <anchor>a8e4a1d3703e295f546960c16761d4d52</anchor>
      <arglist>(T *buffer, const T &amp;element)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_memory.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__memory_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="yes" imported="no">parallel_common.h</includes>
    <class kind="struct">parallel_utils::MemManager</class>
    <namespace>parallel_utils</namespace>
    <namespace>parallel_utils::CopyTypes</namespace>
    <member kind="typedef">
      <type>CopyTypes::CopyType</type>
      <name>CopyType</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>aee75a6f8bf1e539223d252c47e2f1ffa</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>CopyType</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>COPY_SYNC</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813acc8770efbedf508f5e7073b25108f4f8</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>COPY_ASYNC</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813a01903e32b4f3ff9ec04a6c07cb862486</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>COPY_DEFAULT</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813a359c1aeecc8aae63d031292000e2baf8</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static T</type>
      <name>offsetBuffer</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a48c82a4213db5f5ee5c439ddafd90688</anchor>
      <arglist>(T buffer, ArraySize offset)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_quickstep.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__quickstep_8cpp</filename>
    <includes id="parallel__quickstep_8h" name="parallel_quickstep.h" local="no" imported="no">parallel_quickstep.h</includes>
    <includes id="parallel__stepper_8h" name="parallel_stepper.h" local="no" imported="no">parallel_stepper.h</includes>
    <member kind="function">
      <type>int</type>
      <name>dWorldParallelQuickStep</name>
      <anchorfile>parallel__quickstep_8cpp.html</anchorfile>
      <anchor>a0ce8d39c83e158f7e23f162dddfb0558</anchor>
      <arglist>(dWorldID w, dReal stepsize)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dWorldSetParallelQuickStepReduceType</name>
      <anchorfile>parallel__quickstep_8cpp.html</anchorfile>
      <anchor>a0deb52a52a146a10dfd380494206a30e</anchor>
      <arglist>(dWorldID w, int reduceType)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dWorldSetParallelQuickStepSyncType</name>
      <anchorfile>parallel__quickstep_8cpp.html</anchorfile>
      <anchor>a977c1dacd9d31a06e983f47b1d5da208</anchor>
      <arglist>(dWorldID w, int syncType)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static dxParallelStepParameters</type>
      <name>cs</name>
      <anchorfile>parallel__quickstep_8cpp.html</anchorfile>
      <anchor>a8d95ab88265c0fabe01a8ca9ef5a02c9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_quickstep.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__quickstep_8h</filename>
    <member kind="function">
      <type>ODE_API int</type>
      <name>dWorldParallelQuickStep</name>
      <anchorfile>parallel__quickstep_8h.html</anchorfile>
      <anchor>a9718e839d29124cf36bc9ca3450b94d9</anchor>
      <arglist>(dWorldID w, dReal stepsize)</arglist>
    </member>
    <member kind="function">
      <type>ODE_API void</type>
      <name>dWorldSetParallelQuickStepReduceType</name>
      <anchorfile>parallel__quickstep_8h.html</anchorfile>
      <anchor>aea05823f9ace3c9945a2cd718edb86fc</anchor>
      <arglist>(dWorldID, int reduceType)</arglist>
    </member>
    <member kind="function">
      <type>ODE_API void</type>
      <name>dWorldSetParallelQuickStepSyncType</name>
      <anchorfile>parallel__quickstep_8h.html</anchorfile>
      <anchor>a73a958ca7b73ff090091d0cab72c8244</anchor>
      <arglist>(dWorldID, int syncType)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_reduce.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__reduce_8cpp</filename>
    <includes id="parallel__reduce_8h" name="parallel_reduce.h" local="no" imported="no">parallel_reduce.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <namespace>parallel_ode</namespace>
  </compound>
  <compound kind="file">
    <name>parallel_reduce.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__reduce_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="yes" imported="no">parallel_common.h</includes>
    <class kind="class">parallel_ode::CompactReduceStrategy</class>
    <class kind="class">parallel_ode::ReduceStrategy</class>
    <class kind="class">parallel_ode::ReduceStrategyFactory</class>
    <class kind="class">parallel_ode::SequentialReduceStrategy</class>
    <class kind="class">parallel_ode::StridedReduceStrategy</class>
    <namespace>parallel_ode</namespace>
    <namespace>parallel_ode::ReduceTypes</namespace>
    <member kind="typedef">
      <type>ReduceTypes::ReduceType</type>
      <name>ReduceType</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a13de5a1a7e3a1f93b881e25fdce8b814</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ReduceType</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_NONE</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5ca0597d35c9061749e0e4ee24997be6001</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_SEQUENTIAL</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5ca38f8c655cc074917070483a4a74eda64</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_STRIDED</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5cad84016a80407ec4d33e38663c20cff45</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_COMPACT</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5cafbba3e122150a238c25d7b992a38fe2b</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULT_REDUCE_TYPE</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5cabf408f66ab9d31eaf31458f68b89dec1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_solver.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__solver_8cpp</filename>
    <includes id="parallel__solver_8h" name="parallel_solver.h" local="no" imported="no">parallel_solver.h</includes>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <includes id="parallel__stepper_8h" name="parallel_stepper.h" local="no" imported="no">parallel_stepper.h</includes>
    <namespace>parallel_ode</namespace>
  </compound>
  <compound kind="file">
    <name>parallel_solver.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__solver_8h</filename>
    <includes id="parallel__array_8h" name="parallel_array.h" local="yes" imported="no">parallel_array.h</includes>
    <includes id="parallel__batch_8h" name="parallel_batch.h" local="yes" imported="no">parallel_batch.h</includes>
    <includes id="parallel__math_8h" name="parallel_math.h" local="yes" imported="no">parallel_math.h</includes>
    <includes id="parallel__reduce_8h" name="parallel_reduce.h" local="yes" imported="no">parallel_reduce.h</includes>
    <includes id="parallel__timer_8h" name="parallel_timer.h" local="yes" imported="no">parallel_timer.h</includes>
    <class kind="class">parallel_ode::ParallelPGSSolver</class>
    <class kind="struct">parallel_ode::ParallelPGSSolver::SolverParams</class>
    <namespace>parallel_ode</namespace>
    <namespace>parallel_ode::ParallelFlags</namespace>
    <member kind="typedef">
      <type>ParallelFlags::ParallelFlag</type>
      <name>ParallelFlag</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aeeb019bd451d8d2dafd935e246ade685</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ParallelFlag</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_NONE</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa58788b8d270af8ede9e190d6b9495706</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_PREPROCESS</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aaf4fe1b6a02ece9ac24f5dc1140d91485</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_ASYNC</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aab62b4258a82a49da2dc41fafa08b86ad</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_RANDOMIZE</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa59a84fd383e1f82b839a8558435e6ae7</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_ATOMICS</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa1798202f1d8f570eeeb26070ad4f5285</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_ALIGN</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aab7e2282f2e01da25cd2aeb2cdc83260c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_PINNED</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aac0a6e5bb1b391aace4ce726e4d5be777</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_WC</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa08100d9e23fba039df262c7677277b29</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_REDUCE</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa2b3ac2d88c6bd60a3d0f18ccfd90a097</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_COMPACT</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aaf298c0176d9444fc7be02c347e2d711f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>DEFAULT_FLAGS</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>adfab18c19c381ae4faee6710a63c926e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_stepper.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>parallel__stepper_8cpp</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__utils_8h" name="parallel_utils.h" local="no" imported="no">parallel_utils.h</includes>
    <includes id="parallel__stepper_8h" name="parallel_stepper.h" local="no" imported="no">parallel_stepper.h</includes>
    <class kind="struct">dJointWithInfo1</class>
    <class kind="struct">IndexError</class>
    <member kind="define">
      <type>#define</type>
      <name>RANDOMLY_REORDER_CONSTRAINTS</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a0fd35d0676302fa0a0d681ad2d786b7b</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>RANDOMLY_REORDER_CONSTRAINTS</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a0fd35d0676302fa0a0d681ad2d786b7b</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>dReal *</type>
      <name>dRealMutablePtr</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a66b756446f8106945fe2617a08ce02d9</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>const dReal *</type>
      <name>dRealPtr</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a0c804005610244d6d0b5077ecf579457</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static size_t</type>
      <name>AdjustArenaSizeForReserveRequirements</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a4d1032f9a2f66233c1b1d97be69e97d6</anchor>
      <arglist>(size_t arenareq, float rsrvfactor, unsigned rsrvminimum)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static size_t</type>
      <name>BuildIslandAndEstimateStepperMemoryRequirements</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a53d9f701cc212eb89fb63498da37ba86</anchor>
      <arglist>(dxWorldProcessContext *context, dxWorld *world, dReal stepsize, dmemestimate_fn_t stepperestimate)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>compute_Adcfm_b</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>aadfececf4be5318bf7aa2c1e78cb59b9</anchor>
      <arglist>(int m, T sor_w, T *J, const T *iMJ, int *jb, const T *cfm, T *Adcfm, T *b)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>compute_Adcfm_b&lt; dReal &gt;</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>ae77257a26b3dfd1858d02b9fa847d5d4</anchor>
      <arglist>(int m, dReal sor_w, dRealMutablePtr J, dRealPtr iMJ, int *jb, dRealPtr cfm, dRealMutablePtr Adcfm, dRealMutablePtr b)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>compute_invM_JT</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a0167152a48fefc106d9e07db40c5299f</anchor>
      <arglist>(int m, const T *J, T *iMJ, int *jb, dxBody *const *body, const T *invI)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>compute_invM_JT&lt; dReal &gt;</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>ad15e4363562850a43a3889bb642aa0bd</anchor>
      <arglist>(int m, dRealPtr J, dRealMutablePtr iMJ, int *jb, dxBody *const *body, const dRealPtr invI)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>dxEstimateParallelStepMemoryRequirements</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a1342e91e02a92ab9a9b8229b058a6cd9</anchor>
      <arglist>(dxBody *const *body, int nb, dxJoint *const *_joint, int _nj)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxParallelProcessIslands</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>afe2c50e65bf03b776553d1d70c169b26</anchor>
      <arglist>(dxWorld *world, dReal stepsize, dstepper_fn_t stepper)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxParallelQuickStepper</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>afb52b4245e3d66540a982ca8bb320f07</anchor>
      <arglist>(dxWorldProcessContext *context, dxWorld *world, dxBody *const *body, int nb, dxJoint *const *_joint, int _nj, dReal stepsize)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>dxReallocateParallelWorldProcessContext</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>aaeb1a1240d4916876703f026c5f3d62c</anchor>
      <arglist>(dxWorld *world, dReal stepsize, dmemestimate_fn_t stepperestimate)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static size_t</type>
      <name>EstimateIslandsProcessingMemoryRequirements</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>ac39345622d4611eb0589e8ad6e37ed42</anchor>
      <arglist>(dxWorld *world, size_t &amp;sesize)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static size_t</type>
      <name>EstimateParallelSOR_LCPMemoryRequirements</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>ab507a5f80d0951f45e1b4159836ca6a6</anchor>
      <arglist>(int m, int n)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static dxWorldProcessContext *</type>
      <name>InternalReallocateWorldProcessContext</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>a653034e56f2a6c516355ce860fd6c816</anchor>
      <arglist>(dxWorldProcessContext *oldcontext, size_t memreq, const dxWorldProcessMemoryManager *memmgr, float rsrvfactor, unsigned rsrvminimum)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>Multiply1_12q1</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>ae8c92162b9f3f6def004e378411823fd</anchor>
      <arglist>(dReal *A, const dReal *B, const dReal *C, int q)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>multiply_J</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>adf2d7aaf4ab64d965808a08aed89e285</anchor>
      <arglist>(int m, dRealPtr J, int *jb, dRealPtr in, dRealMutablePtr out)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>worldSolve</name>
      <anchorfile>parallel__stepper_8cpp.html</anchorfile>
      <anchor>ac11fec1185aec94a44f5564d5c6b5bc7</anchor>
      <arglist>(dxWorldProcessContext *context, const int m, const int nb, dRealMutablePtr J, int *jb, dxBody *const *body, dRealPtr invI, dRealMutablePtr lambda, dRealMutablePtr fc, dRealMutablePtr b, dRealPtr lo, dRealPtr hi, dRealPtr cfm, dRealMutablePtr iMJ, dRealMutablePtr Ad, const int *findex, const dxQuickStepParameters *qs)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_stepper.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__stepper_8h</filename>
    <class kind="struct">dxParallelStepParameters</class>
    <member kind="function">
      <type>void</type>
      <name>compute_Adcfm_b</name>
      <anchorfile>parallel__stepper_8h.html</anchorfile>
      <anchor>aadfececf4be5318bf7aa2c1e78cb59b9</anchor>
      <arglist>(int m, T sor_w, T *J, const T *iMJ, int *jb, const T *cfm, T *Adcfm, T *b)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>compute_invM_JT</name>
      <anchorfile>parallel__stepper_8h.html</anchorfile>
      <anchor>a0167152a48fefc106d9e07db40c5299f</anchor>
      <arglist>(int m, const T *J, T *iMJ, int *jb, dxBody *const *body, const T *invI)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>dxEstimateParallelStepMemoryRequirements</name>
      <anchorfile>parallel__stepper_8h.html</anchorfile>
      <anchor>a1342e91e02a92ab9a9b8229b058a6cd9</anchor>
      <arglist>(dxBody *const *body, int nb, dxJoint *const *_joint, int _nj)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxParallelProcessIslands</name>
      <anchorfile>parallel__stepper_8h.html</anchorfile>
      <anchor>afe2c50e65bf03b776553d1d70c169b26</anchor>
      <arglist>(dxWorld *world, dReal stepsize, dstepper_fn_t stepper)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>dxParallelQuickStepper</name>
      <anchorfile>parallel__stepper_8h.html</anchorfile>
      <anchor>afb52b4245e3d66540a982ca8bb320f07</anchor>
      <arglist>(dxWorldProcessContext *context, dxWorld *world, dxBody *const *body, int nb, dxJoint *const *_joint, int _nj, dReal stepsize)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>dxReallocateParallelWorldProcessContext</name>
      <anchorfile>parallel__stepper_8h.html</anchorfile>
      <anchor>aaeb1a1240d4916876703f026c5f3d62c</anchor>
      <arglist>(dxWorld *world, dReal stepsize, dmemestimate_fn_t stepperestimate)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>parallel_timer.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__timer_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="yes" imported="no">parallel_common.h</includes>
    <class kind="class">ParallelTimer</class>
  </compound>
  <compound kind="file">
    <name>parallel_utils.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>parallel__utils_8h</filename>
    <includes id="parallel__common_8h" name="parallel_common.h" local="yes" imported="no">parallel_common.h</includes>
    <namespace>parallel_utils</namespace>
    <member kind="define">
      <type>#define</type>
      <name>align</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a97c2aebbe660d95e491ab87967d3a51d</anchor>
      <arglist>(offset)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>alignDefaultSize</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a1e4157870f602d1fea0cc989cc58a68b</anchor>
      <arglist>(offset)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>alignedSize</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a0c01ec09ce0045855c62305e2c948078</anchor>
      <arglist>(a)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>alignOffset</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>afea7666a5e6b29abdf84eb7553354c98</anchor>
      <arglist>(offset, alignment)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>alignSize</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>ac2242619a97a26c160e1fdc4e0cb2ec8</anchor>
      <arglist>(offset, alignment)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMPUTE_ERROR</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a39d18281d2a9e3d4516d5703a5e2ad29</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>IFBENCHMARKING</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a25732809617c871a7d8fc99b4ea3d611</anchor>
      <arglist>(x)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>IFTIMING</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a031af775893efb581ad8a8505025abd2</anchor>
      <arglist>(x)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>IFVERBOSE</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a0883197fd24738684e5b7c19e29b5885</anchor>
      <arglist>(x)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>VectorType</name>
      <anchorfile>parallel__utils_8h.html</anchorfile>
      <anchor>a9e75d874bc41ddea83eb840e81a87ee4</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>__alignedSize</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>aced7f450fd6042d68269c7b5d8a486cb</anchor>
      <arglist>(VectorType&lt; int &gt; &amp;vectorToAlign)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>computeElementsPerAlign</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a6e8229ddd1291d6fba9c631e0359a865</anchor>
      <arglist>(int align)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>computeGridSize</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>afffa8d750497bdf648329f78cbf1aa8c</anchor>
      <arglist>(int n, int blockSize, int &amp;numBlocks, int &amp;numThreads)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>computeStride</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a033eb3de9fba6ff297e659b241f0099f</anchor>
      <arglist>(int n, int blockSize)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>fillSequentialVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a653d3c3cc37557895b995b3e2df38109</anchor>
      <arglist>(VectorType&lt; T &gt; &amp;vectorToFill)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>fillStridedVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a94f1d2c397c0e05abe07575d94ea3dea</anchor>
      <arglist>(VectorType&lt; T &gt; &amp;vectorToFill, T stride)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>iDivUp</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>af1b129ac961f14750362053745d8d5ed</anchor>
      <arglist>(int a, int b)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>iPower2Up</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a1c7dba3be7f97cab39af63a28e88f77a</anchor>
      <arglist>(T k)</arglist>
    </member>
    <member kind="function">
      <type>unsigned int</type>
      <name>iPower2UpUnrolled</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a759fe50f5ae520678c76535a7140d819</anchor>
      <arglist>(unsigned int v)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>iPower2UpUnsigned</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a3d554b0fa4192f3a24a7c5ea2cec91c5</anchor>
      <arglist>(T k)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>permuteVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>ad04ea38c262e1ca556be30391f6e24e6</anchor>
      <arglist>(VectorType&lt; T &gt; &amp;vectorToPermute)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printIntVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>ace1f5bf3258e46f52008ab4274415ce4</anchor>
      <arglist>(const IntVector &amp;intVector)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>test_lib.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/src/</path>
    <filename>test__lib_8cpp</filename>
    <includes id="parallel__array_8h" name="parallel_array.h" local="no" imported="no">parallel_array.h</includes>
    <includes id="parallel__common_8h" name="parallel_common.h" local="no" imported="no">parallel_common.h</includes>
    <includes id="parallel__math_8h" name="parallel_math.h" local="no" imported="no">parallel_math.h</includes>
    <includes id="parallel__reduce_8h" name="parallel_reduce.h" local="no" imported="no">parallel_reduce.h</includes>
    <member kind="function">
      <type>int</type>
      <name>parallelReduceStrategyTest</name>
      <anchorfile>test__lib_8cpp.html</anchorfile>
      <anchor>a888176ecafd65d807c4b6128bf459843</anchor>
      <arglist>(ReduceType reduceType)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>parallelReduceTest</name>
      <anchorfile>test__lib_8cpp.html</anchorfile>
      <anchor>a5e004c85306186e358ec7fb8a2f7db9d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>template int</type>
      <name>parallelReduceTest&lt; float, ParallelTypes::PARALLEL_TYPE &gt;</name>
      <anchorfile>test__lib_8cpp.html</anchorfile>
      <anchor>a8f64a3c8669d7ddc4b6b4ef2947d1d04</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>vector_types.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-electric-physics_ode/doc_stacks/2013-03-01_16-25-44.773679/physics_ode/parallel_quickstep/include/parallel_quickstep/</path>
    <filename>vector__types_8h</filename>
    <class kind="struct">char1</class>
    <class kind="struct">char3</class>
    <class kind="struct">dim3</class>
    <class kind="struct">double1</class>
    <class kind="struct">double3</class>
    <class kind="struct">float1</class>
    <class kind="struct">float3</class>
    <class kind="struct">int1</class>
    <class kind="struct">int3</class>
    <class kind="struct">long1</class>
    <class kind="struct">long3</class>
    <class kind="struct">longlong1</class>
    <class kind="struct">short1</class>
    <class kind="struct">short3</class>
    <class kind="struct">uchar1</class>
    <class kind="struct">uchar3</class>
    <class kind="struct">uint1</class>
    <class kind="struct">uint3</class>
    <class kind="struct">ulong1</class>
    <class kind="struct">ulong3</class>
    <class kind="struct">ulonglong1</class>
    <class kind="struct">ushort1</class>
    <class kind="struct">ushort3</class>
    <member kind="define">
      <type>#define</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a53cfecec17563f21c52500c6db7da11a</anchor>
      <arglist>(a)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>__device__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ad54e07d96efd9a36dfca1a9f27776d62</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>__host__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a803050db3c78e0db3ea59a0c35499622</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>__inline__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a9f04218fe09e6ee659e045b2f11542ed</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct char1</type>
      <name>char1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a41a6d6ff0b1ca7eb64ae822785f60c96</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct char2</type>
      <name>char2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a3ebe9dc09ca2a037ad211073b370984c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct char3</type>
      <name>char3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a04fa5d81c1ca205b71ec2f45d36d26bf</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct char4</type>
      <name>char4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a7b7fa41542bd938c37eda11ccca1f503</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct dim3</type>
      <name>dim3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>af3273ad069a5db23c87cf0547340e6fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct double1</type>
      <name>double1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aa396f5bc52e9968a8cbabcef5a2423f4</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct double2</type>
      <name>double2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>afbcf6d6cd6d7417dcd52f4d48a50f2b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct double3</type>
      <name>double3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ae1bd8b9d018ba3a5d15e2f2146be2c9e</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct double4</type>
      <name>double4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a026372ce0e47267e51844c9e82a0eacf</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct float1</type>
      <name>float1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a226d55a575a440a4a32ac37d0581a37f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct float2</type>
      <name>float2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ac5ce49099e54cbb6e687df38a6f3fe96</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct float3</type>
      <name>float3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a79779bd606ab5af52c38e59729245f27</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct float4</type>
      <name>float4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>af70e73547f332c7a445f69c9babadef3</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct int1</type>
      <name>int1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a1d46847fcc18798a958c80afabccfa19</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct int2</type>
      <name>int2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>abc9d1556799792cec3ef347f78ca112a</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct int3</type>
      <name>int3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a21d942232c0a6fe2b0e51f8f74d0f397</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct int4</type>
      <name>int4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a3878154bf2fec1ea33bb486a1ba23acc</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct long1</type>
      <name>long1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aa96eed818cdd5100d7c6d2eb4716fa15</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct long2</type>
      <name>long2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a056778c1073e5c198253b8413dca6f4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct long3</type>
      <name>long3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a835535ff27616d58a9cc7aef7f848825</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct long4</type>
      <name>long4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a8b0d49cf57bd087a05bf1bee158ab66a</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct longlong1</type>
      <name>longlong1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ae938240c372b786a609dd22c600af578</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct longlong2</type>
      <name>longlong2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a400b8f1ef9d3dd588e51096de5fc778f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct short1</type>
      <name>short1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>af5038c435420281efbf83fac955bb0eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct short2</type>
      <name>short2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a06f01cdd4c013def8e8aa6fe4e55eca2</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct short3</type>
      <name>short3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a41a7904c7ce29a6b26ea4c034ffc453b</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct short4</type>
      <name>short4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a4497e638b83d68c2f9bf2a1592779146</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uchar1</type>
      <name>uchar1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>afd03f5f485c764a9806587773c107dfe</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uchar2</type>
      <name>uchar2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>adc71caf4975bb960c951da56257b41cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uchar3</type>
      <name>uchar3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a677bdf6e14e1f19b236abee77502f858</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uchar4</type>
      <name>uchar4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a035e9a0c70ec4c0a6a3a8d18c43ccc2d</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uint1</type>
      <name>uint1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aaa9f96e52446ddc54a820928e7afed4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uint2</type>
      <name>uint2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>af50408e919a812870eb491ee35b062d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uint3</type>
      <name>uint3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ad4923852d23d2746f9e6d84aa98e9092</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct uint4</type>
      <name>uint4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>abdb14ec5eedad7448df20b3eae253bb0</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ulong1</type>
      <name>ulong1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a5f9da2d20a926db99fea57522d739b7f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ulong2</type>
      <name>ulong2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a031300b75cb0c471ed9d5814292ff873</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ulong3</type>
      <name>ulong3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a4e022b4d4d735b1f202cea9a813d3f03</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ulong4</type>
      <name>ulong4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a381c85024ec4f8429031579aaabd2c05</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ulonglong1</type>
      <name>ulonglong1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a10d8dbe0e43c078dbf814cce0e264b47</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ulonglong2</type>
      <name>ulonglong2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a197f1fccb1076eb0f1555b5571130b2b</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ushort1</type>
      <name>ushort1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aca85b06c17c1e86bbd9a8466ca2df11f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ushort2</type>
      <name>ushort2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a6367d65a5df151e7767a12c349b055a8</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ushort3</type>
      <name>ushort3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ad47e44c4edb1441bf72467dcd5f51d59</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct ushort4</type>
      <name>ushort4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a10945e0c498a20035337b93388139d84</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a640f3bb3d783f5c4023f1de47e7f2ba1</anchor>
      <arglist>(32) double4</arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aacc950fce8ac9dcf7766a371760be06d</anchor>
      <arglist>(2 *sizeof(unsigned long int)) ulong2</arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a4f843edf9eaf1cb084486a9af2b13cbe</anchor>
      <arglist>(2 *sizeof(long int)) long2</arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a0482989fb0795e05bf7c95b0527b4594</anchor>
      <arglist>(16) int4</arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ab9bdcad236bf3c70f69cdcad40c50eae</anchor>
      <arglist>(8) short4</arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a0755ee83bdf681f26dea2576c3b56ffd</anchor>
      <arglist>(4) char4</arglist>
    </member>
    <member kind="function">
      <type>struct</type>
      <name>__builtin_align__</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ad948e2f39116b0f985e4b3c0a2262681</anchor>
      <arglist>(2) char2</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ char1</type>
      <name>make_char1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ad8f75b50410126209efbdfad5eb6be7f</anchor>
      <arglist>(signed char x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ char2</type>
      <name>make_char2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>af500d6667a5b8048bd15a7c65dcf1afe</anchor>
      <arglist>(signed char x, signed char y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ char3</type>
      <name>make_char3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a1492b2ba66d2531398cd5a45d3e5afa3</anchor>
      <arglist>(signed char x, signed char y, signed char z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ char4</type>
      <name>make_char4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a60c53f642fa7df4ca441ab707b2f48cc</anchor>
      <arglist>(signed char x, signed char y, signed char z, signed char w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ double1</type>
      <name>make_double1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a082e56ec3de621cd23e273f2a82d28cf</anchor>
      <arglist>(double x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ double2</type>
      <name>make_double2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aa3faca9abd72811ab7a0f853c52cbb7e</anchor>
      <arglist>(double x, double y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ double3</type>
      <name>make_double3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a431df57f7775752bcffdd0f803c94ae3</anchor>
      <arglist>(double x, double y, double z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ double4</type>
      <name>make_double4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a94b768b3e07beb9a0ed7b9fe8fd3bddd</anchor>
      <arglist>(double x, double y, double z, double w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ float1</type>
      <name>make_float1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ae763acc04bf0ea98673cd940e43c0ea9</anchor>
      <arglist>(float x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ float2</type>
      <name>make_float2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ac04b245569e0b6730eaddcda066c6692</anchor>
      <arglist>(float x, float y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ float3</type>
      <name>make_float3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a8899fbec2e8af84c01da67d1ffc8f6e8</anchor>
      <arglist>(float x, float y, float z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ float4</type>
      <name>make_float4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a285377fcb69bb66fc4503010cdb2631c</anchor>
      <arglist>(float x, float y, float z, float w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ int1</type>
      <name>make_int1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a704cd6f45844877da605a085bfb4f230</anchor>
      <arglist>(int x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ int2</type>
      <name>make_int2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a9b6cfb51364df7ceeaf69f421e41e989</anchor>
      <arglist>(int x, int y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ int3</type>
      <name>make_int3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a5918dcbb2e74fb5625c9b49730ea7e1d</anchor>
      <arglist>(int x, int y, int z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ int4</type>
      <name>make_int4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a60883bf5bd0841b3543b76c9ca25916e</anchor>
      <arglist>(int x, int y, int z, int w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ long1</type>
      <name>make_long1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a879a9e732e008b6b27356c0f6d072b4e</anchor>
      <arglist>(long int x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ long2</type>
      <name>make_long2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a356e9dae998dd77eb1a31cea55aea781</anchor>
      <arglist>(long int x, long int y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ long3</type>
      <name>make_long3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a43876a44003a75e3a5007eabdfbf5833</anchor>
      <arglist>(long int x, long int y, long int z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ long4</type>
      <name>make_long4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a300ddf200dd0dc1b516d9027b6271e24</anchor>
      <arglist>(long int x, long int y, long int z, long int w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ longlong1</type>
      <name>make_longlong1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a21d966368a3a5b38b5856fb0f5b99e71</anchor>
      <arglist>(long long int x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ longlong2</type>
      <name>make_longlong2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a3e56d93f1cc628890fc67bcc0715e8ab</anchor>
      <arglist>(long long int x, long long int y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ short1</type>
      <name>make_short1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aedc29d793e2f7953a59d8ea2bd64a673</anchor>
      <arglist>(short x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ short2</type>
      <name>make_short2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a4bda02f0c9df96d64b7bc0b7270e5a2b</anchor>
      <arglist>(short x, short y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ short3</type>
      <name>make_short3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a8f975707e630d6f1a02f2d0cc00be9c3</anchor>
      <arglist>(short x, short y, short z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ short4</type>
      <name>make_short4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a7911f08b1db41982c8ffe0de73b1a1ca</anchor>
      <arglist>(short x, short y, short z, short w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uchar1</type>
      <name>make_uchar1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a7a2fad22098db765ec0ccf2e71a8d58b</anchor>
      <arglist>(unsigned char x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uchar2</type>
      <name>make_uchar2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ac2fca41e74054da0320c641f4861b671</anchor>
      <arglist>(unsigned char x, unsigned char y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uchar3</type>
      <name>make_uchar3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a7ff0252f1f2b4d33d6dd6faac83ccb22</anchor>
      <arglist>(unsigned char x, unsigned char y, unsigned char z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uchar4</type>
      <name>make_uchar4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a79425b907b137ab1fa83a6d0a98e39de</anchor>
      <arglist>(unsigned char x, unsigned char y, unsigned char z, unsigned char w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uint1</type>
      <name>make_uint1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a802b66128637532bce3f8869cada6a17</anchor>
      <arglist>(unsigned int x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uint2</type>
      <name>make_uint2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a44d2a91e8aedb0a223110be71d117e6f</anchor>
      <arglist>(unsigned int x, unsigned int y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uint3</type>
      <name>make_uint3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>afa623e5c9004b8a1756e9837c0af0943</anchor>
      <arglist>(unsigned int x, unsigned int y, unsigned int z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ uint4</type>
      <name>make_uint4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a6733bade0778431306553d875a448c46</anchor>
      <arglist>(unsigned int x, unsigned int y, unsigned int z, unsigned int w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ulong1</type>
      <name>make_ulong1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a4e5a5d2aaaeec52c29aa7bef50c75579</anchor>
      <arglist>(unsigned long int x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ulong2</type>
      <name>make_ulong2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ac1788362a3e8a463049ae38aed952129</anchor>
      <arglist>(unsigned long int x, unsigned long int y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ulong3</type>
      <name>make_ulong3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>aa8e8c56b94fc2a4125e345386f5e26ea</anchor>
      <arglist>(unsigned long int x, unsigned long int y, unsigned long int z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ulong4</type>
      <name>make_ulong4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a0c9191daccb69e242db16913978a28f0</anchor>
      <arglist>(unsigned long int x, unsigned long int y, unsigned long int z, unsigned long int w)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ulonglong1</type>
      <name>make_ulonglong1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a9ea981490ed94b83eef84c1f44d68f36</anchor>
      <arglist>(unsigned long long int x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ulonglong2</type>
      <name>make_ulonglong2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ac7147f67cb8ae5e672a027fd07181adb</anchor>
      <arglist>(unsigned long long int x, unsigned long long int y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ushort1</type>
      <name>make_ushort1</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>acf94b184e2b58b42c46b8cb1dca464d5</anchor>
      <arglist>(unsigned short x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ushort2</type>
      <name>make_ushort2</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a43d4224678deca94d0ceb3d8ba41a7f3</anchor>
      <arglist>(unsigned short x, unsigned short y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ushort3</type>
      <name>make_ushort3</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>ad7668ad6137bcb2ae4a3d7bee0b2752d</anchor>
      <arglist>(unsigned short x, unsigned short y, unsigned short z)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static __inline__ __host__ __device__ ushort4</type>
      <name>make_ushort4</name>
      <anchorfile>vector__types_8h.html</anchorfile>
      <anchor>a0f83f5c42825c1a091fc08f4d5e72592</anchor>
      <arglist>(unsigned short x, unsigned short y, unsigned short z, unsigned short w)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>char1</name>
    <filename>structchar1.html</filename>
    <member kind="variable">
      <type>signed char</type>
      <name>x</name>
      <anchorfile>structchar1.html</anchorfile>
      <anchor>adbd74928afc6f4c863a5c3fded2a4a4a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>char3</name>
    <filename>structchar3.html</filename>
    <member kind="variable">
      <type>signed char</type>
      <name>x</name>
      <anchorfile>structchar3.html</anchorfile>
      <anchor>a06f483ab03e1512e87eb2a48d6b68261</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>signed char</type>
      <name>y</name>
      <anchorfile>structchar3.html</anchorfile>
      <anchor>a7b277086f782288da3aab6baf54e3604</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>signed char</type>
      <name>z</name>
      <anchorfile>structchar3.html</anchorfile>
      <anchor>ada473f255c617219aed043716e618d57</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>CUDAODETimer</name>
    <filename>classCUDAODETimer.html</filename>
    <member kind="function">
      <type></type>
      <name>CUDAODETimer</name>
      <anchorfile>classCUDAODETimer.html</anchorfile>
      <anchor>a5fe8964ec16e6a0e2ddb024216410044</anchor>
      <arglist>(const char *description)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~CUDAODETimer</name>
      <anchorfile>classCUDAODETimer.html</anchorfile>
      <anchor>a9eab9d86a6fc3b9f5dbc0e8f301b1aae</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>dim3</name>
    <filename>structdim3.html</filename>
    <member kind="variable">
      <type>unsigned int</type>
      <name>x</name>
      <anchorfile>structdim3.html</anchorfile>
      <anchor>ac94584074d5c15f67c66656859bb24e9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>y</name>
      <anchorfile>structdim3.html</anchorfile>
      <anchor>ae87d6f5fc0cc038be953f78f36ba873f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>z</name>
      <anchorfile>structdim3.html</anchorfile>
      <anchor>a4856dbf9372e82eb478bf14ec1d2e294</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>dJointWithInfo1</name>
    <filename>structdJointWithInfo1.html</filename>
    <member kind="variable">
      <type>dxJoint::Info1</type>
      <name>info</name>
      <anchorfile>structdJointWithInfo1.html</anchorfile>
      <anchor>ab3e3b8b664bbd8709e6b1183d38ae8c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>dxJoint *</type>
      <name>joint</name>
      <anchorfile>structdJointWithInfo1.html</anchorfile>
      <anchor>ab639d6635b66ce55dcdeaead20165f07</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>double1</name>
    <filename>structdouble1.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>x</name>
      <anchorfile>structdouble1.html</anchorfile>
      <anchor>a52b90dd6310fdd5d4fe27ffc686ebf28</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>double3</name>
    <filename>structdouble3.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>x</name>
      <anchorfile>structdouble3.html</anchorfile>
      <anchor>ad0570a8f409c151da3737b52cd1ee0a7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>y</name>
      <anchorfile>structdouble3.html</anchorfile>
      <anchor>ab6fe34e5dcee27325269b48655139159</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>z</name>
      <anchorfile>structdouble3.html</anchorfile>
      <anchor>a44d35dc88f287935fe8a767e0b4b8d00</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>dxParallelStepParameters</name>
    <filename>structdxParallelStepParameters.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>reduceType</name>
      <anchorfile>structdxParallelStepParameters.html</anchorfile>
      <anchor>a29454b7922bb12c0cf1912c69de70de8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>syncType</name>
      <anchorfile>structdxParallelStepParameters.html</anchorfile>
      <anchor>a38806ee3b54a6b3b07337a8e53328f8b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>float1</name>
    <filename>structfloat1.html</filename>
    <member kind="variable">
      <type>float</type>
      <name>x</name>
      <anchorfile>structfloat1.html</anchorfile>
      <anchor>a97bf844de72b1f2bfc5aed6edd9b4dd0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>float3</name>
    <filename>structfloat3.html</filename>
    <member kind="variable">
      <type>float</type>
      <name>x</name>
      <anchorfile>structfloat3.html</anchorfile>
      <anchor>af621f02abb1c788738fe61ea9807ff9c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>y</name>
      <anchorfile>structfloat3.html</anchorfile>
      <anchor>aa6147d421a81889971f8c66aa92abf0d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>z</name>
      <anchorfile>structfloat3.html</anchorfile>
      <anchor>a772dffd42d89f350c5a1b766c4703245</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>IndexError</name>
    <filename>structIndexError.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>index</name>
      <anchorfile>structIndexError.html</anchorfile>
      <anchor>a91057efc816878aafb66b9b1ea32dcdd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>int1</name>
    <filename>structint1.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>x</name>
      <anchorfile>structint1.html</anchorfile>
      <anchor>a2d1f4bf501f3332b7d1665316720c689</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>int3</name>
    <filename>structint3.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>x</name>
      <anchorfile>structint3.html</anchorfile>
      <anchor>a0a4ad50a155a35fa938ce6f16930affa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>y</name>
      <anchorfile>structint3.html</anchorfile>
      <anchor>a5d95e23491677d61019f0354b16adca9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>z</name>
      <anchorfile>structint3.html</anchorfile>
      <anchor>a5cd5a3c388fa28814e3496ef07c39360</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>long1</name>
    <filename>structlong1.html</filename>
    <member kind="variable">
      <type>long int</type>
      <name>x</name>
      <anchorfile>structlong1.html</anchorfile>
      <anchor>a215531823314b384d19298e8f01122a2</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>long3</name>
    <filename>structlong3.html</filename>
    <member kind="variable">
      <type>long int</type>
      <name>x</name>
      <anchorfile>structlong3.html</anchorfile>
      <anchor>a659d9e1e6c918cd92609a707b9035203</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>long int</type>
      <name>y</name>
      <anchorfile>structlong3.html</anchorfile>
      <anchor>a508f9e0eff6e62e44fccfaeee7648ce0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>long int</type>
      <name>z</name>
      <anchorfile>structlong3.html</anchorfile>
      <anchor>a0b5fe68b343e7d28b59fc7774973a9a9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>longlong1</name>
    <filename>structlonglong1.html</filename>
    <member kind="variable">
      <type>long long int</type>
      <name>x</name>
      <anchorfile>structlonglong1.html</anchorfile>
      <anchor>a33d2f3214ca1163651aaaefa1bc0875d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>ParallelTimer</name>
    <filename>classParallelTimer.html</filename>
    <member kind="function">
      <type></type>
      <name>ParallelTimer</name>
      <anchorfile>classParallelTimer.html</anchorfile>
      <anchor>a7ff023213c66e7b8e9b5cec5708418f0</anchor>
      <arglist>(const char *description)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ParallelTimer</name>
      <anchorfile>classParallelTimer.html</anchorfile>
      <anchor>a39a236a107104874bb8c63b78f0e5406</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>short1</name>
    <filename>structshort1.html</filename>
    <member kind="variable">
      <type>short</type>
      <name>x</name>
      <anchorfile>structshort1.html</anchorfile>
      <anchor>a781c67e7616a5c8607a7bfcb4be245a9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>short3</name>
    <filename>structshort3.html</filename>
    <member kind="variable">
      <type>short</type>
      <name>x</name>
      <anchorfile>structshort3.html</anchorfile>
      <anchor>a5d5d88cacca4de50a2334be0033a126a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>short</type>
      <name>y</name>
      <anchorfile>structshort3.html</anchorfile>
      <anchor>a6056b3f7d064291aaf9121575ec83866</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>short</type>
      <name>z</name>
      <anchorfile>structshort3.html</anchorfile>
      <anchor>a803658b690ee5726c60a2b99b99b9143</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>uchar1</name>
    <filename>structuchar1.html</filename>
    <member kind="variable">
      <type>unsigned char</type>
      <name>x</name>
      <anchorfile>structuchar1.html</anchorfile>
      <anchor>a27fb3f5cb6e479b9212189ab8a7a65f0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>uchar3</name>
    <filename>structuchar3.html</filename>
    <member kind="variable">
      <type>unsigned char</type>
      <name>x</name>
      <anchorfile>structuchar3.html</anchorfile>
      <anchor>aee96b406614ad2eb817a08099ef02b4a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned char</type>
      <name>y</name>
      <anchorfile>structuchar3.html</anchorfile>
      <anchor>ad0de0b141bdc6e91c067489a8c2c3dea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned char</type>
      <name>z</name>
      <anchorfile>structuchar3.html</anchorfile>
      <anchor>a4294e55f6a10f888831017a541f55b6e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>uint1</name>
    <filename>structuint1.html</filename>
    <member kind="variable">
      <type>unsigned int</type>
      <name>x</name>
      <anchorfile>structuint1.html</anchorfile>
      <anchor>ac6324c49ac288c10703ab0682ec56137</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>uint3</name>
    <filename>structuint3.html</filename>
    <member kind="variable">
      <type>unsigned int</type>
      <name>x</name>
      <anchorfile>structuint3.html</anchorfile>
      <anchor>ae5e53a2c212b95e0425bc11c591bf5f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>y</name>
      <anchorfile>structuint3.html</anchorfile>
      <anchor>a46416386666d0bfd98c6dff811353cca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>z</name>
      <anchorfile>structuint3.html</anchorfile>
      <anchor>a5c811d4e09ad664f1ee19cbe51da3b3e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ulong1</name>
    <filename>structulong1.html</filename>
    <member kind="variable">
      <type>unsigned long</type>
      <name>x</name>
      <anchorfile>structulong1.html</anchorfile>
      <anchor>ad0b31fa0538d4d8e67b41a75a97d2d98</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ulong3</name>
    <filename>structulong3.html</filename>
    <member kind="variable">
      <type>unsigned long int</type>
      <name>x</name>
      <anchorfile>structulong3.html</anchorfile>
      <anchor>aa0c067885c74609ec302bc940d235c49</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned long int</type>
      <name>y</name>
      <anchorfile>structulong3.html</anchorfile>
      <anchor>afeb5efb781d085a4faf8e79c21cc80d9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned long int</type>
      <name>z</name>
      <anchorfile>structulong3.html</anchorfile>
      <anchor>a9a98a6b839dda2874d3de90c0d11e414</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ulonglong1</name>
    <filename>structulonglong1.html</filename>
    <member kind="variable">
      <type>unsigned long long int</type>
      <name>x</name>
      <anchorfile>structulonglong1.html</anchorfile>
      <anchor>a5408f3d3c49703554cd422b299c6bbf4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ushort1</name>
    <filename>structushort1.html</filename>
    <member kind="variable">
      <type>unsigned short</type>
      <name>x</name>
      <anchorfile>structushort1.html</anchorfile>
      <anchor>a69d5c4b7fb043ed7329cfb9503fa02e4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ushort3</name>
    <filename>structushort3.html</filename>
    <member kind="variable">
      <type>unsigned short</type>
      <name>x</name>
      <anchorfile>structushort3.html</anchorfile>
      <anchor>aac09b8fca61e98577b4c72b716544581</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned short</type>
      <name>y</name>
      <anchorfile>structushort3.html</anchorfile>
      <anchor>afb1f1cb28bcab7309b97ec65e66ee0d3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned short</type>
      <name>z</name>
      <anchorfile>structushort3.html</anchorfile>
      <anchor>a651b479a74e87b7abbe7de5b4d1d1bf2</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>vec3</name>
    <filename>structvec3.html</filename>
    <templarg>T</templarg>
    <member kind="typedef">
      <type>float *</type>
      <name>PtrType</name>
      <anchorfile>structvec3.html</anchorfile>
      <anchor>aa1a6ed03334ceea1cb24c5c0d4e33223</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>float</type>
      <name>Type</name>
      <anchorfile>structvec3.html</anchorfile>
      <anchor>ab20a88cafee4ef739d2fb7c1eef00d76</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>vec3&lt; double &gt;</name>
    <filename>structvec3_3_01double_01_4.html</filename>
    <member kind="typedef">
      <type>double3 *</type>
      <name>PtrType</name>
      <anchorfile>structvec3_3_01double_01_4.html</anchorfile>
      <anchor>a1e4437788a40f2c832b35caece3f9178</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>double3</type>
      <name>Type</name>
      <anchorfile>structvec3_3_01double_01_4.html</anchorfile>
      <anchor>ae858f72ff4cf4614c1eac58da5dadeec</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>vec3&lt; float &gt;</name>
    <filename>structvec3_3_01float_01_4.html</filename>
    <member kind="typedef">
      <type>float3 *</type>
      <name>PtrType</name>
      <anchorfile>structvec3_3_01float_01_4.html</anchorfile>
      <anchor>a6e6a09c4d2e620d1caa9a515c27160c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>float3</type>
      <name>Type</name>
      <anchorfile>structvec3_3_01float_01_4.html</anchorfile>
      <anchor>abe6211fdca0bb4c4e5d0987270466dab</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>vec4</name>
    <filename>structvec4.html</filename>
    <templarg>T</templarg>
    <member kind="typedef">
      <type>float *</type>
      <name>PtrType</name>
      <anchorfile>structvec4.html</anchorfile>
      <anchor>a3adf35a40d96e59ec7879d6225c9181c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>float</type>
      <name>Type</name>
      <anchorfile>structvec4.html</anchorfile>
      <anchor>adee4f9ef427135a918d7df19de42b356</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>vec4&lt; double &gt;</name>
    <filename>structvec4_3_01double_01_4.html</filename>
    <member kind="typedef">
      <type>double4 *</type>
      <name>PtrType</name>
      <anchorfile>structvec4_3_01double_01_4.html</anchorfile>
      <anchor>a94104c8cfd1e128e67fc424c91f77e71</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>double4</type>
      <name>Type</name>
      <anchorfile>structvec4_3_01double_01_4.html</anchorfile>
      <anchor>ac2da7e8964ec169ee42aa24e9e6b6ada</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>vec4&lt; float &gt;</name>
    <filename>structvec4_3_01float_01_4.html</filename>
    <member kind="typedef">
      <type>float4 *</type>
      <name>PtrType</name>
      <anchorfile>structvec4_3_01float_01_4.html</anchorfile>
      <anchor>a25feb235f36f7dee79da7b4b37deb5ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>float4</type>
      <name>Type</name>
      <anchorfile>structvec4_3_01float_01_4.html</anchorfile>
      <anchor>a8ed6ce1ee858808ce6dfb1fda22e21bf</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_ode</name>
    <filename>namespaceparallel__ode.html</filename>
    <namespace>parallel_ode::BatchTypes</namespace>
    <namespace>parallel_ode::ParallelFlags</namespace>
    <namespace>parallel_ode::ReduceTypes</namespace>
    <class kind="class">parallel_ode::BatchStrategy</class>
    <class kind="class">parallel_ode::BatchStrategyFactory</class>
    <class kind="class">parallel_ode::ColoringBatchStrategy</class>
    <class kind="class">parallel_ode::CompactReduceStrategy</class>
    <class kind="class">parallel_ode::CudaPGSSolver</class>
    <class kind="class">parallel_ode::GreedyBatchStrategy</class>
    <class kind="class">parallel_ode::OpenCLPGSSolver</class>
    <class kind="class">parallel_ode::OpenMPPGSSolver</class>
    <class kind="class">parallel_ode::ParallelPGSSolver</class>
    <class kind="class">parallel_ode::ReduceStrategy</class>
    <class kind="class">parallel_ode::ReduceStrategyFactory</class>
    <class kind="class">parallel_ode::SequentialReduceStrategy</class>
    <class kind="class">parallel_ode::StridedReduceStrategy</class>
    <member kind="typedef">
      <type>boost::unordered_map&lt; int, int &gt;</type>
      <name>BatchMap</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a25869018e6370bd72046177e69c81671</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::multimap&lt; int, int, std::greater&lt; int &gt; &gt;</type>
      <name>BatchMultimap</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aef9efe59592db9cfe769044409a6dd02</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>BatchMultimap::iterator</type>
      <name>BatchMultimapIterator</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a3b55f605fe7099a08ef45f3b859a4e08</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>BatchTypes::BatchType</type>
      <name>BatchType</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>adb354f2012437512e731594e58ae573a</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>ParallelFlags::ParallelFlag</type>
      <name>ParallelFlag</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aeeb019bd451d8d2dafd935e246ade685</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>ReduceTypes::ReduceType</type>
      <name>ReduceType</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a13de5a1a7e3a1f93b881e25fdce8b814</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>extractDirectory</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a13bf323f08eb71576f4da9165ebb2e49</anchor>
      <arglist>(const std::string &amp;path)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclInitializeKernels</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a5f2f4c358680de3a19840d7e55667788</anchor>
      <arglist>(cl_context cxGPUContext, cl_command_queue cqParamCommandQue)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ab52e28c944a1941e87e7ecf10779d3af</anchor>
      <arglist>(cl_mem fc0, cl_mem fc1, cl_mem fc0_reduction, cl_mem fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa1d9aa2b26d0fd23fa9613cd1d1cea23</anchor>
      <arglist>(cl_mem fc0_reduction, cl_mem fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a7f72d4ccaf932ca30e1d43c3dc215952</anchor>
      <arglist>(int offset, int numConstraints, bool bUseAtomics)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclPGSSolveInit</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa1ea4fe36091ba886c7977ca6198542f</anchor>
      <arglist>(cl_mem bodyIDs, cl_mem fIDs, cl_mem j, cl_mem ij, cl_mem fc0, cl_mem fc1, cl_mem fc0_reduction, cl_mem fc1_reduction, cl_mem lambda, cl_mem adcfm, cl_mem rhs, cl_mem hilo, int bStride, int cStride, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclShutdownKernels</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a4ad2b5943cb6721326ba1e28ca60ac24</anchor>
      <arglist>(void)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>oclZeroVector</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a9de181ca6b173fedf12c075fd2eb0438</anchor>
      <arglist>(cl_mem buffer, int bufferSize, bool bScalarType)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompPGSReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac8fc8225461e3408bcaa4ae0fb85a392</anchor>
      <arglist>(typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>ompPGSReduce&lt; dReal &gt;</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a5866746ef7a7f1877e893a67c7a36e42</anchor>
      <arglist>(dReal4 *fc0, dReal4 *fc1, dReal4 *fc0_reduction, dReal4 *fc1_reduction, ReduceStrategy *reduceStrategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompPGSSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a844984c865b0265a9e83bd78ed169b54</anchor>
      <arglist>(int4 *bodyIDs, int *fIDs, typename vec4&lt; T &gt;::Type *j, typename vec4&lt; T &gt;::Type *ij, typename vec4&lt; T &gt;::Type *fc0, typename vec4&lt; T &gt;::Type *fc1, typename vec4&lt; T &gt;::Type *fc0_reduction, typename vec4&lt; T &gt;::Type *fc1_reduction, T *lambda, T *adcfm, T *rhs, T *hilo, int offset, int numConstraints, bool bUseAtomics, int bStride, int cStride)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>ompPGSSolve&lt; dReal &gt;</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa8c2fc0b11ae8dc2f44d3a3d6a4bc976</anchor>
      <arglist>(int4 *bodyIDs, int *fIDs, dReal4 *j, dReal4 *ij, dReal4 *fc0, dReal4 *fc1, dReal4 *fc0_reduction, dReal4 *fc1_reduction, dReal *lambda, dReal *adcfm, dReal *rhs, dReal *hilo, int batch, int numConstraints, bool bUseAtomics, int bStride, int cStride)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ompZeroVector</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>afd1351860e3cd69d8bbb081d7ffb7293</anchor>
      <arglist>(T *buffer, int bufferSize)</arglist>
    </member>
    <member kind="function">
      <type>template void</type>
      <name>ompZeroVector&lt; dReal4 &gt;</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac14c9ec43ec1989194231d9be3ea46b2</anchor>
      <arglist>(dReal4 *buffer, int bufferSize)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static size_t</type>
      <name>uSnap</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a380d8a608489ac77e0546fc5ecd368ec</anchor>
      <arglist>(size_t a, size_t b)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckReduce</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>aa8d89f99785c2b684b2a3010f82e30d8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckSolve</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a8e451413dee66685280cf62269591523</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckZero</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a4b36cd2a7eb50a806da0a4491b41aed1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_kernel</type>
      <name>ckZero4</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ad4e03224186c0242e04116b2a11c902a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_program</type>
      <name>cpSolver</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a1d007407ba2be594cd1937a3f92f5be4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static cl_command_queue</type>
      <name>cqDefaultCommandQueue</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a85504a48a117737a1c9c35ba9d7200b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const int</type>
      <name>DEFAULT_CL_FLAGS</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a628a9c1cc56f4374de53ec93ea8976f6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>DEFAULT_FLAGS</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>adfab18c19c381ae4faee6710a63c926e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>DEFAULT_OPENMP_FLAGS</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a1d1a7074abb16a372fb3fef78cb4fbfe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>FILENAME</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a59d5853903b9f03ed7186ff598770ffb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>INC_DIR</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>a9c8bfdf7ad43ff3adc44813f0f83da66</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>SRC_DIR</name>
      <anchorfile>namespaceparallel__ode.html</anchorfile>
      <anchor>ac91f25ca8969c5c226d03bb64acddf49</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::BatchStrategy</name>
    <filename>classparallel__ode_1_1BatchStrategy.html</filename>
    <member kind="typedef">
      <type>IntVector</type>
      <name>BatchVector</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>af1655137390c685f129648c579583069</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>batch</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>abaf15b1fc3f497df9972a8021b64bb5f</anchor>
      <arglist>(const int *pairList, const int numConstraints, const int numBodies, BatchVector &amp;constraintIndices, BatchVector &amp;bodyRepetitionCount0, BatchVector &amp;bodyRepetitionCount1, BatchVector &amp;maxBodyRepetitionCountInBatch, BatchVector &amp;batchIndices, BatchVector &amp;batchSizes)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>BatchStrategy</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a9b69b7f26a064a46b2d9ac65be532ddb</anchor>
      <arglist>(int maxBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getAlignment</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a3f367dfe16e84392d842898e968a53a0</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getMaxBatches</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>aa93f1d7316f89e414799fa2bd3af1071</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isAligning</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a822e2057230b5aecd31d8b3c355bb335</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setAlign</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>ae881c2cb4136940897fe8079c4e40a49</anchor>
      <arglist>(bool bAlign)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setAlignment</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>ac34b8a2dffd3c65ed02640477149a669</anchor>
      <arglist>(int alignment)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setMaxBatches</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>af428df8d49157b487bf80bd2f470ed64</anchor>
      <arglist>(int maxBatches)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~BatchStrategy</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>aa5c24279f2636fbced2c32d610cdf2da</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>baseBatch</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a2fb586981b80e7e19c1136754ebeb654</anchor>
      <arglist>(const int *pairList, const BatchVector &amp;constraintIndices, const BatchVector &amp;batchSizes, BatchVector &amp;batchIndices, BatchVector &amp;bodyRepetitionCount0, BatchVector &amp;bodyRepetitionCount1, BatchVector &amp;maxBodyRepetitionCountInBatch)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>batchRepetitionCount</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a9c6d1af7a201814a7abebe186408aac3</anchor>
      <arglist>(const int *pairList, const BatchVector &amp;constraintIndices, const BatchVector &amp;batchIndices, BatchVector &amp;bodyRepetitionCount0, BatchVector &amp;bodyRepetitionCount1, BatchVector &amp;maxBodyRepetitionCountInBatch)</arglist>
    </member>
    <member kind="function" protection="protected" static="yes">
      <type>static void</type>
      <name>batchIndicesFromBatchSizes</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>afe0d1b25aed5e59c3f4a0c0eb3a7d1fa</anchor>
      <arglist>(const BatchVector &amp;batchSizes, BatchVector &amp;batchIndices, bool bAlign, int alignment)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>alignment_</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a55c71dde1e0f3809f5b7b5d568e7d1fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>bAlign_</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>a0be4e4a98905969fff8b4929c788a173</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>maxBatches_</name>
      <anchorfile>classparallel__ode_1_1BatchStrategy.html</anchorfile>
      <anchor>ae228bf113f2a67496215b3840ee04f7a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::BatchStrategyFactory</name>
    <filename>classparallel__ode_1_1BatchStrategyFactory.html</filename>
    <member kind="function" static="yes">
      <type>static BatchStrategy *</type>
      <name>create</name>
      <anchorfile>classparallel__ode_1_1BatchStrategyFactory.html</anchorfile>
      <anchor>ad4f92a43bf72f0a1d18c921fb18945fb</anchor>
      <arglist>(BatchType batchType, int numBatches, bool bAlign=false, int alignment=ParallelOptions::DEFAULTALIGN)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::ColoringBatchStrategy</name>
    <filename>classparallel__ode_1_1ColoringBatchStrategy.html</filename>
    <base>parallel_ode::BatchStrategy</base>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>batch</name>
      <anchorfile>classparallel__ode_1_1ColoringBatchStrategy.html</anchorfile>
      <anchor>a9833a37ca51ec61a029c6835aa3580b6</anchor>
      <arglist>(const int *pairList, const int numPairs, const int numBodies, BatchVector &amp;bodyRepetitionCount0, BatchVector &amp;bodyRepetitionCount1, BatchVector &amp;maxBodyRepetitionCountInBatch, BatchVector &amp;constraintIndices, BatchVector &amp;batchIndices, BatchVector &amp;batchSizes)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ColoringBatchStrategy</name>
      <anchorfile>classparallel__ode_1_1ColoringBatchStrategy.html</anchorfile>
      <anchor>aa1189603db6a602b71f06081b07b6f7b</anchor>
      <arglist>(int maxBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::CompactReduceStrategy</name>
    <filename>classparallel__ode_1_1CompactReduceStrategy.html</filename>
    <base>parallel_ode::ReduceStrategy</base>
    <member kind="function">
      <type></type>
      <name>CompactReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1CompactReduceStrategy.html</anchorfile>
      <anchor>a3e0aefd99d841ee7cdcea81ddeeaf6b2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual ReduceType</type>
      <name>getType</name>
      <anchorfile>classparallel__ode_1_1CompactReduceStrategy.html</anchorfile>
      <anchor>ab85437e3f0c514df7a279f54caa09bb9</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1CompactReduceStrategy.html</anchorfile>
      <anchor>a68b23f5cbdfd7392c520c4021ef352ff</anchor>
      <arglist>(int bodySize, int maxBodyRepetitionCount, const IntVector &amp;batchRepetitionCount)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~CompactReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1CompactReduceStrategy.html</anchorfile>
      <anchor>a29035145bd3a2055fe47a00c92a30cce</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::CudaPGSSolver</name>
    <filename>classparallel__ode_1_1CudaPGSSolver.html</filename>
    <templarg></templarg>
    <templarg></templarg>
    <base>ParallelPGSSolver&lt; CudaT, ParamsT, ParallelTypes::CUDA &gt;</base>
    <member kind="typedef">
      <type>CudaT *</type>
      <name>CudaTMutablePtr</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>ad70412c5b9054f870c87a90d4d8767ef</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>const CudaT *</type>
      <name>CudaTPtr</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>a25980b7c18081dc46fd8e49cb676c04d</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>PMemManager::mem_flags</type>
      <name>MemFlags</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>aee59cf2d69bc34ee3c5c1cc5ebd10c8b</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>MemManager&lt; CudaT, ParallelTypes::CUDA &gt;</type>
      <name>PMemManager</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>a4e8d1285e9fb6fa3ae0e0dd60658071c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>vec4&lt; CudaT &gt;::Type</type>
      <name>Vec4T</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>af6766fd257cdf129d7f8ffeaf1d6c7b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>CudaPGSSolver</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>a09fa2c76f4b9ece96c6567dfd5fb1b16</anchor>
      <arglist>(int parallelFlags=DEFAULT_FLAGS, BatchType batchType=BatchTypes::DEFAULT_BATCH_TYPE, ReduceType reduceType=ReduceTypes::DEFAULT_REDUCE_TYPE, uint numBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>aff550562fa717b1361415c6faaf3cd85</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~CudaPGSSolver</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>a9fca4a4dd0362fc4ded19a9166ea6876</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadConstraints</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>a668ad6059c948c63d003a10919792101</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>preProcessDevice</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>a0875338d88f236114ca0a0ebc9d81dde</anchor>
      <arglist>(const CudaT sorParam, const CudaT stepsize)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>solveAndReduce</name>
      <anchorfile>classparallel__ode_1_1CudaPGSSolver.html</anchorfile>
      <anchor>aae36f978e2aa8f61d5896b1dc4ff6eaf</anchor>
      <arglist>(const int offset, const int batchSize)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::GreedyBatchStrategy</name>
    <filename>classparallel__ode_1_1GreedyBatchStrategy.html</filename>
    <base>parallel_ode::BatchStrategy</base>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>batch</name>
      <anchorfile>classparallel__ode_1_1GreedyBatchStrategy.html</anchorfile>
      <anchor>a693ca7baf128075ce406723b394bad51</anchor>
      <arglist>(const int *pairList, const int numPairs, const int numBodies, BatchVector &amp;bodyRepetitionCount0, BatchVector &amp;bodyRepetitionCount1, BatchVector &amp;maxBodyRepetitionCountInBatch, BatchVector &amp;constraintIndices, BatchVector &amp;batchIndices, BatchVector &amp;batchSizes)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>GreedyBatchStrategy</name>
      <anchorfile>classparallel__ode_1_1GreedyBatchStrategy.html</anchorfile>
      <anchor>afdcd57efbbaa1ab4eab62b640b597d7d</anchor>
      <arglist>(int maxBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::OpenCLPGSSolver</name>
    <filename>classparallel__ode_1_1OpenCLPGSSolver.html</filename>
    <templarg></templarg>
    <base>ParallelPGSSolver&lt; T, T, ParallelTypes::OpenCL &gt;</base>
    <member kind="typedef">
      <type>T *</type>
      <name>TMutablePtr</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>adb19f995a0f63fea38225b80a82a7a4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>const T *</type>
      <name>TPtr</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>a9ead13acacd80ff2dac80eb5562a150f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>vec4&lt; T &gt;::Type</type>
      <name>Vec4T</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>aaf06644693d439a7f8c32350a532a368</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>acf618b4f420f9108e8b670ce874fbd4d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>OpenCLPGSSolver</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>ae92aea793dccb5e1d0d765c392730d55</anchor>
      <arglist>(int parallelFlags=DEFAULT_CL_FLAGS, BatchType batchType=BatchTypes::DEFAULT_BATCH_TYPE, ReduceType reduceType=ReduceTypes::REDUCE_STRIDED, uint numBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~OpenCLPGSSolver</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>a91ad8d791243913c5a9140e5b63dc746</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadConstraints</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>a6d1345b9734338bafff84a8a3e9d0443</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadKernels</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>afd32c1b2a15ea53bd72e1b6a3c752edb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>solveAndReduce</name>
      <anchorfile>classparallel__ode_1_1OpenCLPGSSolver.html</anchorfile>
      <anchor>a223f905789426ba39cd95e7b30fa65d6</anchor>
      <arglist>(const int offset, const int batchSize)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::OpenMPPGSSolver</name>
    <filename>classparallel__ode_1_1OpenMPPGSSolver.html</filename>
    <templarg></templarg>
    <base>ParallelPGSSolver&lt; T, T, ParallelType::OpenMP &gt;</base>
    <member kind="typedef">
      <type>vec4&lt; T &gt;::Type</type>
      <name>Vec4T</name>
      <anchorfile>classparallel__ode_1_1OpenMPPGSSolver.html</anchorfile>
      <anchor>acac86fc962494e41f7e86edb57e4124e</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>OpenMPPGSSolver</name>
      <anchorfile>classparallel__ode_1_1OpenMPPGSSolver.html</anchorfile>
      <anchor>a2807c0db55e1dd57bee5b01e94aa329c</anchor>
      <arglist>(int parallelFlags=DEFAULT_OPENMP_FLAGS, BatchType batchType=BatchTypes::DEFAULT_BATCH_TYPE, ReduceType reduceType=ReduceTypes::DEFAULT_REDUCE_TYPE, uint numBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~OpenMPPGSSolver</name>
      <anchorfile>classparallel__ode_1_1OpenMPPGSSolver.html</anchorfile>
      <anchor>a4fa6182ef6942820a452f7f1f0fe9fc4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadConstraints</name>
      <anchorfile>classparallel__ode_1_1OpenMPPGSSolver.html</anchorfile>
      <anchor>af92333e42f6302d44bb2f678de1ef3d6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>solveAndReduce</name>
      <anchorfile>classparallel__ode_1_1OpenMPPGSSolver.html</anchorfile>
      <anchor>af812eb050605850719f1799bf27831cf</anchor>
      <arglist>(const int offset, const int batchSize)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::ParallelPGSSolver</name>
    <filename>classparallel__ode_1_1ParallelPGSSolver.html</filename>
    <templarg>CudaT</templarg>
    <templarg>ParamsT</templarg>
    <templarg>PType</templarg>
    <class kind="struct">parallel_ode::ParallelPGSSolver::SolverParams</class>
    <member kind="typedef">
      <type>CudaT *</type>
      <name>CudaTMutablePtr</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a49fd8973641fb97ca99bd993527ab53c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>const CudaT *</type>
      <name>CudaTPtr</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a84cd0793d50ab2dafbe028d7bbc882a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>PMemManager::mem_flags</type>
      <name>MemFlags</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a42cbdbe983bc9b1eba91814aad15e9e7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>ParamsT *</type>
      <name>ParamsTMutablePtr</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae59f99a5ae811e9e740fc881d4468738</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>const ParamsT *</type>
      <name>ParamsTPtr</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a5466644abe836ca8fd72d0119fb471da</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>MemManager&lt; CudaT, PType &gt;</type>
      <name>PMemManager</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>afad11a80767ab700a344a25a0549bd97</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>vec4&lt; CudaT &gt;::Type</type>
      <name>Vec4T</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a368432a6c06691e72910e80aa91b398c</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a93a3ee63e6e09b442d2e2b8b14c2331e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ParallelPGSSolver</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>af02f820c3b750e2069d2528353cad356</anchor>
      <arglist>(int parallelFlags=DEFAULT_FLAGS, BatchType batchType=BatchTypes::DEFAULT_BATCH_TYPE, ReduceType reduceType=ReduceTypes::DEFAULT_REDUCE_TYPE, uint numBatches=ParallelOptions::MAXBATCHES)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>worldSolve</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a2d64e048c4e5d178eb7f715b68775f04</anchor>
      <arglist>(SolverParams *params)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ParallelPGSSolver</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae2f4f6ce7a355059f8884a240ce7abbe</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>alignEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ad85a5372a60d8d7c8d95b398e63ac6da</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>asyncEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a94ed5c6812884a19323ae4df7a56b003</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>atomicsEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aadb88013c5e212cac282cbeab106b2f6</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>bID</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aa356b92fb7ff361e502dea2420f1ae08</anchor>
      <arglist>(const int index, const int offset) const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>checkInit</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>abb0bb80e89e031557f3cff64c5c5d780</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>cID</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>adbce9f36cbbfbf4b55224c383cba0294</anchor>
      <arglist>(const int index, const int offset) const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>compactScalarsEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>afdc34d99ec5f7d84a1d57f7068a9924e</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getBodyStride</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae89d2e9e4954b467f7b0a7db4599b730</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getConstraintStride</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae78d554b6b80ab48c93729bf89724822</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>CopyType</type>
      <name>getCopyType</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>af15a85916b7f7a8fbf6d8874906aa734</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getDefaultAlign</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a69d2aaa18e8b6691d7a50f804bbe9017</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getNumBatches</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a0d2334ff591b2ed383a2622f58aca96f</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getNumBodies</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a1cd84d5d57e65774da56e84b919d5248</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getNumConstraints</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aeb51b98c327896dcbf1ddd6d5a7eb316</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>getReduceStride</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>af340115896fef4eff3864fc1cbde06f4</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>isEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a093f90c42e2d886a5392d5d1b735a52f</anchor>
      <arglist>(const ParallelFlag flag) const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>loadBatches</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>af5558c7f6bdac8b2e0d14a766e4149b1</anchor>
      <arglist>(int *jb)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadBodies</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a14fc3e76a672d19548dc2b9d30fffde2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadConstants</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>acc5586b3abe6ebe37077383ed72c54c0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadConstraints</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a9ebb355b29932b950842201841816c16</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadKernels</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a812ad83a6f8028273da6ab323b996f7d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>loadSolution</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae852d0020d3f4434abbe40313bd1bfb5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>pinnedMemEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aa9958b6277faa186cedc7e0fdf25a142</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>preProcessDevice</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a2a220fcf57bcdc4d46d07ee6f0112321</anchor>
      <arglist>(const CudaT sorParam, const CudaT stepsize)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>preprocessEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a8cc0ddf96364a653dff9212b9142fc0b</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>preProcessHost</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a71f652960f20d0b39d703e7a46b4773f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>printConfig</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a0e8b9ecdb8667c0e36d607e9b78e7676</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>randomizeEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae3af825fe7ad2d8a786d35fc46d44967</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>reduceEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>af642655e67a4af2a2140d3afcd7bd17c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>rID</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a5fe96541c02be221424611e1a63b8495</anchor>
      <arglist>(const int index, const int offset) const </arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setBodySize</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a6c685abc04fc9877e4f2309feed1dd34</anchor>
      <arglist>(int n, bool bResizeArrays=true)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setBodyStride</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a33af9950877d87f87e93df316f69ed04</anchor>
      <arglist>(int bodyStride)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setConstraintSize</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>af0139d021f535c0e534cb0e9c575244f</anchor>
      <arglist>(int m, bool bResizeArrays=true)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setConstraintStride</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a811d0a31226fb517b08ae74ef517948d</anchor>
      <arglist>(int constraintStride)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>setMemFlags</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a40bd1c02699dc4694659c5cd38ab305f</anchor>
      <arglist>(MemFlags flags)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setReduceStride</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a6351a7368043f0787e00f5e19484b8c4</anchor>
      <arglist>(int reduceStride)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>solveAndReduce</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a6e9481dea770564e2db18fee7fec52cf</anchor>
      <arglist>(const int offset, const int batchSize)=0</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>syncDeviceToODE</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a2f6611b030a66320647c325e71172e49</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>syncODEToDevice</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a467f39dea05b2da1941f73d27440cd63</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>wcMemEnabled</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a3a66a5848ce3eb530c27a9ca7240c90c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; CudaT, PType &gt;</type>
      <name>adcfm</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>abadbcaf8605d14b5e56afce18f7b523d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>IntVector</type>
      <name>batchIndices_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ab3e92438468c14baea03185f10e91e5f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>IntVector</type>
      <name>batchRepetitionCount_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a8f456e0e26fcd8a8fdc2d8770afc5b32</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>IntVector</type>
      <name>batchSizes_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae5a272aebb4ad23a685ba1e54b0cb117</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>BatchStrategy *</type>
      <name>batchStrategy_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a18eadc558fa95deb20ce51d7bd996234</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>BatchType</type>
      <name>batchStrategyType_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ab3d194140a39d6be12023dc4e78227ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>bInit_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ac862e037545055469cc41f934a9bc45d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>bodyFAcc</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ab46951f215e20014fdaed4b1e8d5ca39</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>bodyFAccReduction</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a491c9c217b127fc0817dae8bb974e14d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; int4, PType &gt;</type>
      <name>bodyIDs</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a4418efb233c154b319ef32fdd7942be7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>bodyStride_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a5964e1d2919ce9c2a524550f9c9b99f8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>bodyTAcc</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aba196b58110eaec7743aa1a726545de4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>bodyTAccReduction</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a9b14be09d6545a321deffa7ff5c81ef2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>IntVector</type>
      <name>constraintIndices_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aac3c3fbb7783ccbaca66ae5089f37627</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>constraintStride_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a9bf5c7986147469b6a3d95877df21a00</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; int, PType &gt;</type>
      <name>fIDs</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a9ccc9c88b6ff48502ba389ecd0b70636</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>i0</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ac42a757e20d6263b90b5903681ab1aba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>ij0</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a164c0305f1f476511a04e0619d8e79bf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; CudaT, PType &gt;</type>
      <name>iMass</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ad24be4a583cb6c82983f3d0e359366f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; Vec4T, PType &gt;</type>
      <name>j0</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a7eb6b192bb923fc162558a37ec6f7f05</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; CudaT, PType &gt;</type>
      <name>lambda0</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a500865f0ca7e1a78d615ded5cdaca0f5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; CudaT, PType &gt;</type>
      <name>lohiD</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a30a4f4804ec37590fd3cc99044aa9b35</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>m_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a724454a5ca399331657d9d3079d6c001</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>n_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aaea5723e1d644b64447a120ecb34c56f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>numBatches_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ab864be34214b394cee7ea32b7c0c53fe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>parallelFlags_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a503b7d0f7df32fa40b9d0ae8bbf21e1f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>SolverParams *</type>
      <name>parallelParams_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ae8fc5bd7f0502d3961e2bcf2ebf60945</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ReduceStrategy *</type>
      <name>reduceStrategy_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a55257cdcb18654375f04a9f8a67539e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ReduceType</type>
      <name>reduceStrategyType_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a8a5c2a8d09819a3fa0982d04a28609fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>reduceStride_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>ac8fe2697ec34f29426e66a379a0af08d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>IntVector</type>
      <name>reductionOffsets0_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>aecbee6a582099f7b7d4c69637c7d7805</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>IntVector</type>
      <name>reductionOffsets1_</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a4aff2b4492d9d714ba34ad1ad2b9ba57</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ParallelHDArray&lt; CudaT, PType &gt;</type>
      <name>rhs</name>
      <anchorfile>classparallel__ode_1_1ParallelPGSSolver.html</anchorfile>
      <anchor>a6f92e91fb48a7badb4842b6a92cebc2a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>parallel_ode::ParallelPGSSolver::SolverParams</name>
    <filename>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</filename>
    <member kind="function">
      <type></type>
      <name>SolverParams</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a34b5ce01f1be964fc0f7be80f5846438</anchor>
      <arglist>(dxWorldProcessContext *contextIn, const dxQuickStepParameters *qsIn, const int mIn, const int nbIn, ParamsTMutablePtr JIn, int *jbIn, dxBody *const *bodyIn, ParamsTPtr invIIn, ParamsTMutablePtr lambdaIn, ParamsTMutablePtr fcIn, ParamsTMutablePtr bIn, ParamsTPtr loIn, ParamsTPtr hiIn, ParamsTPtr cfmIn, ParamsTMutablePtr iMJIn, ParamsTMutablePtr AdcfmIn, const int *findexIn, const ParamsT stepsizeIn)</arglist>
    </member>
    <member kind="variable">
      <type>ParamsTMutablePtr</type>
      <name>Adcfm</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a1e3872efd649a93549b3e14aee97dfcf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTMutablePtr</type>
      <name>b</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>ad7982d22d6ef045a24c838d82ae1b90a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>dxBody *const *</type>
      <name>body</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>aa4583e5cdee7de7c829a553be845df2e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTPtr</type>
      <name>cfm</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>aa5def2b73efb35c614f90f1e56db4e60</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>dxWorldProcessContext *</type>
      <name>context</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>aa9f405647e04b204e0fcce39a7a57112</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTMutablePtr</type>
      <name>fc</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a1b107c90807ebe9726787f46b70ea32d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int *</type>
      <name>findex</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>ac7806292ebf0130ea8c7a5711c395d82</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTPtr</type>
      <name>hi</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a3cdd366911de4bee1078d2c2be178bbf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTMutablePtr</type>
      <name>iMJ</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a9662fb96c67c21573c95c211e1a39ca3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTPtr</type>
      <name>invI</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>aefd28e3fdf93c84703b8f466dd04d38c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTMutablePtr</type>
      <name>J</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a8a6e9ef516e59f5caf27e9ce8bcee336</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int *</type>
      <name>jb</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a998cceca8730f7f07e9a17bb4f11dec2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTMutablePtr</type>
      <name>lambda</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>acb44ed697e42aa93f5f6b58f3624ba7a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ParamsTPtr</type>
      <name>lo</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a3f8fddd2d52ce9c6d3c2bf3886721c9c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>m</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a4c5144821e5a20d5ea5e41afcab42a5e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>nb</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a0941a1d0f59a434737f6ae4419f674b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const dxQuickStepParameters *</type>
      <name>qs</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a2792da79e7e1c5af53636a14a54f7793</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const ParamsT</type>
      <name>stepsize</name>
      <anchorfile>structparallel__ode_1_1ParallelPGSSolver_1_1SolverParams.html</anchorfile>
      <anchor>a8bf8736f200183d46cb750a2357ea547</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::ReduceStrategy</name>
    <filename>classparallel__ode_1_1ReduceStrategy.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>clearReduceBuffers</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>aa7d56719ee7b9aa40b23971c5a1d098b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getBodyAlignment</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a85ae856ccd516ccb4e80cd59b15cac96</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getBodyOffsetStride</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a0f23481630fa223d0fea03c9d91d6ae8</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getBodySize</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>ab0a04154d3ca5d1f15f11c6bfaeeff5c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getBodySizeWithReduction</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>ab65743785bff70c99fe235e812ae898c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getBodyStride</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>af3adb8195b766ca89b279683deaa87bb</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>getFinalIndex</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>aad6b60d47dec23b7cccaa6edd19c8ea7</anchor>
      <arglist>(int baseBodyIndex, int bodyOffset)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual ReduceType</type>
      <name>getType</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a01fa78280d5f66c2b5b8814d66bb344a</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a52af4828ac2a674dba1e9d35c91095d0</anchor>
      <arglist>(int bodySize, int maxBodyRepetitionCount, const IntVector &amp;batchRepetitionCount)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>print</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a32c30db687e0cb5961b669ab70ff5709</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a4d3f8da75bd1868c6b2843b4afa02dfb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setBodyAlignment</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>ac64a92e92edce861521ff177d9ddf577</anchor>
      <arglist>(int bodyAlignment)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setClearReduceBuffers</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a012ef875382bce1e5b76af5baeccf7fe</anchor>
      <arglist>(bool clearBuffers)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a99d7cc363fa8c342a98e4dd639af30d0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setBodyOffsetStride</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a92546a908355a2ba4379a4cb473152a1</anchor>
      <arglist>(int bodyStride)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setBodySize</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a84f4e6cd2d7ebed51d860353951af61e</anchor>
      <arglist>(int bodySize)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setBodySizeWithReduction</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a54c5c1df2c72b37c775a91338b20fc3c</anchor>
      <arglist>(int bodySize)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>setBodyStride</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>ae9720e6641dd3abb4d28a66424af5ac2</anchor>
      <arglist>(int bodyStride)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>bClearReduceBuffers_</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>ae299c60221c5af7071be522844a4629b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>bodyAlignment_</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>abbe24e88ee7b93c25366854f8f2d52fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>bodyOffsetStride_</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>aed2f27aa87dbb9447b0b0fead6e9adda</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>bodySize_</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a37f97cb7464a03b6c5ef56e5ce3f06b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>bodySizeWithReduction_</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a876252f588267aa2139a98d617b43877</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>bodyStride_</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategy.html</anchorfile>
      <anchor>a2e16d466f09f92629f7bb58fcd17ec5c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::ReduceStrategyFactory</name>
    <filename>classparallel__ode_1_1ReduceStrategyFactory.html</filename>
    <member kind="function" static="yes">
      <type>static ReduceStrategy *</type>
      <name>create</name>
      <anchorfile>classparallel__ode_1_1ReduceStrategyFactory.html</anchorfile>
      <anchor>a5852ac87a07f0a07678e8dd6ec9f2ad2</anchor>
      <arglist>(ReduceType reduceType, bool bClearBuffers=true, int bodyAlignment=ParallelOptions::DEFAULTALIGN)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::SequentialReduceStrategy</name>
    <filename>classparallel__ode_1_1SequentialReduceStrategy.html</filename>
    <base>parallel_ode::ReduceStrategy</base>
    <member kind="function" virtualness="virtual">
      <type>virtual ReduceType</type>
      <name>getType</name>
      <anchorfile>classparallel__ode_1_1SequentialReduceStrategy.html</anchorfile>
      <anchor>a236b137eec88ecc875c4ca1525e95f6f</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1SequentialReduceStrategy.html</anchorfile>
      <anchor>a5b332495fe214edbf1cff3e694fddbd9</anchor>
      <arglist>(int bodySize, int maxBodyRepetitionCount, const IntVector &amp;batchRepetitionCount)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SequentialReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1SequentialReduceStrategy.html</anchorfile>
      <anchor>a79547a313b3ab8b734ed08a5a30a28c4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SequentialReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1SequentialReduceStrategy.html</anchorfile>
      <anchor>a0f32d504734e43957fd59cb6ce3e606d</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_ode::StridedReduceStrategy</name>
    <filename>classparallel__ode_1_1StridedReduceStrategy.html</filename>
    <base>parallel_ode::ReduceStrategy</base>
    <member kind="function" virtualness="virtual">
      <type>virtual ReduceType</type>
      <name>getType</name>
      <anchorfile>classparallel__ode_1_1StridedReduceStrategy.html</anchorfile>
      <anchor>aaed1b228f948c7d8bc51ceb5ae0fbb92</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classparallel__ode_1_1StridedReduceStrategy.html</anchorfile>
      <anchor>aedfc48bcb516a77629bad23d6f835885</anchor>
      <arglist>(int bodySize, int maxBodyRepetitionCount, const IntVector &amp;batchRepetitionCount)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>StridedReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1StridedReduceStrategy.html</anchorfile>
      <anchor>ad48263480264276f1279bd606b588a04</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~StridedReduceStrategy</name>
      <anchorfile>classparallel__ode_1_1StridedReduceStrategy.html</anchorfile>
      <anchor>aef292ab2c4924d147f0eeab785a5a0f7</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_ode::BatchTypes</name>
    <filename>namespaceparallel__ode_1_1BatchTypes.html</filename>
    <member kind="enumeration">
      <name>BatchType</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BATCH_RANDOM</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299a87346525584a1176714c3fdcaa0d397c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BATCH_GREEDY</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299aa3aedcdad6e95d74961f48c00e9e0a93</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BATCH_COLORED</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299a0730a8925ff2c97128813aec65d112b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULT_BATCH_TYPE</name>
      <anchorfile>namespaceparallel__ode_1_1BatchTypes.html</anchorfile>
      <anchor>ab3907b898be0bd3f3a566f4f885a6299afdde8b101c4e449eb9c7b74b2b5af78d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_ode::ParallelFlags</name>
    <filename>namespaceparallel__ode_1_1ParallelFlags.html</filename>
    <member kind="enumeration">
      <name>ParallelFlag</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_NONE</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa58788b8d270af8ede9e190d6b9495706</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_PREPROCESS</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aaf4fe1b6a02ece9ac24f5dc1140d91485</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_ASYNC</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aab62b4258a82a49da2dc41fafa08b86ad</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_RANDOMIZE</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa59a84fd383e1f82b839a8558435e6ae7</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_ATOMICS</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa1798202f1d8f570eeeb26070ad4f5285</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_ALIGN</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aab7e2282f2e01da25cd2aeb2cdc83260c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_PINNED</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aac0a6e5bb1b391aace4ce726e4d5be777</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_WC</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa08100d9e23fba039df262c7677277b29</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_REDUCE</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aa2b3ac2d88c6bd60a3d0f18ccfd90a097</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PARALLEL_COMPACT</name>
      <anchorfile>namespaceparallel__ode_1_1ParallelFlags.html</anchorfile>
      <anchor>adcd7fb5972427caf4147bf7864d6003aaf298c0176d9444fc7be02c347e2d711f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_ode::ReduceTypes</name>
    <filename>namespaceparallel__ode_1_1ReduceTypes.html</filename>
    <member kind="enumeration">
      <name>ReduceType</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_NONE</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5ca0597d35c9061749e0e4ee24997be6001</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_SEQUENTIAL</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5ca38f8c655cc074917070483a4a74eda64</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_STRIDED</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5cad84016a80407ec4d33e38663c20cff45</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>REDUCE_COMPACT</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5cafbba3e122150a238c25d7b992a38fe2b</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULT_REDUCE_TYPE</name>
      <anchorfile>namespaceparallel__ode_1_1ReduceTypes.html</anchorfile>
      <anchor>a6f7d3832cd1025bfd61102247c132e5cabf408f66ab9d31eaf31458f68b89dec1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_utils</name>
    <filename>namespaceparallel__utils.html</filename>
    <namespace>parallel_utils::ArrayTypes</namespace>
    <namespace>parallel_utils::CopyTypes</namespace>
    <class kind="struct">parallel_utils::MemManager</class>
    <class kind="class">parallel_utils::ParallelArray</class>
    <class kind="class">parallel_utils::ParallelHDArray</class>
    <member kind="typedef">
      <type>ArrayTypes::ArrayType</type>
      <name>ArrayType</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a251c1c087b74c261c43b186b6294e2bb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>CopyTypes::CopyType</type>
      <name>CopyType</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>aee75a6f8bf1e539223d252c47e2f1ffa</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>__alignedSize</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>aced7f450fd6042d68269c7b5d8a486cb</anchor>
      <arglist>(VectorType&lt; int &gt; &amp;vectorToAlign)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>computeElementsPerAlign</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a6e8229ddd1291d6fba9c631e0359a865</anchor>
      <arglist>(int align)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>computeGridSize</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>afffa8d750497bdf648329f78cbf1aa8c</anchor>
      <arglist>(int n, int blockSize, int &amp;numBlocks, int &amp;numThreads)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>computeStride</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a033eb3de9fba6ff297e659b241f0099f</anchor>
      <arglist>(int n, int blockSize)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>fillSequentialVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a653d3c3cc37557895b995b3e2df38109</anchor>
      <arglist>(VectorType&lt; T &gt; &amp;vectorToFill)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>fillStridedVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a94f1d2c397c0e05abe07575d94ea3dea</anchor>
      <arglist>(VectorType&lt; T &gt; &amp;vectorToFill, T stride)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>iDivUp</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>af1b129ac961f14750362053745d8d5ed</anchor>
      <arglist>(int a, int b)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>iPower2Up</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a1c7dba3be7f97cab39af63a28e88f77a</anchor>
      <arglist>(T k)</arglist>
    </member>
    <member kind="function">
      <type>unsigned int</type>
      <name>iPower2UpUnrolled</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a759fe50f5ae520678c76535a7140d819</anchor>
      <arglist>(unsigned int v)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>iPower2UpUnsigned</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a3d554b0fa4192f3a24a7c5ea2cec91c5</anchor>
      <arglist>(T k)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static T</type>
      <name>offsetBuffer</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>a48c82a4213db5f5ee5c439ddafd90688</anchor>
      <arglist>(T buffer, ArraySize offset)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>permuteVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>ad04ea38c262e1ca556be30391f6e24e6</anchor>
      <arglist>(VectorType&lt; T &gt; &amp;vectorToPermute)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printIntVector</name>
      <anchorfile>namespaceparallel__utils.html</anchorfile>
      <anchor>ace1f5bf3258e46f52008ab4274415ce4</anchor>
      <arglist>(const IntVector &amp;intVector)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>parallel_utils::MemManager</name>
    <filename>structparallel__utils_1_1MemManager.html</filename>
    <templarg></templarg>
    <templarg>PT</templarg>
    <member kind="typedef">
      <type>void **</type>
      <name>device_init_type</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a5c0a0ca80e1ef8c81b3233aaca18c205</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>T *</type>
      <name>device_type</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>ac694a26cb80af56734d3ae15e3657aae</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>T *</type>
      <name>host_type</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a978a6bab90b3198cca0756a16f979e33</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>unsigned int</type>
      <name>mem_flags</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a8ab7471b27dad0817cc9771cef9e35a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>int</type>
      <name>stream_type</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a18ca3b3207de807638aab9823a849415</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>allocateDevice</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a023b5b1160ec85a6aa4184903cd08409</anchor>
      <arglist>(void **ptr, size_t size)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>allocateHost</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a68a01792ffbb2359b0304afa2ba8c129</anchor>
      <arglist>(void **ptr, size_t size, int flags)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>copyToDevice</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a60bb4ce31182fbb10e7575b7e54f9651</anchor>
      <arglist>(void *dst, void *src, size_t size, CopyType copyType, stream_type stream)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>copyToHost</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a5efcfa347123b4973acbd48b4881bcbd</anchor>
      <arglist>(void *dst, void *src, size_t size, CopyType copyType, stream_type stream)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>freeDevice</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>ac102cf1bfe1918283b95ba224f7526e1</anchor>
      <arglist>(void *ptr)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>freeHost</name>
      <anchorfile>structparallel__utils_1_1MemManager.html</anchorfile>
      <anchor>a482bf61bc72ec137d30cabaaf35d20d8</anchor>
      <arglist>(void *ptr)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_utils::ParallelArray</name>
    <filename>classparallel__utils_1_1ParallelArray.html</filename>
    <templarg>Type</templarg>
    <templarg>RType</templarg>
    <templarg>PType</templarg>
    <member kind="function">
      <type>RType</type>
      <name>getBuffer</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a84433f339b8ab8e92bc3fadf092aa44e</anchor>
      <arglist>(ArraySize offset)</arglist>
    </member>
    <member kind="function">
      <type>RType</type>
      <name>getBuffer</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a2655cf98c79f0ee683e116a2a08c6d6d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getByteSize</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>ad39665dbf59937dff8d31afa61a38e92</anchor>
      <arglist>(ArraySize arraySize) const </arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getByteSize</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a5161d7ae05c11e215eae21ffcf06bf27</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>MemFlags</type>
      <name>getFlags</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a02395db0eb1a1eeaff7d61d6032a3c85</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getInternalByteSize</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>aa04ebf61079a26b130466fcd0fbe1153</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getInternalSize</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a983627efa8dda9431115cd3fa83422ba</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getSize</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a757bbcb49fc2e3d2b1caac80a2ec363d</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>ArrayType</type>
      <name>getType</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a7c7ee173e2506426861da5351268e50c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isDeviceArray</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a0e91684d20fef5e6826ab5a407d6e15d</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isHostArray</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>aa4816994a560084f40dba8adeebdce25</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ParallelArray</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a30ed7cd6242e273aedc0d37b28cb13aa</anchor>
      <arglist>(ArrayType type=ArrayTypes::DEVICE_ARRAY, ArraySize size=0, MemFlags flags=0)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>print</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>adae910e410ea34a64ea2a26764687569</anchor>
      <arglist>(const char *s, int stride=1) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>ac70eb4994c7931ec65b5ba42bb26ff15</anchor>
      <arglist>(const double4 &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>ae2253a1f35c59f840a666b9fb7e6a9d1</anchor>
      <arglist>(const double3 &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a7b561f400513a65047d0a8528e5c7285</anchor>
      <arglist>(const double &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a53c11c18f1cc8a1022e33ba565807cd3</anchor>
      <arglist>(const float4 &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a1a16c3215b446efba0853fddcd996e41</anchor>
      <arglist>(const float3 &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a1e9394c8d6ab6a3f6e8dd3cf807c5009</anchor>
      <arglist>(const float &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a8dd54dbc2e89aafaad2c7fb13cdbec63</anchor>
      <arglist>(const int4 &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printVal</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a22de5f89df335bb99cfcb9324b81f900</anchor>
      <arglist>(const int &amp;a) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setFlags</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a3c528f786c97fe42c8232388db0d7613</anchor>
      <arglist>(MemFlags flags)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setSize</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a5594a7025199400a7d5634fca62cc87b</anchor>
      <arglist>(ArraySize size)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ParallelArray</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a18fd5ffedd8a51484ccb6cf4f239e241</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>dealloc</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>ac7aa95d55436f7ea1778d078c7488c6b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>realloc</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>ae5cfe87e1147992e3be49af0ef5f63a7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>PMemManager::mem_flags</type>
      <name>MemFlags</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a44440b449360c9fcbc8135e30c35753a</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>MemManager&lt; Type, PType &gt;</type>
      <name>PMemManager</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a5ee63e1c1cba7bb764d2db1940220842</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>RType</type>
      <name>buffer_</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a5bc972ae2d9c405e8e49109ab8fc28d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>MemFlags</type>
      <name>flags_</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a40a44e5d9d066e4b65c968ef9849e3d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ArraySize</type>
      <name>internalSize_</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>adb7faf491f38aebff1c7280874e85c39</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ArraySize</type>
      <name>size_</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a1b6907e08f1a58f6f48d977436fd480c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ArrayType</type>
      <name>type_</name>
      <anchorfile>classparallel__utils_1_1ParallelArray.html</anchorfile>
      <anchor>a9ef7e5186e1d6feb420d3c774ec101a1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>parallel_utils::ParallelHDArray</name>
    <filename>classparallel__utils_1_1ParallelHDArray.html</filename>
    <templarg></templarg>
    <templarg>PType</templarg>
    <member kind="function">
      <type>ArraySize</type>
      <name>getByteSize</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>ad35ff25b7c7cec851ef3447978e26571</anchor>
      <arglist>(ArraySize arraySize) const </arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getByteSize</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>ab2ad20423f3fdd7d907f957f09276833</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>DType</type>
      <name>getDeviceBuffer</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a1cef2b15a784b5e97b371e3ac0b48626</anchor>
      <arglist>(ArraySize offset)</arglist>
    </member>
    <member kind="function">
      <type>DType</type>
      <name>getDeviceBuffer</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>ae69b170cdef7ba73b34114dfe9a9c699</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>MemFlags</type>
      <name>getFlags</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a313d210557821e86469d5b982c73cd82</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>HType</type>
      <name>getHostBuffer</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a1478bfe1930dae8b0fc211e8b77c71c6</anchor>
      <arglist>(ArraySize offset)</arglist>
    </member>
    <member kind="function">
      <type>HType</type>
      <name>getHostBuffer</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a11635498187c7c619118de23bb5bc818</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>ArraySize</type>
      <name>getSize</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a1b90ffb1a64fe412529c86d9ec0aa250</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ParallelHDArray</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a094786f50328c2637685485dd15b6961</anchor>
      <arglist>(ArraySize size=0, MemFlags flags=0, SType stream=0)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>print</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>ac4c7e494f4bac2450d09e6cd611fd1da</anchor>
      <arglist>(const char *s, int stride=1) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setFlags</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a235d111f59b207c468eaf0a619b2e0eb</anchor>
      <arglist>(MemFlags flags)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setSize</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>ac4d9ed81cc9cb9c9fa2c363487e200ac</anchor>
      <arglist>(ArraySize size)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>syncToDevice</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a9294a51bf191c4102d123e61c919add3</anchor>
      <arglist>(CopyType copyType=CopyTypes::COPY_DEFAULT)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>syncToDevice</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a7b9676752681299db02f5f80e240f36b</anchor>
      <arglist>(ArraySize offset, ArraySize length, CopyType copyType=CopyTypes::COPY_DEFAULT)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>syncToHost</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>abf2e7d87b14a81b44af3a8171596682f</anchor>
      <arglist>(CopyType copyType=CopyTypes::COPY_DEFAULT)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>syncToHost</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a43b48b91b0fc52d12b20fbbee85a7192</anchor>
      <arglist>(ArraySize offset, ArraySize length, CopyType copyType=CopyTypes::COPY_DEFAULT)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ParallelHDArray</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a640fd3b0728044580c3f7bed84e0b7a3</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>PMemManager::device_type</type>
      <name>DType</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>ad155ec245f4ca66c28eb15ee73570f0c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>PMemManager::host_type</type>
      <name>HType</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a0d6744e66996e15ddec3b8053255a586</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>PMemManager::mem_flags</type>
      <name>MemFlags</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>aabb259ebff03da1c9619a58ec19ea5fe</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>MemManager&lt; Type, PType &gt;</type>
      <name>PMemManager</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>abb97d0fa899804214a6ae228430e610e</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>PMemManager::stream_type</type>
      <name>SType</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a08a6ea31e2019741a86003b4976c11e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ParallelArray&lt; Type, DType, PType &gt;</type>
      <name>deviceArray_</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a421cf8350481e3e620d8911a18dab776</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ParallelArray&lt; Type, HType, PType &gt;</type>
      <name>hostArray_</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>a13d5312ae2e557c1fae2d48229633efd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>SType</type>
      <name>stream_</name>
      <anchorfile>classparallel__utils_1_1ParallelHDArray.html</anchorfile>
      <anchor>aaac47d181325fe77ec1eb24f1cc3a0bf</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_utils::ArrayTypes</name>
    <filename>namespaceparallel__utils_1_1ArrayTypes.html</filename>
    <member kind="enumeration">
      <name>ArrayType</name>
      <anchorfile>namespaceparallel__utils_1_1ArrayTypes.html</anchorfile>
      <anchor>ac724e8e14446be401b4e52204446f548</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>HOST_ARRAY</name>
      <anchorfile>namespaceparallel__utils_1_1ArrayTypes.html</anchorfile>
      <anchor>ac724e8e14446be401b4e52204446f548a2363c8f695bdfeae6947e261f95bf501</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEVICE_ARRAY</name>
      <anchorfile>namespaceparallel__utils_1_1ArrayTypes.html</anchorfile>
      <anchor>ac724e8e14446be401b4e52204446f548ac59368c60fd74b2d7efb12715a679d90</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>parallel_utils::CopyTypes</name>
    <filename>namespaceparallel__utils_1_1CopyTypes.html</filename>
    <member kind="enumeration">
      <name>CopyType</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>COPY_SYNC</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813acc8770efbedf508f5e7073b25108f4f8</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>COPY_ASYNC</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813a01903e32b4f3ff9ec04a6c07cb862486</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>COPY_DEFAULT</name>
      <anchorfile>namespaceparallel__utils_1_1CopyTypes.html</anchorfile>
      <anchor>a025c8f42427a8404807561302b46d813a359c1aeecc8aae63d031292000e2baf8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>ParallelOptions</name>
    <filename>namespaceParallelOptions.html</filename>
    <member kind="enumeration">
      <name>ParallelOption</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MAXBATCHES</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a6c64db685592acbbfa78cc571ad774ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MAXBODYREPETITION</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a00c6c750ed4f5a7eab47a7f0fe87bf6a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BSIZE</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19ad16a95a6b682ca75b7f4c7457aa2d4be</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MBSIZE</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19ad4e55a2559e806d34489e33dac049fcd</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MAXTHREADS</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a88b1df893ad48c95ec95097367edc65e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>SHAREDMEMORYSIZE</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a7f3c6cee777048df70dcdb704cd34226</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MEMALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a54b77cbdd0fcfcf76f195cc1a5931f8a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULTALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a4d3c2275b381abf7da54bc93470a2312</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>FLOATALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a9487ea0c91999bbe70e48eb83c0eccc6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DOUBLEALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19a0d1985e73f38943dc13d9269a8f67453</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFAULTSCALARALIGN</name>
      <anchorfile>namespaceParallelOptions.html</anchorfile>
      <anchor>a0712bc432c554a5b45eb9667f3625e19ad9f8fa982d892c365b6cb6c8665e635d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>ParallelTypes</name>
    <filename>namespaceParallelTypes.html</filename>
    <member kind="enumeration">
      <name>ParallelType</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>CUDA</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962eab3e0ec2d7abf7f3432bc5b2bc34c8cce</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OpenCL</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962eae10b62668f03267ff2cce08e76342591</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OpenMP</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962eaa3faf36d31046c76aabce3f3c5083d12</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>None</name>
      <anchorfile>namespaceParallelTypes.html</anchorfile>
      <anchor>a82bbd4a3b14da4cd91ad2ad49044962ea10694bd4f1d564835113b3081563d9da</anchor>
      <arglist></arglist>
    </member>
  </compound>
</tagfile>
