37 #ifndef Alembic_AbcCoreAbstract_ArraySample_h
38 #define Alembic_AbcCoreAbstract_ArraySample_h
46 namespace AbcCoreAbstract {
79 , m_dataType( iDataType )
80 , m_dimensions( iDims ) {}
87 const void*
getData()
const {
return m_data; }
99 size_t size()
const {
return m_dimensions.numPoints(); }
114 !( m_data == NULL && m_dimensions.rank() < 1 );
169 T *
data =
reinterpret_cast<T*
>(
170 const_cast<void*
>( arraySample->
getData() ) );
184 DataType dtype( PODTraitsFromType<T>::pod_enum, iDataTypeExtent );
185 size_t numPODs = iDims.numPoints() * iDataTypeExtent;
190 new ArraySample( reinterpret_cast<const void *>( data ),
GLsizei GLenum GLsizei GLsizei GLuint memory
const DataType & getDataType() const
Alembic::Util::shared_ptr< ArraySample > ArraySamplePtr
void operator()(void *memory) const
ArraySamplePtr TAllocateArraySample(size_t iDataTypeExtent, const Dimensions &iDims)
ALEMBIC_EXPORT ArraySamplePtr AllocateArraySample(const DataType &iDtype, const Dimensions &iDims)
const Dimensions & getDimensions() const
BaseDimensions< Alembic::Util::uint64_t > Dimensions
const void * getData() const
#define ALEMBIC_VERSION_NS
ArraySample(const void *iData, const DataType &iDataType, const Dimensions &iDims)