35#ifndef _BLAZE_UTIL_POINTERCAST_H_
36#define _BLAZE_UTIL_POINTERCAST_H_
76template<
typename To,
typename From >
79 return static_cast<To*
>( ptr );
103template<
typename To,
typename From >
106 return dynamic_cast<To*
>( ptr );
128template<
typename To,
typename From >
131 return const_cast<To*
>( ptr );
153template<
typename To,
typename From >
156 return reinterpret_cast<To*
>( ptr );
172template<
typename To,
template<
typename>
class S,
typename From >
inline S<To>
static_pointer_cast( S<From> ptr );
173template<
typename To,
template<
typename>
class S,
typename From >
inline S<To>
dynamic_pointer_cast( S<From> ptr );
174template<
typename To,
template<
typename>
class S,
typename From >
inline S<To>
const_pointer_cast( S<From> ptr);
175template<
typename To,
template<
typename>
class S,
typename From >
inline S<To>
reinterpret_pointer_cast( S<From> ptr );
201template<
typename To,
template<
typename>
class S,
typename From >
204 return S<To>(
static_cast<To*
>( ptr.get() ) );
231template<
typename To,
template<
typename>
class S,
typename From >
234 return S<To>(
dynamic_cast<To*
>( ptr.get() ) );
259template<
typename To,
template<
typename>
class S,
typename From >
262 return S<To>(
const_cast<To*
>( ptr.get() ) );
277template<
typename To,
template<
typename>
class S,
typename From >
280 return S<To>(
reinterpret_cast<To*
>( ptr.get() ) );
S< To > dynamic_pointer_cast(S< From > ptr)
Dynamic cast for smart pointers.
Definition: PointerCast.h:232
S< To > reinterpret_pointer_cast(S< From > ptr)
Reinterpret cast for smart pointers.
Definition: PointerCast.h:278
S< To > const_pointer_cast(S< From > ptr)
Const cast for smart pointers.
Definition: PointerCast.h:260
S< To > static_pointer_cast(S< From > ptr)
Static cast for smart pointers.
Definition: PointerCast.h:202