neuray API Programmer's Manual

mi Namespace Reference

[Base API]

Description

Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.

Namespaces

namespace 
Namespace for the Base API. More...
namespace 
Namespace for the Bridge functionality of the neuray API. More...
namespace 
Namespace for the HTTP server of the neuray API. More...
namespace 
Namespace for the Math API. More...
namespace 
Namespace for the neuray API. More...
namespace 
Namespace for the RTMP server of the neuray API. More...

Classes

class 
This interface represents static arrays, i.e., arrays with a fixed number of elements. More...
class 
Attachables provide an alternative between a reference and another type. More...
class 
This interface represents bounding boxes. More...
class 
This interface represents bool. More...
class 
This interface represents a vector of two bool. More...
class 
This interface represents a 2 x 2 matrix of bool. More...
class 
This interface represents a 2 x 3 matrix of bool. More...
class 
This interface represents a 2 x 4 matrix of bool. More...
class 
This interface represents a vector of three bool. More...
class 
This interface represents a 3 x 2 matrix of bool. More...
class 
This interface represents a 3 x 3 matrix of bool. More...
class 
This interface represents a 3 x 4 matrix of bool. More...
class 
This interface represents a vector of four bool. More...
class 
This interface represents a 4 x 2 matrix of bool. More...
class 
This interface represents a 4 x 3 matrix of bool. More...
class 
This interface represents a 4 x 4 matrix of bool. More...
class 
This interface represents calls. More...
class 
A call declaration is used to describe call types. More...
class 
This interface represents RGBA colors. More...
class 
This interface represents RGB colors. More...
class 
This interface represents compounds, i.e., vectors, matrices, colors, spectrums, and bounding boxes. More...
class 
This interface represents const pointers. More...
class 
This interface is the base interface of all types. More...
class 
This interface represents collections. More...
class 
This interface represents simple types. More...
class 
This interface represents mi::Difference. More...
class 
This interface represents dynamic arrays, i.e., arrays with a variable number of elements. More...
class 
This interface represents enums. More...
class 
An enum declaration is used to describe enum types. More...
class 
This interface represents mi::Float32. More...
class 
This interface represents a vector of two Float32. More...
class 
This interface represents a 2 x 2 matrix of Float32. More...
class 
This interface represents a 2 x 3 matrix of Float32. More...
class 
This interface represents a 2 x 4 matrix of Float32. More...
class 
This interface represents a vector of three Float32. More...
class 
This interface represents a 3 x 2 matrix of Float32. More...
class 
This interface represents a 3 x 3 matrix of Float32. More...
class 
This interface represents a 3 x 4 matrix of Float32. More...
class 
This interface represents a vector of four Float32. More...
class 
This interface represents a 4 x 2 matrix of Float32. More...
class 
This interface represents a 4 x 3 matrix of Float32. More...
class 
This interface represents a 4 x 4 matrix of Float32. More...
class 
This interface represents mi::Float64. More...
class 
This interface represents a vector of two Float64. More...
class 
This interface represents a 2 x 2 matrix of Float64. More...
class 
This interface represents a 2 x 3 matrix of Float64. More...
class 
This interface represents a 2 x 4 matrix of Float64. More...
class 
This interface represents a vector of three Float64. More...
class 
This interface represents a 3 x 2 matrix of Float64. More...
class 
This interface represents a 3 x 3 matrix of Float64. More...
class 
This interface represents a 3 x 4 matrix of Float64. More...
class 
This interface represents a vector of four Float64. More...
class 
This interface represents a 4 x 2 matrix of Float64. More...
class 
This interface represents a 4 x 3 matrix of Float64. More...
class 
This interface represents a 4 x 4 matrix of Float64. More...
class 
This interface represents maps, i.e., a key-value based data structure. More...
class 
This interface represents simple numeric types. More...
class 
Parameter indices are used to represent special values of MDL parameters. More...
class 
This interface represents mutable pointers. More...
class 
A reference is an object that acts as a pointer to other database elements. More...
class 
This interface represents mi::Sint16. More...
class 
This interface represents mi::Sint32. More...
class 
This interface represents a vector of two Sint32. More...
class 
This interface represents a 2 x 2 matrix of Sint32. More...
class 
This interface represents a 2 x 3 matrix of Sint32. More...
class 
This interface represents a 2 x 4 matrix of Sint32. More...
class 
This interface represents a vector of three Sint32. More...
class 
This interface represents a 3 x 2 matrix of Sint32. More...
class 
This interface represents a 3 x 3 matrix of Sint32. More...
class 
This interface represents a 3 x 4 matrix of Sint32. More...
class 
This interface represents a vector of four Sint32. More...
class 
This interface represents a 4 x 2 matrix of Sint32. More...
class 
This interface represents a 4 x 3 matrix of Sint32. More...
class 
This interface represents a 4 x 4 matrix of Sint32. More...
class 
This interface represents mi::Sint64. More...
class 
This interface represents mi::Sint8. More...
class 
This interface represents mi::Size. More...
class 
This interface represents spectrums. More...
class 
A simple string class. More...
class 
This interface represents structures, i.e., a key-value based data structure. More...
class 
A structure declaration is used to describe structure types. More...
class 
Indices for temporaries are used to represent common sub-expressions in compiled MDL materials. More...
class 
This interface represents mi::Uint16. More...
class 
This interface represents mi::Uint32. More...
class 
This interface represents a vector of two Uint32. More...
class 
This interface represents a 2 x 2 matrix of Uint32. More...
class 
This interface represents a 2 x 3 matrix of Uint32. More...
class 
This interface represents a 2 x 4 matrix of Uint32. More...
class 
This interface represents a vector of three Uint32. More...
class 
This interface represents a 3 x 2 matrix of Uint32. More...
class 
This interface represents a 3 x 3 matrix of Uint32. More...
class 
This interface represents a 3 x 4 matrix of Uint32. More...
class 
This interface represents a vector of four Uint32. More...
class 
This interface represents a 4 x 2 matrix of Uint32. More...
class 
This interface represents a 4 x 3 matrix of Uint32. More...
class 
This interface represents a 4 x 4 matrix of Uint32. More...
class 
This interface represents mi::Uint64. More...
class 
This interface represents mi::Uint8. More...
class 
This interface represents UUIDs. More...
class 
This interface represents the void type. More...

Typedefs

typedef math::Bbox<Float32, 3> 
Three-dimensional bounding box. More...
typedef math::Bbox_struct<Float32, 3> 
Three-dimensional bounding box (underlying POD type). More...
typedef math::Vector< bool, 2> 
Vector of two bool. More...
typedef math::Matrix< bool, 2, 2> 
2 x 2 matrix of bool. More...
typedef math::Matrix_struct< bool, 2, 2> 
2 x 2 matrix of bool (underlying POD type). More...
typedef math::Matrix< bool, 2, 3> 
2 x 3 matrix of bool. More...
typedef math::Matrix_struct< bool, 2, 3> 
2 x 3 matrix of bool (underlying POD type). More...
typedef math::Matrix< bool, 2, 4> 
2 x 4 matrix of bool. More...
typedef math::Matrix_struct< bool, 2, 4> 
2 x 4 matrix of bool (underlying POD type). More...
typedef math::Vector_struct< bool, 2> 
Vector of two bool (underlying POD type). More...
typedef math::Vector< bool, 3> 
Vector of three bool. More...
typedef math::Matrix< bool, 3, 2> 
3 x 2 matrix of bool. More...
typedef math::Matrix_struct< bool, 3, 2> 
3 x 2 matrix of bool (underlying POD type). More...
typedef math::Matrix< bool, 3, 3> 
3 x 3 matrix of bool. More...
typedef math::Matrix_struct< bool, 3, 3> 
3 x 3 matrix of bool (underlying POD type). More...
typedef math::Matrix< bool, 3, 4> 
3 x 4 matrix of bool. More...
typedef math::Matrix_struct< bool, 3, 4> 
3 x 4 matrix of bool (underlying POD type). More...
typedef math::Vector_struct< bool, 3> 
Vector of three bool (underlying POD type). More...
typedef math::Vector< bool, 4> 
Vector of four bool. More...
typedef math::Matrix< bool, 4, 2> 
4 x 2 matrix of bool. More...
typedef math::Matrix_struct< bool, 4, 2> 
4 x 2 matrix of bool (underlying POD type). More...
typedef math::Matrix< bool, 4, 3> 
4 x 3 matrix of bool. More...
typedef math::Matrix_struct< bool, 4, 3> 
4 x 3 matrix of bool (underlying POD type). More...
typedef math::Matrix< bool, 4, 4> 
4 x 4 matrix of bool. More...
typedef math::Matrix_struct< bool, 4, 4> 
4 x 4 matrix of bool (underlying POD type). More...
typedef math::Vector_struct< bool, 4> 
Vector of four bool (underlying POD type). More...
typedef math::​Color 
RGBA color class. More...
typedef math::​Color_struct 
RGBA color class (underlying POD type). More...
typedef Sint64 
Signed integral type that is large enough to hold the difference of two pointers. More...
typedef float  
32-bit float. More...
typedef math::Vector<Float32, 2> 
Vector of two Float32. More...
typedef math::Matrix<Float32, 2, 2> 
2 x 2 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 2, 2> 
2 x 2 matrix of Float32 (underlying POD type). More...
typedef math::Matrix<Float32, 2, 3> 
2 x 3 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 2, 3> 
2 x 3 matrix of Float32 (underlying POD type). More...
typedef math::Matrix<Float32, 2, 4> 
2 x 4 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 2, 4> 
2 x 4 matrix of Float32 (underlying POD type). More...
typedef math::Vector_struct<Float32, 2> 
Vector of two Float32 (underlying POD type). More...
typedef math::Vector<Float32, 3> 
Vector of three Float32. More...
typedef math::Matrix<Float32, 3, 2> 
3 x 2 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 3, 2> 
3 x 2 matrix of Float32 (underlying POD type). More...
typedef math::Matrix<Float32, 3, 3> 
3 x 3 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 3, 3> 
3 x 3 matrix of Float32 (underlying POD type). More...
typedef math::Matrix<Float32, 3, 4> 
3 x 4 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 3, 4> 
3 x 4 matrix of Float32 (underlying POD type). More...
typedef math::Vector_struct<Float32, 3> 
Vector of three Float32 (underlying POD type). More...
typedef math::Vector<Float32, 4> 
Vector of four Float32. More...
typedef math::Matrix<Float32, 4, 2> 
4 x 2 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 4, 2> 
4 x 2 matrix of Float32 (underlying POD type). More...
typedef math::Matrix<Float32, 4, 3> 
4 x 3 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 4, 3> 
4 x 3 matrix of Float32 (underlying POD type). More...
typedef math::Matrix<Float32, 4, 4> 
4 x 4 matrix of Float32. More...
typedef math::Matrix_struct<Float32, 4, 4> 
4 x 4 matrix of Float32 (underlying POD type). More...
typedef math::Vector_struct<Float32, 4> 
Vector of four Float32 (underlying POD type). More...
typedef double  
64-bit float. More...
typedef math::Vector<Float64, 2> 
Vector of two Float64. More...
typedef math::Matrix<Float64, 2, 2> 
2 x 2 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 2, 2> 
2 x 2 matrix of Float64 (underlying POD type). More...
typedef math::Matrix<Float64, 2, 3> 
2 x 3 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 2, 3> 
2 x 3 matrix of Float64 (underlying POD type). More...
typedef math::Matrix<Float64, 2, 4> 
2 x 4 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 2, 4> 
2 x 4 matrix of Float64 (underlying POD type). More...
typedef math::Vector_struct<Float64, 2> 
Vector of two Float64 (underlying POD type). More...
typedef math::Vector<Float64, 3> 
Vector of three Float64. More...
typedef math::Matrix<Float64, 3, 2> 
3 x 2 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 3, 2> 
3 x 2 matrix of Float64 (underlying POD type). More...
typedef math::Matrix<Float64, 3, 3> 
3 x 3 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 3, 3> 
3 x 3 matrix of Float64 (underlying POD type). More...
typedef math::Matrix<Float64, 3, 4> 
3 x 4 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 3, 4> 
3 x 4 matrix of Float64 (underlying POD type). More...
typedef math::Vector_struct<Float64, 3> 
Vector of three Float64 (underlying POD type). More...
typedef math::Vector<Float64, 4> 
Vector of four Float64. More...
typedef math::Matrix<Float64, 4, 2> 
4 x 2 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 4, 2> 
4 x 2 matrix of Float64 (underlying POD type). More...
typedef math::Matrix<Float64, 4, 3> 
4 x 3 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 4, 3> 
4 x 3 matrix of Float64 (underlying POD type). More...
typedef math::Matrix<Float64, 4, 4> 
4 x 4 matrix of Float64. More...
typedef math::Matrix_struct<Float64, 4, 4> 
4 x 4 matrix of Float64 (underlying POD type). More...
typedef math::Vector_struct<Float64, 4> 
Vector of four Float64 (underlying POD type). More...
typedef signed short  
16-bit signed integer. More...
typedef signed int  
32-bit signed integer. More...
typedef math::Vector<Sint32, 2> 
Vector of two Sint32. More...
typedef math::Matrix<Sint32, 2, 2> 
2 x 2 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 2, 2> 
2 x 2 matrix of Sint32 (underlying POD type). More...
typedef math::Matrix<Sint32, 2, 3> 
2 x 3 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 2, 3> 
2 x 3 matrix of Sint32 (underlying POD type). More...
typedef math::Matrix<Sint32, 2, 4> 
2 x 4 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 2, 4> 
2 x 4 matrix of Sint32 (underlying POD type). More...
typedef math::Vector_struct<Sint32, 2> 
Vector of two Sint32 (underlying POD type). More...
typedef math::Vector<Sint32, 3> 
Vector of three Sint32. More...
typedef math::Matrix<Sint32, 3, 2> 
3 x 2 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 3, 2> 
3 x 2 matrix of Sint32 (underlying POD type). More...
typedef math::Matrix<Sint32, 3, 3> 
3 x 3 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 3, 3> 
3 x 3 matrix of Sint32 (underlying POD type). More...
typedef math::Matrix<Sint32, 3, 4> 
3 x 4 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 3, 4> 
3 x 4 matrix of Sint32 (underlying POD type). More...
typedef math::Vector_struct<Sint32, 3> 
Vector of three Sint32 (underlying POD type). More...
typedef math::Vector<Sint32, 4> 
Vector of four Sint32. More...
typedef math::Matrix<Sint32, 4, 2> 
4 x 2 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 4, 2> 
4 x 2 matrix of Sint32 (underlying POD type). More...
typedef math::Matrix<Sint32, 4, 3> 
4 x 3 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 4, 3> 
4 x 3 matrix of Sint32 (underlying POD type). More...
typedef math::Matrix<Sint32, 4, 4> 
4 x 4 matrix of Sint32. More...
typedef math::Matrix_struct<Sint32, 4, 4> 
4 x 4 matrix of Sint32 (underlying POD type). More...
typedef math::Vector_struct<Sint32, 4> 
Vector of four Sint32 (underlying POD type). More...
typedef long long  
64-bit signed integer. More...
typedef signed char  
8-bit signed integer. More...
typedef Uint64 
Unsigned integral type that is large enough to hold the size of all types. More...
typedef math::​Spectrum 
Spectrum class. More...
typedef math::​Spectrum_struct 
Spectrum class (underlying POD type). More...
typedef unsigned short  
16-bit unsigned integer. More...
typedef unsigned int  
32-bit unsigned integer. More...
typedef math::Vector<Uint32, 2> 
Vector of two Uint32. More...
typedef math::Matrix<Uint32, 2, 2> 
2 x 2 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 2, 2> 
2 x 2 matrix of Uint32 (underlying POD type). More...
typedef math::Matrix<Uint32, 2, 3> 
2 x 3 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 2, 3> 
2 x 3 matrix of Uint32 (underlying POD type). More...
typedef math::Matrix<Uint32, 2, 4> 
2 x 4 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 2, 4> 
2 x 4 matrix of Uint32 (underlying POD type). More...
typedef math::Vector_struct<Uint32, 2> 
Vector of two Uint32 (underlying POD type). More...
typedef math::Vector<Uint32, 3> 
Vector of three Uint32. More...
typedef math::Matrix<Uint32, 3, 2> 
3 x 2 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 3, 2> 
3 x 2 matrix of Uint32 (underlying POD type). More...
typedef math::Matrix<Uint32, 3, 3> 
3 x 3 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 3, 3> 
3 x 3 matrix of Uint32 (underlying POD type). More...
typedef math::Matrix<Uint32, 3, 4> 
3 x 4 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 3, 4> 
3 x 4 matrix of Uint32 (underlying POD type). More...
typedef math::Vector_struct<Uint32, 3> 
Vector of three Uint32 (underlying POD type). More...
typedef math::Vector<Uint32, 4> 
Vector of four Uint32. More...
typedef math::Matrix<Uint32, 4, 2> 
4 x 2 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 4, 2> 
4 x 2 matrix of Uint32 (underlying POD type). More...
typedef math::Matrix<Uint32, 4, 3> 
4 x 3 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 4, 3> 
4 x 3 matrix of Uint32 (underlying POD type). More...
typedef math::Matrix<Uint32, 4, 4> 
4 x 4 matrix of Uint32. More...
typedef math::Matrix_struct<Uint32, 4, 4> 
4 x 4 matrix of Uint32 (underlying POD type). More...
typedef math::Vector_struct<Uint32, 4> 
Vector of four Uint32 (underlying POD type). More...
typedef unsigned long long  
64-bit unsigned integer. More...
typedef unsigned char  
8-bit unsigned integer. More...

Enumerations

enum  {NEGATIVE = -1, ZERO = 0, POSITIVE = 1, LESS = -1, EQUAL = 0, GREATER = 1 }
An enum for a three-valued comparison result. More...

Functions

template< class T>mi::​Sint32  ( const mi::​IData* data, T& value)
Simplifies reading the value of mi::IData into the corresponding classes from the base and math API. More...
mi::​Sint32  ( const mi::​IData* data, const char*& value)
This specialization handles mi::IString and mi::IRef (and corresponding attachables). More...
mi::​Sint32  ( const mi::​IData* data, mi::​base::​Uuid& value)
This specialization handles mi::IUuid. More...
template< class T, Size>mi::​Sint32  ( const mi::​IData* data, mi::​math::​Vector < T , DIM >& value)
This specialization handles the vector specializations of mi::ICompound (and corresponding attachables). More...
template< class T, Size, Size>mi::​Sint32  ( const mi::​IData* data, mi::​math::​Matrix < T , ROW , COL >& value)
This specialization handles the matrix specializations of mi::ICompound (and corresponding attachables). More...
mi::​Sint32  ( const mi::​IData* data, mi::​Color& value)
This specialization handles mi::IColor and mi::IColor3 (and corresponding attachables). More...
mi::​Sint32  ( const mi::​IData* data, mi::​Spectrum& value)
This specialization handles mi::ISpectrum (and corresponding attachables). More...
mi::​Sint32  ( const mi::​IData* data, mi::​Bbox3& value)
This specialization handles mi::IBbox3. More...
template< class T>mi::​Sint32  ( const mi::​IData* data, mi::​Size index, T& value)
This variant handles elements of collections identified via an additional index. More...
template< class T>mi::​Sint32  ( const mi::​IData* data, const char* key, T& value)
This variant handles elements of collections identified via an additional key. More...
template< class T>mi::​Sint32  ( const mi::​neuraylib::​IAttribute_set* attribute_set, const char* name, T& value)
Simplifies reading the value of an attribute into the corresponding classes from the base and math API. More...
template< class T>mi::​Sint32  ( const mi::​neuraylib::​IAttribute_set* attribute_set, const char* name, mi::​Size index, T& value)
Simplifies reading the value of an attribute into the corresponding classes from the base and math API (variant with an index for collections). More...
template< class T>mi::​Sint32  ( const mi::​neuraylib::​IAttribute_set* attribute_set, const char* name, const char* key, T& value)
Simplifies reading the value of an attribute into the corresponding classes from the base and math API (variant with a key for collections). More...
Comparison_result  ( Comparison_result sign)
Reverse the sign of a three valued enum. More...
template< class T>mi::​Sint32  ( mi::​IData* data, const T& value)
Simplifies setting the value of mi::IData from the corresponding classes from the base and math API. More...
mi::​Sint32  ( mi::​IData* data, const char* value)
This specialization handles mi::IString and mi::IRef (and corresponding attachables). More...
mi::​Sint32  ( mi::​IData* data, const mi::​base::​Uuid& value)
This specialization handles mi::IUuid. More...
template< class T, Size>mi::​Sint32  ( mi::​IData* data, const mi::​math::​Vector < T , DIM >& value)
This specialization handles the vector specializations of mi::ICompound (and corresponding attachables). More...
template< class T, Size, Size>mi::​Sint32  ( mi::​IData* data, const mi::​math::​Matrix < T , ROW , COL >& value)
This specialization handles the matrix specializations of mi::ICompound (and corresponding attachables). More...
mi::​Sint32  ( mi::​IData* data, const mi::​Color& value)
This specialization handles mi::IColor and mi::IColor3 (and corresponding attachables). More...
mi::​Sint32  ( mi::​IData* data, const mi::​Spectrum& value)
This specialization handles mi::ISpectrum (and corresponding attachables). More...
mi::​Sint32  ( mi::​IData* data, const mi::​Bbox3& value)
This specialization handles mi::IBbox3. More...
template< class T>mi::​Sint32  ( mi::​IData* data, mi::​Size index, const T& value)
This variant handles elements of collections identified via an additional index. More...
template< class T>mi::​Sint32  ( mi::​IData* data, const char* key, const T& value)
This variant handles elements of collections identified via an additional key. More...
template< class T>mi::​Sint32  ( mi::​neuraylib::​IAttribute_set* attribute_set, const char* name, const T& value)
Simplifies setting the value of an attribute from the corresponding classes from the base and math API. More...
template< class T>mi::​Sint32  ( mi::​neuraylib::​IAttribute_set* attribute_set, const char* name, mi::​Size index, const T& value)
Simplifies setting the value of an attribute from the corresponding classes from the base and math API (variant with an index for collections). More...
template< class T>mi::​Sint32  ( mi::​neuraylib::​IAttribute_set* attribute_set, const char* name, const char* key, const T& value)
Simplifies setting the value of an attribute from the corresponding classes from the base and math API (variant with a key for collections). More...
template< typename T>Comparison_result  ( T lhs, T rhs)
Return the three valued comparison result between two values of a numerical type T. More...
template< typename T>Comparison_result  ( T t)
Return the three valued sign for a numerical type T. More...

Variables

static const Difference 
The maximum value for Difference. More...
static const Difference 
The minimum value for Difference. More...
static const Size 
The maximum value for Size. More...