00001 // -*- C++ -*- 00020 /* 00021 * $Log: PublisherBase.h,v $ 00022 * Revision 1.1.4.1 2007/06/22 10:55:07 n-ando 00023 * The bug of OutPort's disconnect operation was fixed. 00024 * 00025 * Revision 1.1 2006/11/27 09:44:43 n-ando 00026 * The first commitment. 00027 * 00028 */ 00029 00030 #ifndef PublisherBase_h 00031 #define PublisherBase_h 00032 00033 namespace RTC 00034 { 00035 /* 00036 typedef PublisherBase* (*PublisherNewFunc)(InPortConsumer& consumer, 00037 Properties& property); 00038 typedef void (*PublisherDeleteFunc)(PublisherBase* rtc); 00039 00040 template <class _New> 00041 PublisherBase* CreatePublisher(InPortConsumer& consumer, 00042 Properties& property) 00043 { 00044 return new _New(consumer, property); 00045 } 00046 00047 template <class _Delete> 00048 void Delete(PublisherBase* publisher) 00049 { 00050 delete publisher; 00051 } 00052 */ 00053 00076 class PublisherBase 00077 { 00078 public: 00079 virtual void update() = 0; 00080 virtual ~PublisherBase(){}; 00081 virtual void release(){} 00082 }; 00083 00084 }; 00085 #endif // PublisherBase_h