HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_VoxelArray.h File Reference
#include "UT_API.h"
#include "UT_BoundingBox.h"
#include "UT_Vector2.h"
#include "UT_Vector3.h"
#include "UT_Vector4.h"
#include "UT_ValArray.h"
#include "UT_Array.h"
#include "UT_FilterType.h"
#include "UT_COW.h"
#include "UT_ThreadedAlgorithm.h"
#include "UT_Interrupt.h"
#include <SYS/SYS_Align.h>
#include <SYS/SYS_Floor.h>
#include <SYS/SYS_Inline.h>
#include <SYS/SYS_Math.h>
#include <SYS/SYS_StaticAssert.h>
#include <SYS/SYS_Types.h>
#include "UT_VoxelArray.C"
+ Include dependency graph for UT_VoxelArray.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UT_VoxelTile< T >
 
class  UT_VoxelArray< T >
 
class  UT_VoxelProbe< T, DoRead, DoWrite, TestForWrite >
 
class  UT_VoxelProbeCube< T >
 
class  UT_VoxelProbeFace< T >
 
struct  UT_VoxelArrayTileDataDescr
 
class  UT_VoxelCompressOptions
 
class  UT_VoxelTileCompress< T >
 
class  UT_VoxelTile< T >
 
class  UT_VoxelArray< T >
 
class  UT_VoxelMipMap< T >
 
class  UT_VoxelArrayIterator< T >
 
class  UT_VoxelTileIterator< T >
 
class  UT_VoxelProbe< T, DoRead, DoWrite, TestForWrite >
 
class  UT_VoxelVectorProbe< T, DoRead, DoWrite, TestForWrites >
 
class  UT_VoxelProbeCube< T >
 
class  UT_VoxelProbeConstant< T >
 
class  UT_VoxelProbeAverage< T, XStep, YStep, ZStep >
 
class  UT_VoxelProbeFace< T >
 

Macros

#define UT_VOXEL_ALLOC(x)   SYSamalloc((x), 128)
 
#define UT_VOXEL_FREE(x)   SYSafree(x)
 
#define DEFINE_STD_FUNC(TYPE)
 

Typedefs

typedef UT_VoxelArray< fpreal32UT_VoxelArrayF
 
typedef UT_VoxelArray< int64UT_VoxelArrayI
 
typedef UT_VoxelArray< UT_Vector2UT_VoxelArrayV2
 
typedef UT_VoxelArray< UT_Vector3UT_VoxelArrayV3
 
typedef UT_VoxelArray< UT_Vector4UT_VoxelArrayV4
 
typedef UT_VoxelMipMap< fpreal32UT_VoxelMipMapF
 
typedef UT_VoxelArrayIterator
< fpreal32
UT_VoxelArrayIteratorF
 
typedef UT_VoxelArrayIterator
< int64
UT_VoxelArrayIteratorI
 
typedef UT_VoxelTileIterator
< fpreal32
UT_VoxelTileIteratorF
 
typedef UT_VoxelTileIterator
< int64
UT_VoxelTileIteratorI
 
typedef UT_VoxelArrayIterator
< UT_Vector2
UT_VoxelArrayIteratorV2
 
typedef UT_VoxelTileIterator
< UT_Vector2
UT_VoxelTileIteratorV2
 
typedef UT_VoxelArrayIterator
< UT_Vector3
UT_VoxelArrayIteratorV3
 
typedef UT_VoxelTileIterator
< UT_Vector3
UT_VoxelTileIteratorV3
 
typedef UT_VoxelArrayIterator
< UT_Vector4
UT_VoxelArrayIteratorV4
 
typedef UT_VoxelTileIterator
< UT_Vector4
UT_VoxelTileIteratorV4
 
typedef UT_VoxelProbe
< fpreal32, true, false, false > 
UT_VoxelProbeF
 
typedef UT_VoxelVectorProbe
< fpreal32, true, false, false > 
UT_VoxelVectorProbeF
 
typedef UT_VoxelProbe
< UT_Vector2, true, false,
false > 
UT_VoxelProbeV2
 
typedef UT_VoxelProbe
< UT_Vector3, true, false,
false > 
UT_VoxelProbeV3
 
typedef UT_VoxelProbe
< UT_Vector4, true, false,
false > 
UT_VoxelProbeV4
 
typedef UT_VoxelProbe
< fpreal32, false, true, false > 
UT_VoxelWOProbeF
 
typedef UT_VoxelVectorProbe
< fpreal32, false, true, false > 
UT_VoxelVectorWOProbeF
 
typedef UT_VoxelProbe
< UT_Vector2, false, true,
false > 
UT_VoxelWOProbeV2
 
typedef UT_VoxelProbe
< UT_Vector3, false, true,
false > 
UT_VoxelWOProbeV3
 
typedef UT_VoxelProbe
< UT_Vector4, false, true,
false > 
UT_VoxelWOProbeV4
 
typedef UT_VoxelProbe
< fpreal32, true, true, false > 
UT_VoxelRWProbeF
 
typedef UT_VoxelVectorProbe
< fpreal32, true, true, false > 
UT_VoxelVectorRWProbeF
 
typedef UT_VoxelProbe
< UT_Vector2, true, true,
false > 
UT_VoxelRWProbeV2
 
typedef UT_VoxelProbe
< UT_Vector3, true, true,
false > 
UT_VoxelRWProbeV3
 
typedef UT_VoxelProbe
< UT_Vector4, true, true,
false > 
UT_VoxelRWProbeV4
 
typedef UT_VoxelProbe
< fpreal32, true, true, true > 
UT_VoxelRWTProbeF
 
typedef UT_VoxelVectorProbe
< fpreal32, true, true, true > 
UT_VoxelVectorRWTProbeF
 
typedef UT_VoxelProbe
< UT_Vector2, true, true, true > 
UT_VoxelRWTProbeV2
 
typedef UT_VoxelProbe
< UT_Vector3, true, true, true > 
UT_VoxelRWTProbeV3
 
typedef UT_VoxelProbe
< UT_Vector4, true, true, true > 
UT_VoxelRWTProbeV4
 
typedef UT_VoxelProbeCube
< fpreal32
UT_VoxelROProbeCubeF
 
template<typename T >
using UT_VoxelArrayHandle = UT_COWHandle< UT_VoxelArray< T >>
 
template<typename T >
using UT_VoxelArrayReadHandle = UT_COWReadHandle< UT_VoxelArray< T >>
 
template<typename T >
using UT_VoxelArrayWriteHandle = UT_COWWriteHandle< UT_VoxelArray< T >>
 
using UT_VoxelArrayHandleI = UT_VoxelArrayHandle< int64 >
 
using UT_VoxelArrayReadHandleI = UT_VoxelArrayReadHandle< int64 >
 
using UT_VoxelArrayWriteHandleI = UT_VoxelArrayWriteHandle< int64 >
 
using UT_VoxelArrayHandleF = UT_VoxelArrayHandle< fpreal32 >
 
using UT_VoxelArrayReadHandleF = UT_VoxelArrayReadHandle< fpreal32 >
 
using UT_VoxelArrayWriteHandleF = UT_VoxelArrayWriteHandle< fpreal32 >
 
using UT_VoxelArrayHandleV2 = UT_VoxelArrayHandle< UT_Vector2 >
 
using UT_VoxelArrayReadHandleV2 = UT_VoxelArrayReadHandle< UT_Vector2 >
 
using UT_VoxelArrayWriteHandleV2 = UT_VoxelArrayWriteHandle< UT_Vector2 >
 
using UT_VoxelArrayHandleV3 = UT_VoxelArrayHandle< UT_Vector3 >
 
using UT_VoxelArrayReadHandleV3 = UT_VoxelArrayReadHandle< UT_Vector3 >
 
using UT_VoxelArrayWriteHandleV3 = UT_VoxelArrayWriteHandle< UT_Vector3 >
 
using UT_VoxelArrayHandleV4 = UT_VoxelArrayHandle< UT_Vector4 >
 
using UT_VoxelArrayReadHandleV4 = UT_VoxelArrayReadHandle< UT_Vector4 >
 
using UT_VoxelArrayWriteHandleV4 = UT_VoxelArrayWriteHandle< UT_Vector4 >
 

Enumerations

enum  UT_VoxelBorderType {
  UT_VOXELBORDER_CONSTANT, UT_VOXELBORDER_REPEAT, UT_VOXELBORDER_STREAK, UT_VOXELBORDER_EXTRAP,
  UT_VOXELBORDER_MIRROR
}
 

Functions

UT_API UT_ValArray
< UT_VoxelTileCompress
< fpreal16 > * > & 
UTvoxelTileGetCompressionEngines (fpreal16 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress
< fpreal32 > * > & 
UTvoxelTileGetCompressionEngines (fpreal32 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress
< fpreal64 > * > & 
UTvoxelTileGetCompressionEngines (fpreal64 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress< uint8 > * > & 
UTvoxelTileGetCompressionEngines (uint8 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress< int8 > * > & 
UTvoxelTileGetCompressionEngines (int8 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress< int16 > * > & 
UTvoxelTileGetCompressionEngines (int16 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress< int32 > * > & 
UTvoxelTileGetCompressionEngines (int32 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress< int64 > * > & 
UTvoxelTileGetCompressionEngines (int64 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress
< UT_Vector2 > * > & 
UTvoxelTileGetCompressionEngines (UT_Vector2 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress
< UT_Vector3 > * > & 
UTvoxelTileGetCompressionEngines (UT_Vector3 *dummy)
 
UT_API UT_ValArray
< UT_VoxelTileCompress
< UT_Vector4 > * > & 
UTvoxelTileGetCompressionEngines (UT_Vector4 *dummy)
 
void UTvoxelTileExpandMinMax (UT_Vector2 v, UT_Vector2 &min, UT_Vector2 &max)
 
void UTvoxelTileExpandMinMax (UT_Vector3 v, UT_Vector3 &min, UT_Vector3 &max)
 
void UTvoxelTileExpandMinMax (UT_Vector4 v, UT_Vector4 &min, UT_Vector4 &max)
 
fpreal UTvoxelTileDist (const UT_Vector2 &a, const UT_Vector2 &b)
 
fpreal UTvoxelTileDist (const UT_Vector3 &a, const UT_Vector3 &b)
 
fpreal UTvoxelTileDist (const UT_Vector4 &a, const UT_Vector4 &b)
 

Macro Definition Documentation

#define DEFINE_STD_FUNC (   TYPE)
Value:
inline void \
UTvoxelTileExpandMinMax(TYPE v, TYPE &min, TYPE &max) \
{ \
if (v < min) \
min = v; \
else if (v > max) \
max = v; \
} \
\
inline fpreal \
UTvoxelTileDist(TYPE a, TYPE b) \
{ \
return (fpreal) SYSabs(a - b); \
}
const GLdouble * v
Definition: glcorearb.h:837
GLboolean GLboolean GLboolean GLboolean a
Definition: glcorearb.h:1222
#define SYSabs(a)
Definition: SYS_Math.h:1572
ImageBuf OIIO_API min(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
fpreal UTvoxelTileDist(const UT_Vector2 &a, const UT_Vector2 &b)
void UTvoxelTileExpandMinMax(UT_Vector2 v, UT_Vector2 &min, UT_Vector2 &max)
GLboolean GLboolean GLboolean b
Definition: glcorearb.h:1222
fpreal64 fpreal
Definition: SYS_Types.h:277
ImageBuf OIIO_API max(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
if(num_boxed_items<=0)
Definition: UT_RTreeImpl.h:697

Definition at line 196 of file UT_VoxelArray.h.

#define UT_VOXEL_ALLOC (   x)    SYSamalloc((x), 128)

Definition at line 52 of file UT_VoxelArray.h.

#define UT_VOXEL_FREE (   x)    SYSafree(x)

Definition at line 53 of file UT_VoxelArray.h.

Typedef Documentation

Definition at line 2640 of file UT_VoxelArray.h.

template<typename T >
using UT_VoxelArrayHandle = UT_COWHandle<UT_VoxelArray<T>>

Definition at line 2685 of file UT_VoxelArray.h.

Definition at line 2689 of file UT_VoxelArray.h.

Definition at line 2641 of file UT_VoxelArray.h.

template<typename T >
using UT_VoxelArrayReadHandle = UT_COWReadHandle<UT_VoxelArray<T>>

Definition at line 2686 of file UT_VoxelArray.h.

Definition at line 2642 of file UT_VoxelArray.h.

Definition at line 2643 of file UT_VoxelArray.h.

Definition at line 2644 of file UT_VoxelArray.h.

template<typename T >
using UT_VoxelArrayWriteHandle = UT_COWWriteHandle<UT_VoxelArray<T>>

Definition at line 2687 of file UT_VoxelArray.h.

Definition at line 2646 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<fpreal32, true, false, false> UT_VoxelProbeF

Definition at line 2658 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector2, true, false, false> UT_VoxelProbeV2

Definition at line 2660 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector3, true, false, false> UT_VoxelProbeV3

Definition at line 2661 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector4, true, false, false> UT_VoxelProbeV4

Definition at line 2662 of file UT_VoxelArray.h.

Definition at line 2683 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<fpreal32, true, true, false> UT_VoxelRWProbeF

Definition at line 2670 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector2, true, true, false> UT_VoxelRWProbeV2

Definition at line 2672 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector3, true, true, false> UT_VoxelRWProbeV3

Definition at line 2673 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector4, true, true, false> UT_VoxelRWProbeV4

Definition at line 2674 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<fpreal32, true, true, true> UT_VoxelRWTProbeF

Definition at line 2676 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector2, true, true, true> UT_VoxelRWTProbeV2

Definition at line 2678 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector3, true, true, true> UT_VoxelRWTProbeV3

Definition at line 2679 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector4, true, true, true> UT_VoxelRWTProbeV4

Definition at line 2680 of file UT_VoxelArray.h.

typedef UT_VoxelVectorProbe<fpreal32, true, false, false> UT_VoxelVectorProbeF

Definition at line 2659 of file UT_VoxelArray.h.

Definition at line 2671 of file UT_VoxelArray.h.

Definition at line 2677 of file UT_VoxelArray.h.

typedef UT_VoxelVectorProbe<fpreal32, false, true, false> UT_VoxelVectorWOProbeF

Definition at line 2665 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<fpreal32, false, true, false> UT_VoxelWOProbeF

Definition at line 2664 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector2, false, true, false> UT_VoxelWOProbeV2

Definition at line 2666 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector3, false, true, false> UT_VoxelWOProbeV3

Definition at line 2667 of file UT_VoxelArray.h.

typedef UT_VoxelProbe<UT_Vector4, false, true, false> UT_VoxelWOProbeV4

Definition at line 2668 of file UT_VoxelArray.h.

Enumeration Type Documentation

Behaviour of out of bound reads.

Enumerator
UT_VOXELBORDER_CONSTANT 
UT_VOXELBORDER_REPEAT 
UT_VOXELBORDER_STREAK 
UT_VOXELBORDER_EXTRAP 
UT_VOXELBORDER_MIRROR 

Definition at line 70 of file UT_VoxelArray.h.

Function Documentation

fpreal UTvoxelTileDist ( const UT_Vector2 a,
const UT_Vector2 b 
)
inline

Definition at line 263 of file UT_VoxelArray.h.

fpreal UTvoxelTileDist ( const UT_Vector3 a,
const UT_Vector3 b 
)
inline

Definition at line 269 of file UT_VoxelArray.h.

fpreal UTvoxelTileDist ( const UT_Vector4 a,
const UT_Vector4 b 
)
inline

Definition at line 276 of file UT_VoxelArray.h.

void UTvoxelTileExpandMinMax ( UT_Vector2  v,
UT_Vector2 min,
UT_Vector2 max 
)
inline

Definition at line 224 of file UT_VoxelArray.h.

void UTvoxelTileExpandMinMax ( UT_Vector3  v,
UT_Vector3 min,
UT_Vector3 max 
)
inline

Definition at line 234 of file UT_VoxelArray.h.

void UTvoxelTileExpandMinMax ( UT_Vector4  v,
UT_Vector4 min,
UT_Vector4 max 
)
inline

Definition at line 247 of file UT_VoxelArray.h.

UT_API UT_ValArray<UT_VoxelTileCompress<fpreal16> *>& UTvoxelTileGetCompressionEngines ( fpreal16 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<fpreal32> *>& UTvoxelTileGetCompressionEngines ( fpreal32 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<fpreal64> *>& UTvoxelTileGetCompressionEngines ( fpreal64 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<uint8> *>& UTvoxelTileGetCompressionEngines ( uint8 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<int8> *>& UTvoxelTileGetCompressionEngines ( int8 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<int16> *>& UTvoxelTileGetCompressionEngines ( int16 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<int32> *>& UTvoxelTileGetCompressionEngines ( int32 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<int64> *>& UTvoxelTileGetCompressionEngines ( int64 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<UT_Vector2> *>& UTvoxelTileGetCompressionEngines ( UT_Vector2 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<UT_Vector3> *>& UTvoxelTileGetCompressionEngines ( UT_Vector3 dummy)
UT_API UT_ValArray<UT_VoxelTileCompress<UT_Vector4> *>& UTvoxelTileGetCompressionEngines ( UT_Vector4 dummy)