merged new changes

This commit is contained in:
Robin Müller 2020-07-06 13:41:07 +02:00
parent 2158208a2f
commit bb5de8f110
3 changed files with 24 additions and 6 deletions

View File

@ -4,10 +4,15 @@
#include <framework/container/FIFOBase.h> #include <framework/container/FIFOBase.h>
#include <vector> #include <vector>
namespace fsfw {
/** /**
* @brief Simple First-In-First-Out data structure. The maximum size * @brief Simple First-In-First-Out data structure. The maximum size
* can be set in the constructor. THe public interface of * can be set in the constructor.
* FIFOBase exposes the user interface for the FIFO. * @details
* The maximum capacity can be determined at run-time, so this container
* performs dynamic memory allocation!
* The public interface of FIFOBase exposes the user interface for the FIFO.
* @tparam T Entry Type * @tparam T Entry Type
* @tparam capacity Maximum capacity * @tparam capacity Maximum capacity
*/ */
@ -23,4 +28,6 @@ private:
std::vector<T> values; std::vector<T> values;
}; };
}
#endif /* FRAMEWORK_CONTAINER_FIFO_H_ */ #endif /* FRAMEWORK_CONTAINER_FIFO_H_ */

View File

@ -4,6 +4,8 @@
#include <framework/returnvalues/HasReturnvaluesIF.h> #include <framework/returnvalues/HasReturnvaluesIF.h>
#include <cstddef> #include <cstddef>
namespace fsfw {
template <typename T> template <typename T>
class FIFOBase { class FIFOBase {
public: public:
@ -11,8 +13,8 @@ public:
static const ReturnValue_t FULL = MAKE_RETURN_CODE(1); static const ReturnValue_t FULL = MAKE_RETURN_CODE(1);
static const ReturnValue_t EMPTY = MAKE_RETURN_CODE(2); static const ReturnValue_t EMPTY = MAKE_RETURN_CODE(2);
/** Default ctor, takes pointer to first entry of underlying container
/** Default ctor, no input arguments required. */ * and maximum capacity */
FIFOBase(T* values, const size_t maxCapacity); FIFOBase(T* values, const size_t maxCapacity);
/** /**
@ -56,4 +58,6 @@ private:
#include <framework/container/FIFOBase.tpp> #include <framework/container/FIFOBase.tpp>
}
#endif /* FRAMEWORK_CONTAINER_FIFOBASE_H_ */ #endif /* FRAMEWORK_CONTAINER_FIFOBASE_H_ */

View File

@ -3,11 +3,16 @@
#include <framework/returnvalues/HasReturnvaluesIF.h> #include <framework/returnvalues/HasReturnvaluesIF.h>
#include <framework/container/FIFOBase.h> #include <framework/container/FIFOBase.h>
#include <array>
namespace fsfw {
/** /**
* @brief Simple First-In-First-Out data structure with size fixed at * @brief Simple First-In-First-Out data structure with size fixed at
* compile time. The public interface of FIFOBase exposes * compile time
* the user interface for the FIFO. * @details
* Performs no dynamic memory allocation.
* The public interface of FIFOBase exposes the user interface for the FIFO.
* @tparam T Entry Type * @tparam T Entry Type
* @tparam capacity Maximum capacity * @tparam capacity Maximum capacity
*/ */
@ -20,4 +25,6 @@ private:
std::array<T, capacity> values; std::array<T, capacity> values;
}; };
}
#endif /* FRAMEWORK_CONTAINERS_STATICFIFO_H_ */ #endif /* FRAMEWORK_CONTAINERS_STATICFIFO_H_ */