COM Map Macros
These macros define COM interface maps.
Marks the beginning of the COM interface map entries. |
|
Enters interfaces into the COM interface map. |
|
Use this macro to disambiguate two branches of inheritance. |
|
Use this macro to enter the interface into the COM map and specify its IID. |
|
Same as COM_INTERFACE_ENTRY2, except you can specify a different IID. |
|
When the interface identified by iid is queried for, COM_INTERFACE_ENTRY_AGGREGATE forwards to punk. |
|
Same as COM_INTERFACE_ENTRY_AGGREGATE, except that querying for any IID results in forwarding the query to punk. |
|
Same as COM_INTERFACE_ENTRY_AGGREGATE, except if punk is NULL, it automatically creates the aggregate described by the clsid. |
|
Same as COM_INTERFACE_ENTRY_AUTOAGGREGATE, except that querying for any IID results in forwarding the query to punk, and if punk is NULL, automatically creating the aggregate described by the clsid. |
|
Causes your program to call DebugBreak when the specified interface is queried for. |
|
Saves the interface-specific data for every instance. |
|
Exposes your tear-off interfaces. |
|
Processes the COM map of the base class when the processing reaches this entry in the COM map. |
|
A general mechanism for hooking into ATL's QueryInterface logic. |
|
Same as COM_INTERFACE_ENTRY_FUNC, except that querying for any IID results in a call to func. |
|
Returns E_NOINTERFACE and terminates COM map processing when the specified interface is queried for. |
|
Marks the end of the COM interface map entries. |