MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/communication/service/IMessageLink.hh

41 lines
901 B
C++
Raw Normal View History

/*
* IMessageLink.h
*
* Created on: 31 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2017 <EFBFBD>.
* Author: titov
*/
#ifndef SOURCES_COMMUNICATION_ITXLINKLINK_H_
#define SOURCES_COMMUNICATION_ITXLINKLINK_H_
#include "../../driver/IDataLink.hh"
#include "IMessageSeries.hh"
#include <cstddef>
namespace communication {
class IMessageLink {
public:
typedef driver::IRxLink istream;
typedef driver::ITxLink ostream;
//todo <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> iostream?
virtual istream & getData() = 0;
virtual ostream & createMessage( std::size_t size ) = 0;
//todo <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>).
virtual bool createMessageSeries( std::size_t num_messages, IMessageSeriesHandler * handler ) = 0;
virtual std::size_t transmitBuffCapacity() const = 0;
virtual std::size_t receiveBuffCapacity() const = 0;
virtual ~IMessageLink() = default;
};
}
#endif /* SOURCES_COMMUNICATION_ITXLINKLINK_H_ */