10 #ifndef OBJECTWRAPPER_H_ 11 #define OBJECTWRAPPER_H_ 66 template <
typename DataType>
ObjectWrapper(std::shared_ptr<DataType> ptr);
75 template <
typename DataType>
ObjectWrapper(std::unique_ptr<DataType> ptr);
231 bool WrapObject(
void *address,
const std::type_info &type,
bool own,
bool isPolymorphic,
bool isConst);
ObjectWrapper CloneObject()
Creates a clone of the wrapped object and returns a wrapper wrapping it.
Definition: ObjectWrapper.cpp:57
void WrapNothing()
Remove the wrapped object.
Definition: ObjectWrapper.cpp:50
ObjectWrapper & operator=(DataType *rhs)
Assignment operator.
Definition: ObjectWrapper.hpp:25
bool operator==(const ObjectWrapper &rhs) const
Equal-to operator.
Definition: ObjectWrapper.cpp:45
bool operator!=(const ObjectWrapper &rhs) const
Not-equal-to operator.
Definition: ObjectWrapper.h:179
bool WrapObject(void *address, const std::type_info &type, bool own, bool isPolymorphic, bool isConst)
Wrap the object at the given address.
Definition: ObjectWrapper.cpp:65
ObjectWrapper()
Default constructor.
Definition: ObjectWrapper.cpp:12
friend observer_ptr< DataType > wrapper_cast(ObjectWrapper &)
Cast function to extract wrapped pointer from wrapper in a type-safe way.
Definition: WrapperCast.hpp:45
IncludeFileExc.h IncludeFileExc class declaration.
Definition: Algorithm.h:21
bool WrapsSomething()
Checks if the wrapper wraps something.
Definition: ObjectWrapper.cpp:55
Generic wrapper class.
Definition: ObjectWrapper.h:28
const std::type_info & GetObjectType()
Get the wrapped type.
Definition: ObjectWrapper.h:211
std::unique_ptr< ObjectWrapperBase > content
Definition: ObjectWrapper.h:234