00001 
00002 
00003 #ifndef __LISTENER__event_filter_h__
00004 #define __LISTENER__event_filter_h__
00005 
00006 #include "common.h"
00007 #include "utils/gen_object.h"
00008 
00023 #define igs_add_filter(FIL) add_event_filter(new FIL) ;
00024 
00025 namespace listener { 
00026 
00027   class Event ;
00028 
00044   class IGSLISTENER EventFilter: public basic::GenObject {
00045   public:
00046     virtual ~EventFilter() {}
00047 
00055     virtual bool filter(Event* e) = 0 ;
00056 
00057   } ;
00058   
00059   typedef basic::SmartPointer<EventFilter> EventFilter_var ;
00060 
00061 }
00062 
00063 #endif