51 #ifndef COMMON_SCOPEDPTR_H 52 #define COMMON_SCOPEDPTR_H 54 #include <boost/noncopyable.hpp> 68 template<
typename T,
class Deallocator>
119 template<
typename T,
class Deallocator = DeallocatorDefault>
136 template<
typename T,
class Deallocator = DeallocatorArray>
150 #endif // COMMON_SCOPEDPTR_H
ScopedPtrBase< T, Deallocator >::ReferenceType operator[](size_t i) const
void reset(PointerType o=0)
Resets the pointer with the new value.
PointerType release()
Returns the plain pointer value and releases ScopedPtr.
ScopedArray(typename ScopedPtrBase< T, Deallocator >::PointerType o=0)
void swap(ScopedPtrBase< T, Deallocator > &right)
Swap the managed pointers of two ScopedPtrs of the same type.
Base template class for a scoped pointer.
#define XOREOS_EXPLICIT_OPERATOR_CONV
Utility templates and functions.
ScopedPtrBase< T, Deallocator >::ReferenceType operator*() const
Low-level type definitions to handle fixed width types portably.
A scoped plain pointer, allowing pointer-y access and normal deletion.
PointerType get() const
Returns the plain pointer value.
Simple deallocator concept.
ScopedPtrBase(PointerType o=0)
Low-level detection of architecture/system properties.
A scoped array pointer, allowing array-y access and array deletion.
ScopedPtr(typename ScopedPtrBase< T, Deallocator >::PointerType o=0)
ScopedPtrBase< T, Deallocator >::PointerType operator->() const
void SWAP(T &a, T &b)
Template method which swaps the values of its two parameters.