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/serviceentry_impl.hpp" 7 #include "../../message/include/deserializer.hpp" 8 #include "../../message/include/serializer.hpp" 9 10 namespace vsomeip_v3 { 11 namespace sd { 12 serviceentry_impl()13serviceentry_impl::serviceentry_impl() { 14 minor_version_ = 0; 15 } 16 ~serviceentry_impl()17serviceentry_impl::~serviceentry_impl() { 18 } 19 get_minor_version() const20minor_version_t serviceentry_impl::get_minor_version() const { 21 return minor_version_; 22 } 23 set_minor_version(minor_version_t _version)24void serviceentry_impl::set_minor_version(minor_version_t _version) { 25 minor_version_ = _version; 26 } 27 serialize(vsomeip_v3::serializer * _to) const28bool serviceentry_impl::serialize(vsomeip_v3::serializer *_to) const { 29 bool is_successful = entry_impl::serialize(_to); 30 31 is_successful = is_successful 32 && _to->serialize(static_cast<uint8_t>(major_version_)); 33 is_successful = is_successful 34 && _to->serialize(static_cast<uint32_t>(ttl_), true); 35 is_successful = is_successful 36 && _to->serialize(static_cast<uint32_t>(minor_version_)); 37 38 return is_successful; 39 } 40 deserialize(vsomeip_v3::deserializer * _from)41bool serviceentry_impl::deserialize(vsomeip_v3::deserializer *_from) { 42 bool is_successful = entry_impl::deserialize(_from); 43 44 uint8_t tmp_major_version(0); 45 is_successful = is_successful && _from->deserialize(tmp_major_version); 46 major_version_ = static_cast<major_version_t>(tmp_major_version); 47 48 uint32_t tmp_ttl(0); 49 is_successful = is_successful && _from->deserialize(tmp_ttl, true); 50 ttl_ = static_cast<ttl_t>(tmp_ttl); 51 52 uint32_t tmp_minor_version(0); 53 is_successful = is_successful && _from->deserialize(tmp_minor_version); 54 minor_version_ = static_cast<minor_version_t>(tmp_minor_version); 55 56 return is_successful; 57 } 58 59 } // namespace sd 60 } // namespace vsomeip_v3 61