OEBaseData¶
class OEBaseData
OEBaseData is an abstract class which defines the interface necessary for storage, retrieval, and duplication of data stored through the generic data interface in the OEBase class. Data stored in classes derived from OEBaseData is identified through data tags. The ability to perform run-time type checking is also built into the class.
The following classes derive from this class:
Note
OEBaseData is an abstract class. Methods for accessing and setting generic data are implemented in its derived class OEBaseDataT.
See also
OEBaseDataT::GetData
method instead.OEBaseDataT::SetData
method instead.
Constructors¶
OEBaseData(unsigned int tag)
Constructs and instance of OEBaseData and set the data identifier tag upon construction.
CreateCopy¶
OEBaseData *CreateCopy() const =0
This pure virtual copy constructor should return a deep copy of the OEBaseData object. The copy of the object returned is not memory-managed by the parent instance. It is the responsibility of the programmer to manage the memory created and returned by this method.
GetDataType¶
const void *GetDataType() const =0
This pure virtual method returns a unique type identifier for
the data type being stored. The return value of the method is
equivalent to the return value of OEGetDataType
for the stored type.
GetSize¶
unsigned int GetSize() const =0
This pure virtual method is used to return the number of elements if the data stored in an OEBaseData derived class is an array.
Note
The value returned is the number of elements in the array, not the number of bytes occupied by the data.