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.