VTK-m  2.1
Classes | Namespaces | Macros | Functions
ArrayRangeComputeTemplate.h File Reference
#include <vtkm/cont/Algorithm.h>
#include <vtkm/cont/ArrayHandleCast.h>
#include <vtkm/cont/ArrayHandleDecorator.h>
#include <vtkm/cont/ArrayHandleTransform.h>
#include <vtkm/cont/internal/ArrayRangeComputeUtils.h>
#include <vtkm/BinaryOperators.h>
#include <vtkm/Deprecated.h>
#include <vtkm/VecFlat.h>
#include <vtkm/VecTraits.h>
#include <vtkm/VectorAnalysis.h>
#include <vtkm/internal/Instantiations.h>

Go to the source code of this file.

Classes

struct  vtkm::cont::StorageTagCartesianProduct< StorageTag1, StorageTag2, StorageTag3 >
 

Namespaces

 vtkm
 Groups connected points that have the same field value.
 
 vtkm::cont
 VTK-m Control Environment.
 

Macros

#define VTK_M_ARRAY_RANGE_COMPUTE_DCLR(...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR(...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_INT_SCALARS(modifiers, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_SCALARS(modifiers, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_BOOL_SCALARS(modifiers, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_OTHER_SCALARS(modifiers, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_ALL_SCALARS(modifiers, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_INT_VECN(modifiers, N, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_VECN(modifiers, N, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_BOOL_VECN(modifiers, N, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_OTHER_VECN(modifiers, N, ...)
 
#define VTK_M_ARRAY_RANGE_COMPUTE_ALL_VECN(modifiers, N, ...)
 

Functions

template<typename ArrayHandleType >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeCompute (const ArrayHandleType &input, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 
template<typename T , typename S >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeComputeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeCompute. More...
 
template<typename T , typename S >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeComputeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, const vtkm::cont::ArrayHandle< vtkm::UInt8 > &maskArray, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeCompute. More...
 
template<typename T , typename S >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeComputeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, vtkm::cont::DeviceAdapterId device)
 Templated version of ArrayRangeCompute. More...
 
template<typename T , typename S >
vtkm::Range vtkm::cont::ArrayRangeComputeMagnitudeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeComputeMagnitude. More...
 
template<typename T , typename S >
vtkm::Range vtkm::cont::ArrayRangeComputeMagnitudeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, const vtkm::cont::ArrayHandle< vtkm::UInt8 > &maskArray, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeComputeMagnitude. More...
 
template<typename T , typename S >
vtkm::Range vtkm::cont::ArrayRangeComputeMagnitudeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, vtkm::cont::DeviceAdapterId device)
 Templated version of ArrayRangeComputeMagnitude. More...
 
template<typename T , typename S >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeComputeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeCompute. More...
 
template<typename T , typename S >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeComputeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, const vtkm::cont::ArrayHandle< vtkm::UInt8 > &maskArray, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeCompute. More...
 
template<typename T , typename S >
vtkm::cont::ArrayHandle< vtkm::Rangevtkm::cont::ArrayRangeComputeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, vtkm::cont::DeviceAdapterId device)
 Templated version of ArrayRangeCompute. More...
 
template<typename T , typename S >
vtkm::Range vtkm::cont::ArrayRangeComputeMagnitudeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeComputeMagnitude. More...
 
template<typename T , typename S >
vtkm::Range vtkm::cont::ArrayRangeComputeMagnitudeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, const vtkm::cont::ArrayHandle< vtkm::UInt8 > &maskArray, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
 Templated version of ArrayRangeComputeMagnitude. More...
 
template<typename T , typename S >
vtkm::Range vtkm::cont::ArrayRangeComputeMagnitudeTemplate (const vtkm::cont::ArrayHandle< T, S > &input, vtkm::cont::DeviceAdapterId device)
 Templated version of ArrayRangeComputeMagnitude. More...
 

Macro Definition Documentation

◆ VTK_M_ARRAY_RANGE_COMPUTE_ALL_SCALARS

#define VTK_M_ARRAY_RANGE_COMPUTE_ALL_SCALARS (   modifiers,
  ... 
)
Value:
VTK_M_ARRAY_RANGE_COMPUTE_INT_SCALARS(modifiers, __VA_ARGS__); \
VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_SCALARS(modifiers, __VA_ARGS__); \
VTK_M_ARRAY_RANGE_COMPUTE_BOOL_SCALARS(modifiers, __VA_ARGS__); \
VTK_M_ARRAY_RANGE_COMPUTE_OTHER_SCALARS(modifiers, __VA_ARGS__)

◆ VTK_M_ARRAY_RANGE_COMPUTE_ALL_VECN

#define VTK_M_ARRAY_RANGE_COMPUTE_ALL_VECN (   modifiers,
  N,
  ... 
)
Value:
VTK_M_ARRAY_RANGE_COMPUTE_INT_VECN(modifiers, N, __VA_ARGS__); \
VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_VECN(modifiers, N, __VA_ARGS__); \
VTK_M_ARRAY_RANGE_COMPUTE_BOOL_VECN(modifiers, N, __VA_ARGS__); \
VTK_M_ARRAY_RANGE_COMPUTE_OTHER_VECN(modifiers, N, __VA_ARGS__)

◆ VTK_M_ARRAY_RANGE_COMPUTE_BOOL_SCALARS

#define VTK_M_ARRAY_RANGE_COMPUTE_BOOL_SCALARS (   modifiers,
  ... 
)
Value:
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(bool, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR(bool, __VA_ARGS__)

◆ VTK_M_ARRAY_RANGE_COMPUTE_BOOL_VECN

#define VTK_M_ARRAY_RANGE_COMPUTE_BOOL_VECN (   modifiers,
  N,
  ... 
)

◆ VTK_M_ARRAY_RANGE_COMPUTE_DCLR

#define VTK_M_ARRAY_RANGE_COMPUTE_DCLR (   ...)

◆ VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_SCALARS

#define VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_SCALARS (   modifiers,
  ... 
)
Value:

◆ VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_VECN

#define VTK_M_ARRAY_RANGE_COMPUTE_FLOAT_VECN (   modifiers,
  N,
  ... 
)

◆ VTK_M_ARRAY_RANGE_COMPUTE_INT_SCALARS

#define VTK_M_ARRAY_RANGE_COMPUTE_INT_SCALARS (   modifiers,
  ... 
)
Value:
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::Int8, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::UInt8, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::Int16, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::UInt16, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::Int32, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::UInt32, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::Int64, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(vtkm::UInt64, __VA_ARGS__); \

◆ VTK_M_ARRAY_RANGE_COMPUTE_INT_VECN

#define VTK_M_ARRAY_RANGE_COMPUTE_INT_VECN (   modifiers,
  N,
  ... 
)

◆ VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR

#define VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR (   ...)

◆ VTK_M_ARRAY_RANGE_COMPUTE_OTHER_SCALARS

#define VTK_M_ARRAY_RANGE_COMPUTE_OTHER_SCALARS (   modifiers,
  ... 
)
Value:
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(char, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR(char, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(signed VTKM_UNUSED_INT_TYPE, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR(signed VTKM_UNUSED_INT_TYPE, __VA_ARGS__); \
modifiers VTK_M_ARRAY_RANGE_COMPUTE_DCLR(unsigned VTKM_UNUSED_INT_TYPE, __VA_ARGS__); \

◆ VTK_M_ARRAY_RANGE_COMPUTE_OTHER_VECN

#define VTK_M_ARRAY_RANGE_COMPUTE_OTHER_VECN (   modifiers,
  N,
  ... 
)
vtkm::cont::ArrayHandle< vtkm::Range >
vtkm::Int16
int16_t Int16
Base type to use for 16-bit signed integer numbers.
Definition: Types.h:173
vtkm::Int8
int8_t Int8
Base type to use for 8-bit signed integer numbers.
Definition: Types.h:165
vtkm::cont::ArrayRangeComputeMagnitudeTemplate
vtkm::Range ArrayRangeComputeMagnitudeTemplate(const vtkm::cont::ArrayHandle< T, S > &input, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
Templated version of ArrayRangeComputeMagnitude.
Definition: ArrayRangeComputeTemplate.h:326
vtkm::Int64
signed long long Int64
Base type to use for 64-bit signed integer numbers.
Definition: Types.h:204
vtkm::UInt8
uint8_t UInt8
Base type to use for 8-bit unsigned integer numbers.
Definition: Types.h:169
VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR
#define VTK_M_ARRAY_RANGE_COMPUTE_MAG_DCLR(...)
Definition: ArrayRangeComputeTemplate.h:376
vtkm::cont::ArrayRangeComputeTemplate
vtkm::cont::ArrayHandle< vtkm::Range > ArrayRangeComputeTemplate(const vtkm::cont::ArrayHandle< T, S > &input, bool computeFiniteRange=false, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny{})
Templated version of ArrayRangeCompute.
Definition: ArrayRangeComputeTemplate.h:290
VTK_M_ARRAY_RANGE_COMPUTE_INT_SCALARS
#define VTK_M_ARRAY_RANGE_COMPUTE_INT_SCALARS(modifiers,...)
Definition: ArrayRangeComputeTemplate.h:383
vtkm::cont::DeviceAdapterId
An object used to specify a device.
Definition: DeviceAdapterTag.h:58
vtkm::Vec
A short fixed-length array.
Definition: Types.h:357
vtkm::UInt32
uint32_t UInt32
Base type to use for 32-bit unsigned integer numbers.
Definition: Types.h:185
vtkm::Float32
float Float32
Base type to use for 32-bit floating-point numbers.
Definition: Types.h:157
vtkm::UInt64
unsigned long long UInt64
Base type to use for 64-bit signed integer numbers.
Definition: Types.h:207
vtkm::Int32
int32_t Int32
Base type to use for 32-bit signed integer numbers.
Definition: Types.h:181
vtkm::Float64
double Float64
Base type to use for 64-bit floating-point numbers.
Definition: Types.h:161
VTK_M_ARRAY_RANGE_COMPUTE_INT_VECN
#define VTK_M_ARRAY_RANGE_COMPUTE_INT_VECN(modifiers, N,...)
Definition: ArrayRangeComputeTemplate.h:425
VTKM_UNUSED_INT_TYPE
#define VTKM_UNUSED_INT_TYPE
Definition: Types.h:208
vtkm::UInt16
uint16_t UInt16
Base type to use for 16-bit unsigned integer numbers.
Definition: Types.h:177
VTK_M_ARRAY_RANGE_COMPUTE_DCLR
#define VTK_M_ARRAY_RANGE_COMPUTE_DCLR(...)
Definition: ArrayRangeComputeTemplate.h:369
vtkm::Range
Represent a continuous scalar range of values.
Definition: Range.h:31