diff options
author | chatty | 1994-03-14 08:40:16 +0000 |
---|---|---|
committer | chatty | 1994-03-14 08:40:16 +0000 |
commit | 33c173febd67cf6b558eb86ba552dc9369ab4b24 (patch) | |
tree | 0af984e138144b6ff9d8ec98b0ea7245dd003bef /dnn/Trigger.h | |
parent | 1ed65383fc2b49e22929862dd5705c93f79a60c2 (diff) | |
download | ivy-league-33c173febd67cf6b558eb86ba552dc9369ab4b24.zip ivy-league-33c173febd67cf6b558eb86ba552dc9369ab4b24.tar.gz ivy-league-33c173febd67cf6b558eb86ba552dc9369ab4b24.tar.bz2 ivy-league-33c173febd67cf6b558eb86ba552dc9369ab4b24.tar.xz |
Initial revision
Diffstat (limited to 'dnn/Trigger.h')
-rw-r--r-- | dnn/Trigger.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/dnn/Trigger.h b/dnn/Trigger.h new file mode 100644 index 0000000..31dd7f9 --- /dev/null +++ b/dnn/Trigger.h @@ -0,0 +1,44 @@ +/* + * DNN - Data News Network + * + * by Stephane Chatty + * + * Copyright 1993-1994 + * Centre d'Etudes de la Navigation Aerienne (CENA) + * + * Event triggers. + * + * $Id$ + * $CurLog$ + */ + +#ifndef DnnTrigger_H_ +#define DnnTrigger_H_ + +#include "cplus_bugs.h" +#include "ccu/List.h" + +class DnnReaction; +class DnnWindow; +class DnnEvent; + +class DnnTrigger { +friend class DnnBaseReaction; + +private: + DnnTrigger (const DnnTrigger&); + DnnTrigger& operator = (const DnnTrigger&); + +protected: + CcuListOf <DnnBaseReaction> Subscribers; + void Subscribe (DnnBaseReaction&); + void Unsubscribe (DnnBaseReaction&); + +public: + DnnTrigger (); + ~DnnTrigger (); +inline const CcuListOf <DnnBaseReaction>& GetSubscribers () const { return Subscribers; } + void Dispatch (DnnEvent&); +}; + +#endif /* DnnTrigger_H_ */ |