summaryrefslogtreecommitdiff
path: root/implementation/endpoints/include/endpoint_host.hpp
diff options
context:
space:
mode:
authorDiogo Pedrosa <48529452+DiogoPedrozza@users.noreply.github.com>2023-03-13 14:09:12 +0000
committerGitHub <noreply@github.com>2023-03-13 14:09:12 +0000
commit1b427801352b5dcfdc2277f6343166c01afe97d6 (patch)
treed4e984dd100f3257ce784c9e30aefb6e60a93ab5 /implementation/endpoints/include/endpoint_host.hpp
parentfc73f40fa1501dc53210c63cb7c0d7623d106370 (diff)
parent826ebb8d352245a36ecaec32b6af61e7abf4696e (diff)
downloadvSomeIP-1b427801352b5dcfdc2277f6343166c01afe97d6.tar.gz
Merge pull request #416 from COVESA/update_3.3.03.3.0
vsomeip 3.3.0
Diffstat (limited to 'implementation/endpoints/include/endpoint_host.hpp')
-rw-r--r--implementation/endpoints/include/endpoint_host.hpp22
1 files changed, 17 insertions, 5 deletions
diff --git a/implementation/endpoints/include/endpoint_host.hpp b/implementation/endpoints/include/endpoint_host.hpp
index 2af1697..e5ca6d1 100644
--- a/implementation/endpoints/include/endpoint_host.hpp
+++ b/implementation/endpoints/include/endpoint_host.hpp
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
+// Copyright (C) 2014-2021 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/.
@@ -23,19 +23,31 @@ namespace vsomeip_v3 {
class configuration;
class endpoint;
+struct multicast_option_t {
+ std::shared_ptr<endpoint> endpoint_;
+ bool is_join_;
+ boost::asio::ip::address address_;
+};
+
class endpoint_host {
public:
virtual ~endpoint_host() = default;
virtual void on_connect(std::shared_ptr<endpoint> _endpoint) = 0;
virtual void on_disconnect(std::shared_ptr<endpoint> _endpoint) = 0;
- virtual bool on_bind_error(std::shared_ptr<endpoint> _endpoint, uint16_t _remote_port) = 0;
+ virtual bool on_bind_error(std::shared_ptr<endpoint> _endpoint,
+ const boost::asio::ip::address &_remote_address,
+ uint16_t _remote_port) = 0;
virtual void on_error(const byte_t *_data, length_t _length,
- endpoint* const _receiver,
- const boost::asio::ip::address &_remote_address,
- std::uint16_t _remote_port) = 0;
+ endpoint* const _receiver,
+ const boost::asio::ip::address &_remote_address,
+ std::uint16_t _remote_port) = 0;
virtual void release_port(uint16_t _port, bool _reliable) = 0;
virtual client_t get_client() const = 0;
+ virtual std::string get_client_host() const = 0;
+ virtual instance_t find_instance(service_t _service,
+ endpoint * const _endpoint) const = 0;
+ virtual void add_multicast_option(const multicast_option_t &_option) = 0;
};
} // namespace vsomeip_v3