HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Vdf_VectorImplEmpty< TYPE > Class Template Reference

Implements a Vdf_VectorData storage that is always empty. More...

#include <vectorDataTyped.h>

+ Inheritance diagram for Vdf_VectorImplEmpty< TYPE >:

Public Member Functions

 Vdf_VectorImplEmpty (size_t size)
 
 Vdf_VectorImplEmpty (const Vdf_VectorImplEmpty &sourceData)
 
void MoveInto (Vdf_VectorData::DataHolder *destData) override
 
void Clone (Vdf_VectorData::DataHolder *destData) const override
 
void CloneSubset (const VdfMask &mask, Vdf_VectorData::DataHolder *destData) const override
 
void Box (const VdfMask::Bits &bits, Vdf_VectorData::DataHolder *destData) const override
 
void Merge (const VdfMask::Bits &bits, Vdf_VectorData::DataHolder *destData) const override
 
size_t GetSize () const override
 
size_t GetNumStoredElements () const override
 
Vdf_VectorData::Info GetInfo () override
 
- Public Member Functions inherited from Vdf_VectorDataTyped< TYPE >
const std::type_info & GetTypeInfo () const overridefinal
 
void NewEmpty (size_t size, DataHolder *destData) const overridefinal
 
void NewSingle (DataHolder *destData) const overridefinal
 
void NewSparse (size_t size, size_t first, size_t last, DataHolder *destData) const overridefinal
 
void NewDense (size_t size, DataHolder *destData) const overridefinal
 
size_t EstimateElementMemory () const override
 
- Public Member Functions inherited from Vdf_VectorData
 Vdf_VectorData (const Vdf_VectorData &)=delete
 
Vdf_VectorDataoperator= (const Vdf_VectorData &)=delete
 
 Vdf_VectorData (Vdf_VectorData &&)=delete
 
Vdf_VectorDataoperator= (Vdf_VectorData &&)=delete
 
virtual VDF_API ~Vdf_VectorData ()
 
virtual VDF_API void Expand (size_t first, size_t last)
 
virtual VDF_API
Vt_ArrayForeignDataSource * 
GetSharedSource () const
 
virtual VDF_API bool IsSharable () const
 
VDF_API void DebugPrint (const VdfMask &mask, std::ostream *o) const
 

Additional Inherited Members

- Public Types inherited from Vdf_VectorData
typedef
Vdf_FixedSizePolymorphicHolder
< Vdf_VectorData,
_DataHolderSize
DataHolder
 
- Static Public Member Functions inherited from Vdf_VectorData
static VDF_API bool ShouldStoreCompressed (const VdfMask::Bits &bits, int elementSize)
 
- Protected Member Functions inherited from Vdf_VectorData
 Vdf_VectorData ()=default
 
- Static Protected Attributes inherited from Vdf_VectorData
static const size_t _SmallBufferSize = sizeof(size_t)*3 + sizeof(void *)
 
static const size_t _DataHolderSize = _SmallBufferSize + sizeof(void*)
 
static constexpr size_t _VectorSharingSize = 5000
 

Detailed Description

template<typename TYPE>
class Vdf_VectorImplEmpty< TYPE >

Implements a Vdf_VectorData storage that is always empty.

Note that the reason this empty holder is templated is because VdfVector always needs to know the type and it gets that information from its Vdf_VectorData's.

Definition at line 18 of file vectorDataTyped.h.

Constructor & Destructor Documentation

template<typename TYPE >
Vdf_VectorImplEmpty< TYPE >::Vdf_VectorImplEmpty ( size_t  size)
inlineexplicit

Definition at line 35 of file vectorImpl_Empty.h.

template<typename TYPE >
Vdf_VectorImplEmpty< TYPE >::Vdf_VectorImplEmpty ( const Vdf_VectorImplEmpty< TYPE > &  sourceData)
inline

Definition at line 37 of file vectorImpl_Empty.h.

Member Function Documentation

template<typename TYPE >
void Vdf_VectorImplEmpty< TYPE >::Box ( const VdfMask::Bits bits,
Vdf_VectorData::DataHolder destData 
) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 59 of file vectorImpl_Empty.h.

template<typename TYPE >
void Vdf_VectorImplEmpty< TYPE >::Clone ( Vdf_VectorData::DataHolder destData) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 47 of file vectorImpl_Empty.h.

template<typename TYPE >
void Vdf_VectorImplEmpty< TYPE >::CloneSubset ( const VdfMask mask,
Vdf_VectorData::DataHolder destData 
) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 53 of file vectorImpl_Empty.h.

template<typename TYPE >
Vdf_VectorData::Info Vdf_VectorImplEmpty< TYPE >::GetInfo ( )
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 82 of file vectorImpl_Empty.h.

template<typename TYPE >
size_t Vdf_VectorImplEmpty< TYPE >::GetNumStoredElements ( ) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 77 of file vectorImpl_Empty.h.

template<typename TYPE >
size_t Vdf_VectorImplEmpty< TYPE >::GetSize ( ) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 72 of file vectorImpl_Empty.h.

template<typename TYPE >
void Vdf_VectorImplEmpty< TYPE >::Merge ( const VdfMask::Bits bits,
Vdf_VectorData::DataHolder destData 
) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 66 of file vectorImpl_Empty.h.

template<typename TYPE >
void Vdf_VectorImplEmpty< TYPE >::MoveInto ( Vdf_VectorData::DataHolder destData)
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 41 of file vectorImpl_Empty.h.


The documentation for this class was generated from the following files: