38 #ifndef ORO_CORELIB_BUFFERINTERFACE_HPP 39 #define ORO_CORELIB_BUFFERINTERFACE_HPP 42 #include "../FlowStatus.hpp" 43 #include <boost/shared_ptr.hpp> 44 #include <boost/call_traits.hpp> 63 typedef boost::shared_ptr< BufferInterface<T> >
shared_ptr;
64 typedef typename boost::call_traits<T>::param_type
param_t;
65 typedef typename boost::call_traits<T>::reference
reference_t;
87 virtual size_type
Pop( std::vector<value_t>& items ) = 0;
105 virtual void Release(value_t *item) = 0;
114 virtual bool Push( param_t item) = 0;
123 virtual size_type
Push(
const std::vector<value_t>& items ) = 0;
137 virtual bool data_sample( param_t sample,
bool reset =
true ) = 0;
virtual FlowStatus Pop(reference_t item)=0
boost::call_traits< T >::reference reference_t
virtual bool Push(param_t item)=0
boost::call_traits< T >::param_type param_t
virtual value_t data_sample() const =0
virtual void Release(value_t *item)=0
virtual value_t * PopWithoutRelease()=0
BufferBase::size_type size_type
virtual ~BufferInterface()
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
boost::shared_ptr< BufferInterface< T > > shared_ptr