Go to the documentation of this file.00001 #include "ofConstants.h"
00002
00003 #ifdef OF_USING_POCO
00004
00005 #include "Poco/FIFOEvent.h"
00006 #include "Poco/Delegate.h"
00007
00008 using Poco::delegate;
00009
00010
00011
00012
00013
00014
00015
00016 template <typename ArgumentsType>
00017 class ofEvent: public Poco::FIFOEvent<ArgumentsType> {};
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 template <class EventType,typename ArgumentsType, class ListenerClass>
00031 static void ofAddListener(EventType & event, ListenerClass * listener, void (ListenerClass::*listenerMethod)(ArgumentsType&)){
00032 event += delegate(listener, listenerMethod);
00033 }
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045 template <class EventType,typename ArgumentsType, class ListenerClass>
00046 static void ofRemoveListener(EventType & event, ListenerClass * listener, void (ListenerClass::*listenerMethod)(ArgumentsType&)){
00047 event -= delegate(listener, listenerMethod);
00048 }
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059 template <class EventType,typename ArgumentsType, typename SenderType>
00060 static void ofNotifyEvent(EventType & event, ArgumentsType & args, SenderType * sender){
00061 event.notify(sender,args);
00062 }
00063
00064 template <class EventType,typename ArgumentsType>
00065 static void ofNotifyEvent(EventType & event, ArgumentsType & args){
00066 event.notify(NULL,args);
00067 }
00068
00069
00070 #endif