|
WinStd
Additional templates and function helpers for Microsoft Windows using Standard C++ classes
|
COM object wrapper template. More...
#include <WinStd/COM.h>
Public Member Functions | |
| __declspec (deprecated("Use CoCreateInstance")) com_obj(REFCLSID rclsid | |
| Constructs a new object and creates a new class with it. More... | |
Public Member Functions inherited from winstd::dplhandle< T *, NULL > | |
| dplhandle () noexcept | |
| Initializes a new class instance with the object handle set to INVAL. | |
| dplhandle (handle_type h) noexcept | |
| Initializes a new class instance with an already available object handle. More... | |
| dplhandle (const dplhandle< handle_type, INVAL > &h) noexcept | |
| Copy constructor. More... | |
| dplhandle (dplhandle< handle_type, INVAL > &&h) noexcept | |
| Move constructor. More... | |
| dplhandle< handle_type, INVAL > & | operator= (handle_type h) noexcept |
| Attaches already available object handle. More... | |
| dplhandle< handle_type, INVAL > & | operator= (const dplhandle< handle_type, INVAL > &h) noexcept |
| Duplicates the object. More... | |
| dplhandle< handle_type, INVAL > & | operator= (dplhandle< handle_type, INVAL > &&h) noexcept |
| Moves the object. More... | |
| handle_type | duplicate () const |
| Duplicates and returns a new object handle. More... | |
| bool | attach_duplicated (handle_type h) |
| Duplicates an object handle and sets a new object handle. More... | |
Public Member Functions inherited from winstd::handle< T *, INVAL > | |
| handle () noexcept | |
| Initializes a new class instance with the object handle set to INVAL. | |
| handle (handle_type h) noexcept | |
| Initializes a new class instance with an already available object handle. More... | |
| handle (handle< handle_type, INVAL > &&h) noexcept | |
| Move constructor. More... | |
| handle< handle_type, INVAL > & | operator= (handle_type h) noexcept |
| Attaches already available object handle. More... | |
| handle< handle_type, INVAL > & | operator= (handle< handle_type, INVAL > &&h) noexcept |
| Move assignment. More... | |
| operator handle_type () const | |
| Auto-typecasting operator. More... | |
| handle_type *& | operator* () const |
| Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.). More... | |
| handle_type * | operator& () |
| Returns the object handle reference. More... | |
| handle_type | operator-> () const |
| Provides object handle member access when the object handle is a pointer to a class or struct. More... | |
| bool | operator! () const |
| Tests if the object handle is INVAL. More... | |
| bool | operator< (handle_type h) const |
| Is handle less than? More... | |
| bool | operator<= (handle_type h) const |
| Is handle less than or equal to? More... | |
| bool | operator>= (handle_type h) const |
| Is handle greater than or equal to? More... | |
| bool | operator> (handle_type h) const |
| Is handle greater than? More... | |
| bool | operator!= (handle_type h) const |
| Is handle not equal to? More... | |
| bool | operator== (handle_type h) const |
| Is handle equal to? More... | |
| void | attach (handle_type h) noexcept |
| Sets a new object handle for the class. More... | |
| handle_type | detach () |
| Dismisses the object handle from this class. More... | |
| void | free () |
| Destroys the object. | |
Public Attributes | |
| LPUNKNOWN | pUnkOuter = NULL |
Additional Inherited Members | |
Public Types inherited from winstd::handle< T *, INVAL > | |
| typedef T * | handle_type |
| Datatype of the object handle this template class handles. | |
Static Public Attributes inherited from winstd::handle< T *, INVAL > | |
| static const T * | invalid |
| Invalid handle value. | |
Protected Member Functions inherited from winstd::dplhandle< T *, NULL > | |
| virtual handle_type | duplicate_internal (handle_type h) const noexcept=0 |
| Abstract member function that must be implemented by child classes to do the actual object handle duplication. More... | |
Protected Member Functions inherited from winstd::handle< T *, INVAL > | |
| virtual void | free_internal () noexcept=0 |
| Abstract member function that must be implemented by child classes to do the actual object destruction. | |
Protected Attributes inherited from winstd::handle< T *, INVAL > | |
| handle_type | m_h |
| Object handle. | |
COM object wrapper template.
| winstd::com_obj< T >::__declspec | ( | deprecated("Use CoCreateInstance") | ) |
Constructs a new object and creates a new class with it.