Blender V5.0
array_nd.h File Reference
#include <cassert>
#include <cstdio>
#include <cstring>
#include "libmv/image/tuple.h"

Go to the source code of this file.

Classes

class  libmv::BaseArray
class  libmv::ArrayND< T, N >
 A multidimensional array class. More...
class  libmv::Array3D< T >
 3D array (row, column, channel). More...

Namespaces

namespace  libmv

Typedefs

typedef Array3D< unsigned char > libmv::Array3Du
typedef Array3D< unsigned int > libmv::Array3Dui
typedef Array3D< int > libmv::Array3Di
typedef Array3D< floatlibmv::Array3Df
typedef Array3D< short > libmv::Array3Ds

Functions

void libmv::SplitChannels (const Array3Df &input, Array3Df *channel0, Array3Df *channel1, Array3Df *channel2)
void libmv::PrintArray (const Array3Df &array)
void libmv::FloatArrayToScaledByteArray (const Array3Df &float_array, Array3Du *byte_array, bool automatic_range_detection)
void libmv::ByteArrayToScaledFloatArray (const Array3Du &byte_array, Array3Df *float_array)
 Convert a byte array into a float array by dividing values by 255.
template<typename AArrayType, typename BArrayType, typename CArrayType>
void libmv::MultiplyElements (const AArrayType &a, const BArrayType &b, CArrayType *c)
template<typename TA, typename TB, typename TC>
void libmv::MultiplyElements (const ArrayND< TA, 3 > &a, const ArrayND< TB, 3 > &b, ArrayND< TC, 3 > *c)
template<typename TA, typename TB, typename TC>
void libmv::MultiplyElements (const Array3D< TA > &a, const Array3D< TB > &b, Array3D< TC > *c)