An Overlay-based
Virtual Network Substrate
SpoVNet

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

Last change on this file since 10653 was 10653, checked in by Michael Tänzer, 11 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.