Gateware Libraries  R6.5A
Beta Build
GBroadcasting.h
1 #ifndef GBROADCASTING_H
2 #define GBROADCASTING_H
3 
15 #include "GListener.h"
16 
18 namespace GW
19 {
21  namespace CORE
22  {
24  static const GUUIID GBroadcastingUUIID =
25  {
26  0xff23c564, 0x940b, 0x44a2,{ 0x9e, 0x5f, 0xce, 0x26, 0x46, 0x59, 0xd6, 0x9a }
27  };
28 
30 
37  {
38  // All Gateware API interfaces contain no variables & are pure virtual.
39  public:
40 
42 
52  virtual GReturn RegisterListener(GListener* _addListener, unsigned long long _eventMask) = 0;
53 
55 
60  virtual GReturn DeregisterListener(GListener* _removeListener) = 0;
61  };
62  }// end CORE namespace
63 };// end GW namespace
64 
65 #endif
The GBroadcasting Interface is capable of registering & deregistering GListener interfaces.
Definition: GBroadcasting.h:36
A GListener Interface may be registered with a GBroadcaster interface to receive event notifications.
Definition: GListener.h:35
virtual GReturn DeregisterListener(GListener *_removeListener)=0
A successfully deregistered listener will no longer receive events and have its reference count decre...
This interface is only used to label and query interfaces which promise to 100% internally support th...
Definition: GMultiThreaded.h:31
Gateware Universally Unique Interface IDentifier.
Definition: GDefines.h:25
virtual GReturn RegisterListener(GListener *_addListener, unsigned long long _eventMask)=0
Any listener added to this class must receive all events unless otherwise specified by the _eventMask...
The core namespace to which all Gateware interfaces/structures/defines must belong.
Definition: GAudio.h:20
GReturn
Listing of common error codes returned by Gateware functions.
Definition: GDefines.h:53