PortCallBack.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00020 #ifndef PortCallBack_h
00021 #define PortCallBack_h
00022 
00023 namespace RTC
00024 {
00025   //============================================================
00026   // callback functor base classes
00052   template <class DataType>
00053   struct OnWrite
00054   {
00070     virtual ~OnWrite(){}
00071     
00092     virtual void operator()(const DataType& value) = 0;
00093   };
00094   
00118   template <class DataType>
00119   struct OnWriteConvert
00120   {
00136     virtual ~OnWriteConvert(){}
00137     
00162     virtual DataType operator()(const DataType& value) = 0;
00163   };
00164   
00186   template <class DataType>
00187   struct OnRead
00188   {
00204     virtual ~OnRead(){}
00205     
00222     virtual void operator()() = 0;
00223   };
00224   
00248   template <class DataType>
00249   struct OnReadConvert
00250   {
00266     virtual ~OnReadConvert(){}
00267     
00284     virtual DataType operator()(const DataType& value) = 0;
00285   };
00286   
00308   template <class DataType>
00309   struct OnOverflow
00310   {
00326     virtual ~OnOverflow(){}
00327     
00347     virtual void operator()(const DataType& value) = 0;
00348   };
00349   
00373   template <class DataType>
00374   struct OnUnderflow
00375   {
00391     virtual ~OnUnderflow(){}
00392     
00412     virtual DataType operator()() = 0;
00413   };
00414   
00436   template <class DataType>
00437   struct OnWriteTimeout
00438   {
00454     virtual ~OnWriteTimeout(){}
00455     
00475     virtual void operator()(const DataType& value) = 0;
00476   };
00477   
00499   template <class DataType>
00500   struct OnReadTimeout
00501   {
00517     virtual ~OnReadTimeout(){}
00518     
00538     virtual DataType operator()() = 0;
00539   };
00540 };
00541 #endif // PortCallBack_h

Generated on Thu May 29 15:03:33 2008 for OpenRTM by  doxygen 1.5.3