source: source/ariba/utility/transport/transport_protocol.hpp@ 10788

Last change on this file since 10788 was 10653, checked in by Michael Tänzer, 12 years ago

Merge the ASIO branch back into trunk

File size: 997 bytes
Line 
1#ifndef TRANSPORT_PROTOCOL_HPP_
2#define TRANSPORT_PROTOCOL_HPP_
3
4#include "ariba/utility/addressing/addressing.hpp"
5#include "ariba/utility/transport/transport_listener.hpp"
6#include "ariba/utility/transport/messages/message.hpp"
7
8// namespace ariba::transport
9namespace ariba {
10namespace transport {
11
12using namespace ariba::addressing;
13
14/**
15 * TODO: Doc
16 *
17 * @author Sebastian Mies <mies@tm.uka.de>
18 */
19class transport_protocol {
20public:
21 /// Allow deleting implementing classes by pointer
22 virtual ~transport_protocol() {}
23
24 virtual void start() = 0;
25 virtual void stop() = 0;
26
27 virtual void send(
28 const endpoint_set& endpoints,
29 reboost::message_t message,
30 uint8_t priority = 0) = 0;
31
32 /// @deprecated: Use terminate() from transport_connection instead
33 virtual void terminate( const address_v* remote ) = 0;
34
35 virtual void register_listener( transport_listener* listener ) = 0;
36};
37
38}} // namespace ariba::transport
39
40#endif /* TRANSPORT_PROTOCOL_HPP_ */
Note: See TracBrowser for help on using the repository browser.