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

Implements a Vdf_VectorData storage that holds a boxed element. More...

#include <vectorDataTyped.h>

+ Inheritance diagram for Vdf_VectorImplBoxed< TYPE >:

Public Member Functions

 Vdf_VectorImplBoxed (const Vdf_BoxedContainer< T > &box)
 
 Vdf_VectorImplBoxed (Vdf_BoxedContainer< T > &&box)
 
 Vdf_VectorImplBoxed (const Vdf_VectorImplBoxed &o)
 
 Vdf_VectorImplBoxed (Vdf_VectorImplBoxed &&o)
 
 ~Vdf_VectorImplBoxed () override=default
 
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
 
bool IsSharable () const override
 
size_t EstimateElementMemory () const override
 
Vdf_VectorData::Info GetInfo () override
 
- Public Member Functions inherited from Vdf_VectorDataTyped< T >
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
 
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_VectorImplBoxed< TYPE >

Implements a Vdf_VectorData storage that holds a boxed element.

Definition at line 21 of file vectorDataTyped.h.

Constructor & Destructor Documentation

template<typename TYPE >
Vdf_VectorImplBoxed< TYPE >::Vdf_VectorImplBoxed ( const Vdf_BoxedContainer< T > &  box)
inlineexplicit

Definition at line 32 of file vectorImpl_Boxed.h.

template<typename TYPE >
Vdf_VectorImplBoxed< TYPE >::Vdf_VectorImplBoxed ( Vdf_BoxedContainer< T > &&  box)
inlineexplicit

Definition at line 36 of file vectorImpl_Boxed.h.

template<typename TYPE >
Vdf_VectorImplBoxed< TYPE >::Vdf_VectorImplBoxed ( const Vdf_VectorImplBoxed< TYPE > &  o)
inline

Definition at line 40 of file vectorImpl_Boxed.h.

template<typename TYPE >
Vdf_VectorImplBoxed< TYPE >::Vdf_VectorImplBoxed ( Vdf_VectorImplBoxed< TYPE > &&  o)
inline

Definition at line 44 of file vectorImpl_Boxed.h.

template<typename TYPE >
Vdf_VectorImplBoxed< TYPE >::~Vdf_VectorImplBoxed ( )
overridedefault

Member Function Documentation

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

Implements Vdf_VectorData.

Definition at line 70 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 56 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 62 of file vectorImpl_Boxed.h.

template<typename TYPE >
size_t Vdf_VectorImplBoxed< TYPE >::EstimateElementMemory ( ) const
inlineoverridevirtual

Implements Vdf_VectorData.

Definition at line 104 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 117 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 96 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 92 of file vectorImpl_Boxed.h.

template<typename TYPE >
bool Vdf_VectorImplBoxed< TYPE >::IsSharable ( ) const
inlineoverridevirtual

Reimplemented from Vdf_VectorData.

Definition at line 100 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 83 of file vectorImpl_Boxed.h.

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

Implements Vdf_VectorData.

Definition at line 50 of file vectorImpl_Boxed.h.


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