summaryrefslogtreecommitdiff
path: root/implementation/routing/include/routing_host.hpp
diff options
context:
space:
mode:
authorLutz Bichler <Lutz.Bichler@bmw.de>2020-02-12 13:04:15 +0100
committerLutz Bichler <Lutz.Bichler@bmw.de>2020-02-12 13:04:15 +0100
commit8371cdca9463a75220c4de92b47c8df9d3bbe346 (patch)
tree16b4bf73c284b026b0ac032171110dafd1752196 /implementation/routing/include/routing_host.hpp
parentee44d19e0a3773adcda3bace073c66e334a3e6a7 (diff)
downloadvSomeIP-8371cdca9463a75220c4de92b47c8df9d3bbe346.tar.gz
vsomeip 3.1.7.13.1.7.1
Diffstat (limited to 'implementation/routing/include/routing_host.hpp')
-rw-r--r--implementation/routing/include/routing_host.hpp44
1 files changed, 44 insertions, 0 deletions
diff --git a/implementation/routing/include/routing_host.hpp b/implementation/routing/include/routing_host.hpp
new file mode 100644
index 0000000..337e4a7
--- /dev/null
+++ b/implementation/routing/include/routing_host.hpp
@@ -0,0 +1,44 @@
+// Copyright (C) 2014-2017 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
+// This Source Code Form is subject to the terms of the Mozilla Public
+// License, v. 2.0. If a copy of the MPL was not distributed with this
+// file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#ifndef VSOMEIP_V3_ROUTING_HOST_
+#define VSOMEIP_V3_ROUTING_HOST_
+
+#include <memory>
+
+#include <boost/asio/ip/address.hpp>
+
+#include <vsomeip/primitive_types.hpp>
+
+#ifdef ANDROID
+#include "../../configuration/include/internal_android.hpp"
+#else
+#include "../../configuration/include/internal.hpp"
+#endif // ANDROID
+
+namespace vsomeip_v3 {
+
+class endpoint;
+
+class routing_host {
+public:
+ virtual ~routing_host() = default;
+
+ virtual void on_message(const byte_t *_data, length_t _length,
+ endpoint *_receiver,
+ const boost::asio::ip::address &_destination =
+ boost::asio::ip::address(),
+ client_t _bound_client = VSOMEIP_ROUTING_CLIENT,
+ credentials_t _credentials = {ANY_UID, ANY_GID},
+ const boost::asio::ip::address &_remote_address =
+ boost::asio::ip::address(),
+ std::uint16_t _remote_port = 0) = 0;
+
+ virtual client_t get_client() const = 0;
+};
+
+} // namespace vsomeip_v3
+
+#endif // VSOMEIP_V3_ROUTING_HOST_