1 // Copyright (C) 2014-2017 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) 2 // This Source Code Form is subject to the terms of the Mozilla Public 3 // License, v. 2.0. If a copy of the MPL was not distributed with this 4 // file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 6 #include "../include/message_impl.hpp" 7 #include "../../utility/include/byteorder.hpp" 8 9 namespace vsomeip_v3 { 10 message_base_impl()11message_base_impl::message_base_impl() 12 : is_reliable_(false), 13 is_initial_(false) { 14 header_.set_owner(this); 15 } 16 ~message_base_impl()17message_base_impl::~message_base_impl() { 18 } 19 20 // header interface get_message() const21message_t message_base_impl::get_message() const { 22 return VSOMEIP_WORDS_TO_LONG(header_.service_, header_.method_); 23 } 24 set_message(message_t _message)25void message_base_impl::set_message(message_t _message) { 26 header_.service_ = VSOMEIP_LONG_WORD0(_message); 27 header_.method_ = VSOMEIP_LONG_WORD1(_message); 28 } 29 get_service() const30service_t message_base_impl::get_service() const { 31 return header_.service_; 32 } 33 set_service(service_t _service)34void message_base_impl::set_service(service_t _service) { 35 header_.service_ = _service; 36 } 37 get_instance() const38instance_t message_base_impl::get_instance() const { 39 return header_.instance_; 40 } 41 set_instance(instance_t _instance)42void message_base_impl::set_instance(instance_t _instance) { 43 header_.instance_ = _instance; 44 } 45 get_method() const46method_t message_base_impl::get_method() const { 47 return header_.method_; 48 } 49 set_method(method_t _method)50void message_base_impl::set_method(method_t _method) { 51 header_.method_ = _method; 52 } 53 get_request() const54request_t message_base_impl::get_request() const { 55 return VSOMEIP_WORDS_TO_LONG(header_.client_, header_.session_); 56 } 57 get_client() const58client_t message_base_impl::get_client() const { 59 return header_.client_; 60 } 61 set_client(client_t _client)62void message_base_impl::set_client(client_t _client) { 63 header_.client_ = _client; 64 } 65 get_session() const66session_t message_base_impl::get_session() const { 67 return header_.session_; 68 } 69 set_session(session_t _session)70void message_base_impl::set_session(session_t _session) { 71 header_.session_ = _session; 72 } 73 get_protocol_version() const74protocol_version_t message_base_impl::get_protocol_version() const { 75 return header_.protocol_version_; 76 } 77 set_protocol_version(protocol_version_t _protocol_version)78void message_base_impl::set_protocol_version(protocol_version_t _protocol_version) { 79 header_.protocol_version_ = _protocol_version; 80 } 81 get_interface_version() const82interface_version_t message_base_impl::get_interface_version() const { 83 return header_.interface_version_; 84 } 85 set_interface_version(interface_version_t _interface_version)86void message_base_impl::set_interface_version(interface_version_t _interface_version) { 87 header_.interface_version_ = _interface_version; 88 } 89 get_message_type() const90message_type_e message_base_impl::get_message_type() const { 91 return header_.type_; 92 } 93 set_message_type(message_type_e _type)94void message_base_impl::set_message_type(message_type_e _type) { 95 header_.type_ = _type; 96 } 97 get_return_code() const98return_code_e message_base_impl::get_return_code() const { 99 return header_.code_; 100 } 101 set_return_code(return_code_e _code)102void message_base_impl::set_return_code(return_code_e _code) { 103 header_.code_ = _code; 104 } 105 is_reliable() const106bool message_base_impl::is_reliable() const { 107 return is_reliable_; 108 } 109 set_reliable(bool _is_reliable)110void message_base_impl::set_reliable(bool _is_reliable) { 111 is_reliable_ = _is_reliable; 112 } 113 is_initial() const114bool message_base_impl::is_initial() const { 115 return is_initial_; 116 } 117 set_initial(bool _is_initial)118void message_base_impl::set_initial(bool _is_initial) { 119 is_initial_ = _is_initial; 120 } 121 122 } // namespace vsomeip_v3 123