37#ifndef Alembic_AbcCoreAbstract_ScalarSample_h
38#define Alembic_AbcCoreAbstract_ScalarSample_h
45namespace AbcCoreAbstract {
75 virtual void copyFrom(
const void *iData ) = 0;
76 virtual bool equalTo(
const void *iData )
const = 0;
78 double iEpsilon )
const = 0;
79 virtual bool lessThan(
const void *iData )
const = 0;
94 m_data->copyFrom( iData );
107 const void *
getData()
const {
return m_data->getData(); }
118 return m_data->equalTo( iRhs );
126 m_data->equalTo( iRhs.
getData() );
133 double iRelAbsError )
const
135 return m_data->equalEpsilon( iRhs, iRelAbsError );
141 double iRelAbsError )
const
144 m_data->equalEpsilon( iRhs.
getData(), iRelAbsError );
151 return m_data->lessThan( iRhs );
168 return m_data->lessThan( iRhs.
getData() );
180 m_data->setToDefault();
185 Alembic::Util::unique_ptr<Data> m_data;
#define ALEMBIC_VERSION_NS
virtual bool equalTo(const void *iData) const =0
virtual bool lessThan(const void *iData) const =0
virtual void setToDefault()=0
virtual bool equalEpsilon(const void *iData, double iEpsilon) const =0
virtual const void * getData() const =0
virtual void copyFrom(const void *iData)=0
bool operator==(const ScalarSample &iRhs) const
void copyFrom(const void *iData)
bool equalWithRelAbsError(const void *iRhs, double iRelAbsError) const
const void * getData() const
bool operator==(const void *iRhs) const
bool equalWithRelAbsError(const ScalarSample &iRhs, double iRelAbsError) const
bool operator<(const void *iRhs) const
ScalarSample(const DataType &iDataType)
bool operator<(const ScalarSample &iRhs) const
const DataType & getDataType() const