#include "isaac_macros.hpp"
#include "isaac_fusion_extension.hpp"
#include "isaac_functors.hpp"
#include <boost/mpl/at.hpp>
#include <boost/mpl/vector.hpp>
#include <boost/mpl/back.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/mpl/push_back.hpp>
#include <boost/fusion/include/push_back.hpp>
#include <boost/mpl/size.hpp>
#include <float.h>
Go to the source code of this file.
Namespaces | |
isaac | |
Macros | |
#define | ISAAC_SUB_CALL(Z, I, U) |
#define | ISAAC_LEFT_DEF(Z, I, U) mpl::at_c< TFunctorVector, ISAAC_MAX_FUNCTORS - I - 1 >::type::call( |
#define | ISAAC_RIGHT_DEF(Z, I, U) , isaac_parameter_d[ src_id * ISAAC_MAX_FUNCTORS + I ] ) |
#define | ISAAC_LEFT BOOST_PP_REPEAT( ISAAC_MAX_FUNCTORS, ISAAC_LEFT_DEF, ~) |
#define | ISAAC_RIGHT BOOST_PP_REPEAT( ISAAC_MAX_FUNCTORS, ISAAC_RIGHT_DEF, ~) |
#define | ISAAC_KERNEL_START |
#define | ISAAC_KERNEL_END |
Typedefs | |
typedef isaac_float(* | isaac::isaac_functor_chain_pointer_4) (isaac_float_dim< 4 >, isaac_int) |
typedef isaac_float(* | isaac::isaac_functor_chain_pointer_3) (isaac_float_dim< 3 >, isaac_int) |
typedef isaac_float(* | isaac::isaac_functor_chain_pointer_2) (isaac_float_dim< 2 >, isaac_int) |
typedef isaac_float(* | isaac::isaac_functor_chain_pointer_1) (isaac_float_dim< 1 >, isaac_int) |
typedef isaac_float(* | isaac::isaac_functor_chain_pointer_N) (void *, isaac_int) |
Functions | |
template<typename TFunctorVector , int TFeatureDim> | |
ISAAC_DEVICE isaac_float | isaac::applyFunctorChain (isaac_float_dim< TFeatureDim > const value, isaac_int const src_id) |
__global__ void | isaac::fillFunctorChainPointerKernel (isaac_functor_chain_pointer_N *const functor_chain_d) |
template<isaac_int TInterpolation, typename NR , typename TSource , typename TPos , typename TPointerArray , typename TLocalSize , typename TScale > | |
ISAAC_HOST_DEVICE_INLINE isaac_float | isaac::get_value (const TSource &source, const TPos &pos, const TPointerArray &pointerArray, const TLocalSize &local_size, const TScale &scale) |
template<typename TLocalSize > | |
ISAAC_HOST_DEVICE_INLINE void | isaac::check_coord (isaac_float3 &coord, const TLocalSize local_size) |
template<typename TSimDim , typename TSourceList , typename TTransferArray , typename TSourceWeight , typename TPointerArray , typename TFilter , size_t Ttransfer_size, isaac_int TInterpolation, isaac_int TIsoSurface, typename TScale > | |
__global__ void | isaac::isaacRenderKernel (uint32_t *const pixels, const isaac_size2 framebuffer_size, const isaac_uint2 framebuffer_start, const TSourceList sources, isaac_float step, const isaac_float4 background_color, const TTransferArray transferArray, const TSourceWeight sourceWeight, const TPointerArray pointerArray, const TScale scale, const clipping_struct input_clipping) |
template<int count, typename TDest > | |
__global__ void | isaac::updateFunctorChainPointerKernel (isaac_functor_chain_pointer_N *const functor_chain_choose_d, isaac_functor_chain_pointer_N const *const functor_chain_d, TDest dest) |
template<typename TSource > | |
__global__ void | isaac::updateBufferKernel (const TSource source, void *const pointer, const isaac_int3 local_size) |
template<typename TSource > | |
__global__ void | isaac::minMaxKernel (const TSource source, const int nr, minmax_struct *const result, const isaac_int3 local_size, void const *const pointer) |
Variables | |
ISAAC_CONSTANT isaac_float | isaac::isaac_inverse_d [16] |
ISAAC_CONSTANT isaac_size_struct< 3 > | isaac::isaac_size_d [1] |
ISAAC_CONSTANT isaac_float4 | isaac::isaac_parameter_d [ISAAC_MAX_SOURCES *ISAAC_MAX_FUNCTORS] |
ISAAC_CONSTANT isaac_functor_chain_pointer_N | isaac::isaac_function_chain_d [ISAAC_MAX_SOURCES] |
#define ISAAC_KERNEL_END |
#define ISAAC_KERNEL_START |
#define ISAAC_LEFT BOOST_PP_REPEAT( ISAAC_MAX_FUNCTORS, ISAAC_LEFT_DEF, ~) |
#define ISAAC_LEFT_DEF | ( | Z, | |
I, | |||
U | |||
) | mpl::at_c< TFunctorVector, ISAAC_MAX_FUNCTORS - I - 1 >::type::call( |
#define ISAAC_RIGHT BOOST_PP_REPEAT( ISAAC_MAX_FUNCTORS, ISAAC_RIGHT_DEF, ~) |
#define ISAAC_RIGHT_DEF | ( | Z, | |
I, | |||
U | |||
) | , isaac_parameter_d[ src_id * ISAAC_MAX_FUNCTORS + I ] ) |
#define ISAAC_SUB_CALL | ( | Z, | |
I, | |||
U | |||
) |