SOFA API  1df67014
Open source framework for multi-physics simuation
sofa::defaulttype::IncompleteTypeInfo< TDataType > Struct Template Reference

#include <IncompleteTypeInfo.h>

Inheritance diagram for sofa::defaulttype::IncompleteTypeInfo< TDataType >:

Static Public Member Functions

static sofa::Size size ()
 
static sofa::Size byteSize ()
 
static sofa::Size size (const DataType &)
 
template<typename T >
static void getValue (const DataType &, sofa::Size, T &)
 
static bool setSize (DataType &, sofa::Size)
 
template<typename T >
static void setValue (DataType &, sofa::Size, const T &)
 
static void getValueString (const DataType &, sofa::Size, std::string &)
 
static const void * getValuePtr (const TDataType &data)
 
static void * getValuePtr (TDataType &data)
 
static void setValueString (DataType &data, sofa::Size index, const std::string &value)
 
static const std::string name ()
 
static const std::string GetTypeName ()
 

Function details

◆ byteSize()

template<class TDataType >
static sofa::Size sofa::defaulttype::IncompleteTypeInfo< TDataType >::byteSize ( )
inlinestatic

◆ GetTypeName()

template<class TDataType >
static const std::string sofa::defaulttype::IncompleteTypeInfo< TDataType >::GetTypeName ( )
inlinestatic

◆ getValue()

template<class TDataType >
template<typename T >
static void sofa::defaulttype::IncompleteTypeInfo< TDataType >::getValue ( const DataType ,
sofa::Size  ,
T &   
)
inlinestatic

◆ getValuePtr() [1/2]

template<class TDataType >
static const void* sofa::defaulttype::IncompleteTypeInfo< TDataType >::getValuePtr ( const TDataType &  data)
inlinestatic

◆ getValuePtr() [2/2]

template<class TDataType >
static void* sofa::defaulttype::IncompleteTypeInfo< TDataType >::getValuePtr ( TDataType &  data)
inlinestatic

◆ getValueString()

template<class TDataType >
static void sofa::defaulttype::IncompleteTypeInfo< TDataType >::getValueString ( const DataType ,
sofa::Size  ,
std::string &   
)
inlinestatic

◆ name()

template<class TDataType >
static const std::string sofa::defaulttype::IncompleteTypeInfo< TDataType >::name ( )
inlinestatic

◆ setSize()

template<class TDataType >
static bool sofa::defaulttype::IncompleteTypeInfo< TDataType >::setSize ( DataType ,
sofa::Size   
)
inlinestatic

◆ setValue()

template<class TDataType >
template<typename T >
static void sofa::defaulttype::IncompleteTypeInfo< TDataType >::setValue ( DataType ,
sofa::Size  ,
const T &   
)
inlinestatic

◆ setValueString()

template<class TDataType >
static void sofa::defaulttype::IncompleteTypeInfo< TDataType >::setValueString ( DataType data,
sofa::Size  index,
const std::string &  value 
)
inlinestatic

◆ size() [1/2]

template<class TDataType >
static sofa::Size sofa::defaulttype::IncompleteTypeInfo< TDataType >::size ( )
inlinestatic

◆ size() [2/2]

template<class TDataType >
static sofa::Size sofa::defaulttype::IncompleteTypeInfo< TDataType >::size ( const DataType )
inlinestatic

Enum details

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
ValidInfo 

1 if this type has valid infos

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
FixedSize 

1 if this type has a fixed size

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
ZeroConstructor 

1 if the constructor is equivalent to setting memory to 0

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
SimpleCopy 

1 if copying the data can be done with a memcpy

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
SimpleLayout 

1 if the layout in memory is simply N values of the same base type

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
Integer 

1 if this type uses integer values

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
Scalar 

1 if this type uses scalar values

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
Text 

1 if this type uses text values

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
CopyOnWrite 

1 if this type uses copy-on-write. The memory is shared with its source Data while only the source is changing (and the source modifications are then visible in the current Data). As soon as modifications are applied to the current Data, it will allocate its own value, and no longer shares memory with the source.

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
Container 

1 if this type is a container

◆ anonymous enum

template<class TDataType >
anonymous enum
Enumerator
Size 

largest known fixed size for this type, as returned by size()