00001 00002 #ifndef CFnConsumer_h 00003 #define CFnConsumer_h 1 00004 00005 // CObjFunction 00006 #include "jic/task/CObjFunction.hpp" 00007 00008 namespace TASK { 00009 00010 template <class MessageType> 00011 class CFnConsumer : public CObjFunction 00012 { 00013 00014 public: 00015 CFnConsumer(); 00016 00017 virtual ~CFnConsumer(); 00018 00019 virtual void operator () (CMessageBlock<MessageType> *data) = 0; 00020 00021 // Additional Public Declarations 00022 00023 protected: 00024 // Additional Protected Declarations 00025 00026 private: 00027 CFnConsumer(const CFnConsumer< MessageType > &right); 00028 00029 CFnConsumer< MessageType > & operator=(const CFnConsumer< MessageType > &right); 00030 00031 // Additional Private Declarations 00032 00033 private: 00034 // Additional Implementation Declarations 00035 00036 }; 00037 00038 // Parameterized Class TASK::CFnConsumer 00039 00040 } // namespace TASK 00041 00042 #if defined (ACE_TEMPLATES_REQUIRE_SOURCE) 00043 #include "CFnConsumer.cpp" 00044 #endif /* ACE_TEMPLATES_REQUIRE_SOURCE */ 00045 00046 #endif