#include <comstl/conversion/interface_cast.hpp>
This class provides a cast between interface pointers, that adds a net reference count
I | The interface pointer type | |
X | The exception type, defaulted to ignore_interface_cast_exception |
Public Types | |
typedef interface_cast_addref < I, X > | class_type |
The type of the current parameterisation. | |
typedef parent_class_type::interface_pointer_type | interface_pointer_type |
The interface pointer type. | |
Public Member Functions | |
template<typename J> | |
interface_cast_addref (J j) | |
Constructor that attempts the speculative cast. | |
interface_cast_addref (interface_pointer_type pi) | |
Constructor that directly casts (without calling QueryInterface()). | |
operator interface_pointer_type () | |
A pointer to the acquired interface. |
typedef interface_cast_addref<I, X> class_type |
interface_cast_addref | ( | J | j | ) | [inline, explicit] |
Constructor that attempts the speculative cast.
interface_cast_addref | ( | interface_pointer_type | pi | ) | [inline, explicit] |
Constructor that directly casts (without calling QueryInterface()).
operator interface_pointer_type | ( | ) | [inline] |
A pointer to the acquired interface.