From b3769c9cb305af5efddb9bd6ed95a30cd55b2c1f Mon Sep 17 00:00:00 2001 From: Pavel Kirienko Date: Fri, 18 Apr 2014 21:14:17 +0400 Subject: [PATCH] Removed forward declarations (not compatible with MISRA) --- .../include/uavcan/marshal/bit_stream.hpp | 3 +-- .../transport/abstract_transfer_buffer.hpp | 24 +++++++++++++++++++ .../uavcan/transport/transfer_buffer.hpp | 13 +--------- 3 files changed, 26 insertions(+), 14 deletions(-) create mode 100644 libuavcan/include/uavcan/transport/abstract_transfer_buffer.hpp diff --git a/libuavcan/include/uavcan/marshal/bit_stream.hpp b/libuavcan/include/uavcan/marshal/bit_stream.hpp index 07172a7929..eb6da3a611 100644 --- a/libuavcan/include/uavcan/marshal/bit_stream.hpp +++ b/libuavcan/include/uavcan/marshal/bit_stream.hpp @@ -7,13 +7,12 @@ #include #include #include +#include #include namespace uavcan { -class UAVCAN_EXPORT ITransferBuffer; - void bitarrayCopy(const unsigned char* src_org, int src_offset, int src_len, unsigned char* dst_org, int dst_offset); class UAVCAN_EXPORT BitStream diff --git a/libuavcan/include/uavcan/transport/abstract_transfer_buffer.hpp b/libuavcan/include/uavcan/transport/abstract_transfer_buffer.hpp new file mode 100644 index 0000000000..d11b108935 --- /dev/null +++ b/libuavcan/include/uavcan/transport/abstract_transfer_buffer.hpp @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2014 Pavel Kirienko + */ + +#pragma once + +#include +#include + +namespace uavcan +{ +/** + * API for transfer buffer users. + */ +class UAVCAN_EXPORT ITransferBuffer +{ +public: + virtual ~ITransferBuffer() { } + + virtual int read(unsigned offset, uint8_t* data, unsigned len) const = 0; + virtual int write(unsigned offset, const uint8_t* data, unsigned len) = 0; +}; + +} diff --git a/libuavcan/include/uavcan/transport/transfer_buffer.hpp b/libuavcan/include/uavcan/transport/transfer_buffer.hpp index cfbbe32d6a..fce58681e0 100644 --- a/libuavcan/include/uavcan/transport/transfer_buffer.hpp +++ b/libuavcan/include/uavcan/transport/transfer_buffer.hpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -17,18 +18,6 @@ namespace uavcan { UAVCAN_PACKED_BEGIN -/** - * API for transfer buffer users. - */ -class UAVCAN_EXPORT ITransferBuffer -{ -public: - virtual ~ITransferBuffer() { } - - virtual int read(unsigned offset, uint8_t* data, unsigned len) const = 0; - virtual int write(unsigned offset, const uint8_t* data, unsigned len) = 0; -}; - /** * Internal for TransferBufferManager */