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);
212 bool WrapObject(
void *address,
const std::type_info &type,
bool own);
217 template <
typename DataType>
220 template <
typename DataType>
ObjectWrapper CloneObject()
Creates a clone of the wrapped object and returns a wrapper wrapping it.
Definition: ObjectWrapper.cpp:52
void WrapNothing()
Remove the wrapped object.
Definition: ObjectWrapper.cpp:45
ObjectWrapper & operator=(DataType *rhs)
Assignment operator.
Definition: ObjectWrapper.hpp:25
friend observer_ptr< typename std::enable_if< std::is_class< DataType >::value, DataType >::type > wrapper_cast(ObjectWrapper &wrapper)
Cast function to extract wrapped pointer from wrapper in a type-safe way.
Definition: WrapperCast.hpp:47
bool WrapObject(void *address, const std::type_info &type, bool own)
Wrap the object at the given address.
Definition: ObjectWrapper.cpp:60
ObjectWrapper()
Default constructor.
Definition: ObjectWrapper.cpp:12
IncludeFileExc.h IncludeFileExc class declaration.
Definition: Algorithm.h:21
bool WrapsSomething()
Checks if the wrapper wraps something.
Definition: ObjectWrapper.cpp:50
Generic wrapper class.
Definition: ObjectWrapper.h:28
const std::type_info & GetObjectType()
Get the wrapped type.
Definition: ObjectWrapper.h:193
std::unique_ptr< ObjectWrapperBase > content
Definition: ObjectWrapper.h:215