| title | event_source | Microsoft Docs | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| ms.custom | ||||||||||
| ms.date | 11/04/2016 | |||||||||
| ms.reviewer | ||||||||||
| ms.suite | ||||||||||
| ms.technology |
|
|||||||||
| ms.tgt_pltfrm | ||||||||||
| ms.topic | language-reference | |||||||||
| f1_keywords |
|
|||||||||
| dev_langs |
|
|||||||||
| helpviewer_keywords |
|
|||||||||
| ms.assetid | 0983e36a-6127-4fbb-8a22-8dfec6564c16 | |||||||||
| caps.latest.revision | 13 | |||||||||
| author | mikeblome | |||||||||
| ms.author | mblome | |||||||||
| manager | ghogen | |||||||||
| translation.priority.ht |
|
|||||||||
| translation.priority.mt |
|
Creates an event source.
[ event_source(
type,
optimize=[speed | size],
decorate=[true | false]
) ]
type
An enumeration of one of the following values:
-
nativefor unmanaged C/C++ code (default for unmanaged classes). -
comfor COM code. You must usecoclasswhentype=com. This value requires that you include the following header files:#define _ATL_ATTRIBUTES #include <atlbase.h> #include <atlcom.h>
optimize
When type is native, you can specify optimize=size, to indicate that there is 4 bytes of storage (minimum) for all events in a class or optimize=speed (the default) to indicate that there is 4 * (# of events) bytes of storage.
decorate
When type is native, you can specify decorate=false, to indicate that the expanded name in the merged (.mrg) file should not include the enclosing class name. /Fx lets you generate .mrg files. decorate=false, which is the default, results in fully-qualified type names in the merged file.
The event_source C++ attribute specifies that the class or structure to which it is applied will be an event source.
event_source is used in conjunction with the event_receiver attribute and the __event keyword. Use event_receiver to create event receivers. Use __event on methods within the event source to specify those methods as events.
Note
A templated class or struct cannot contain events.
| Applies to | class, struct |
| Repeatable | No |
| Required attributes | coclass when type=com |
| Invalid attributes | None |
For more information, see Attribute Contexts.
Compiler Attributes
event_receiver
__event
__hook
__unhook
Class Attributes