StreamFactory.hpp
Go to the documentation of this file.
00001 #ifndef ORO_STREAM_FACTORY_HPP
00002 #define ORO_STREAM_FACTORY_HPP
00003 
00004 #include <ostream>
00005 #include <istream>
00006 #include "../base/DataSourceBase.hpp"
00007 #include <boost/shared_ptr.hpp>
00008 #include <string>
00009 #include "../rtt-config.h"
00010 
00011 namespace RTT
00012 {
00013     namespace types 
00014     {
00015 
00016         class RTT_API StreamFactory
00017         {
00018         public:
00028         virtual std::ostream& write(std::ostream& os, base::DataSourceBase::shared_ptr in ) const = 0;
00029 
00034         virtual std::istream& read(std::istream& os, base::DataSourceBase::shared_ptr out ) const = 0;
00035 
00039         virtual std::string toString( base::DataSourceBase::shared_ptr in ) const;
00040 
00044         virtual bool fromString( const std::string& value, base::DataSourceBase::shared_ptr out ) const;
00045 
00050         virtual bool isStreamable() const = 0;
00052         };
00053         typedef boost::shared_ptr<StreamFactory> StreamFactoryPtr;
00054     }
00055 }
00056 #endif


rtt
Author(s): RTT Developers
autogenerated on Mon Oct 6 2014 03:13:54