#include <comstl/conversion/interface_cast.hpp>
This class provides a cast between interface pointers, but does not add a net reference count
I | The interface pointer type | |
X | The exception type |
Public Types | |
typedef interface_cast_noaddref< I, X > | class_type |
The type of the current parameterisation. | |
typedef parent_class_type::interface_pointer_type | interface_pointer_type |
The interface pointer type. | |
typedef parent_class_type::interface_type | interface_type |
The interface type. | |
typedef protect_refcount < interface_type > * | protected_interface_pointer_type |
Public Member Functions | |
template<typename J> | |
interface_cast_noaddref (J &j) | |
Constructor that attempts the speculative cast. | |
interface_cast_noaddref (interface_pointer_type pi) | |
Constructor that directly casts (without calling QueryInterface()). | |
protected_interface_pointer_type | operator-> () const |
Access the members of the interface. |
typedef interface_cast_noaddref<I, X> class_type |
interface_cast_noaddref | ( | J & | j | ) | [inline, explicit] |
interface_cast_noaddref | ( | interface_pointer_type | pi | ) | [inline, explicit] |
Constructor that directly casts (without calling QueryInterface()).
References COMSTL_MESSAGE_ASSERT.
protected_interface_pointer_type operator-> | ( | ) | const [inline] |