#include "../../../../include/crc/crc.hpp"
#include "../../../../include/e2e/profile/profile04/profile_04.hpp"
namespace vsomeip_v3 {
namespace e2e {
namespace profile04 {
uint32_t profile_04::compute_crc(const profile_config &_config, const e2e_buffer &_buffer) {
buffer_view its_before(_buffer, _config.offset_ + 8);
uint32_t computed_crc = e2e_crc::calculate_profile_04(its_before);
if (_config.offset_ + 12 < _buffer.size()) {
buffer_view its_after(_buffer, _config.offset_ + 12, _buffer.size());
computed_crc = e2e_crc::calculate_profile_04(its_after, computed_crc);
}
return computed_crc;
}
} } }