8 #ifndef OBJECTWRAPPERBASE_H_ 9 #define OBJECTWRAPPERBASE_H_ 33 virtual std::unique_ptr<ObjectWrapperBase>
CloneObject() = 0;
41 virtual std::unique_ptr<ObjectWrapperBase>
CloneWrapper() = 0;
49 virtual const std::type_info &
GetObjType() = 0;
84 virtual bool WrapObject(
void *address,
const std::type_info &type,
bool own,
bool isPolymorphic,
bool isConst) = 0;
virtual bool IsPolymorphic()=0
Test for polymorphic wrapped object.
virtual ~ObjectWrapperBase()
Destructor.
Definition: ObjectWrapperBase.h:25
virtual bool WrapsSomething()=0
Checks if the wrapper wraps something.
ObjectWrapperBase()
Constructor.
Definition: ObjectWrapperBase.h:100
IncludeFileExc.h IncludeFileExc class declaration.
Definition: Algorithm.h:21
virtual bool WrapObject(void *address, const std::type_info &type, bool own, bool isPolymorphic, bool isConst)=0
Wrap the object at the given address.
virtual std::unique_ptr< ObjectWrapperBase > CloneObject()=0
Clones the wrapped object and wraps it.
Mother class for data wrapper template class.
Definition: ObjectWrapperBase.h:22
virtual const std::type_info & GetObjType()=0
Returns the type of the wrapped object.
virtual bool IsConst()=0
Test for const wrapped object.
virtual std::unique_ptr< ObjectWrapperBase > CloneWrapper()=0
Clones the wrapper.
virtual void * GetObjAddress()=0
Getter for raw pointer to the wrapped object.
virtual void WrapNothing()=0
Remove the wrapped object.