|
|
|
|
|
|
|
|
|
|
|
|||||||
#include <comstl_interface_cast.h>
Inheritance diagram for interface_cast_test:

Public Types | |
| typedef interface_cast_test< I > | 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. | |
Public Methods | |
| template<typename J> | interface_cast_test (J &j) |
| Constructor that attempts the speculative cast. | |
| interface_cast_test (interface_pointer_type pi) | |
| Constructor that directly casts (without calling QueryInterface()). | |
State | |
| operator operator_bool_type () const | |
| cs_bool_t | operator! () const |
| Represents whether the cast failed. | |
Protected Types | |
| typedef noaddref_release< I > | release_type |
| The release type. | |
| typedef ignore_interface_cast_exception | exception_policy_type |
| The exception type. | |
| typedef exception_policy_type::thrown_type | thrown_type |
| The thrown type. | |
Protected Methods | |
| interface_pointer_type const & | get_pointer_ () |
| Returns a non-mutating reference to the acquired interface pointer. | |
| interface_pointer_type | get_pointer_ () const |
| Returns a copy of the acquired interface pointer. | |
Static Protected Methods | |
| interface_pointer_type | do_cast (LPUNKNOWN punk) comstl_throw_1(thrown_type) |
Perform the cast, throwing the exception_policy_type's thrown_type if the requested interface cannot be acquired. | |
This class performs a cast to ascertain whether the requested interface is available, but then releases the resultant interface, so no net changes are made to the reference count on the tested object.
| I | The interface pointer type |
|
|
The type of the current parameterisation.
Reimplemented from interface_cast_base< I, noaddref_release< I >, ignore_interface_cast_exception >. |
|
|
The exception type.
|
|
|
The interface pointer type.
Reimplemented from interface_cast_base< I, noaddref_release< I >, ignore_interface_cast_exception >. |
|
|
The interface type.
Reimplemented from interface_cast_base< I, noaddref_release< I >, ignore_interface_cast_exception >. |
|
|
The release type.
|
|
|
The thrown type.
|
|
|
Constructor that attempts the speculative cast.
|
|
|
Constructor that directly casts (without calling QueryInterface()).
|
|
|
Perform the cast, throwing the
|
|
|
Returns a copy of the acquired interface pointer.
|
|
|
Returns a non-mutating reference to the acquired interface pointer.
|
|
|
Represents whether the cast succeeded
|
|
|
Represents whether the cast failed.
|
|
|
| STLSoft Libraries documentation © Synesis Software Pty Ltd, 2001-2004 |