From 8a8761ea88e361ff610dd18ba22e59f3f5a9140b Mon Sep 17 00:00:00 2001 From: "Robin.Mueller" Date: Thu, 9 Apr 2020 17:56:48 +0200 Subject: [PATCH] stopwatch bugfix --- devicehandlers/CookieIF.h | 5 +++-- devicehandlers/DeviceCommunicationIF.h | 24 ++++++++++++------------ osal/FreeRTOS/BinarySemaphore.h | 26 +++++++++++--------------- serialize/SerializeDoc.h | 16 ++++++++++++++++ timemanager/Stopwatch.cpp | 2 +- 5 files changed, 43 insertions(+), 30 deletions(-) create mode 100644 serialize/SerializeDoc.h diff --git a/devicehandlers/CookieIF.h b/devicehandlers/CookieIF.h index ca171ff4..6b2bb559 100644 --- a/devicehandlers/CookieIF.h +++ b/devicehandlers/CookieIF.h @@ -13,8 +13,9 @@ typedef uint32_t address_t; * single interface (like RMAP or I2C) * @details * To use this class, implement a communication specific child cookie which - * inherits Cookie. Cookie instances are created in config/ Factory.cpp by calling - * CookieIF* childCookie = new ChildCookie(...). + * inherits Cookie. Cookie instances are created in config/Factory.cpp by + * calling @code{.cpp} CookieIF* childCookie = new ChildCookie(...) + * @endcode . * * This cookie is then passed to the child device handlers, which stores the * pointer and passes it to the communication interface functions. diff --git a/devicehandlers/DeviceCommunicationIF.h b/devicehandlers/DeviceCommunicationIF.h index 39cfadd7..bb095116 100644 --- a/devicehandlers/DeviceCommunicationIF.h +++ b/devicehandlers/DeviceCommunicationIF.h @@ -60,9 +60,9 @@ public: * this can be performed in this function, which is called on device handler * initialization. * @param cookie - * @return -@c RETURN_OK if initialization was successfull - * - Everything else triggers failure event with - * returnvalue as parameter 1 + * @return + * - @c RETURN_OK if initialization was successfull + * - Everything else triggers failure event with returnvalue as parameter 1 */ virtual ReturnValue_t initializeInterface(CookieIF * cookie) = 0; @@ -73,9 +73,9 @@ public: * @param cookie * @param data * @param len - * @return -@c RETURN_OK for successfull send - * - Everything else triggers failure event with - * returnvalue as parameter 1 + * @return + * - @c RETURN_OK for successfull send + * - Everything else triggers failure event with returnvalue as parameter 1 */ virtual ReturnValue_t sendMessage(CookieIF *cookie, const uint8_t * sendData, size_t sendLen) = 0; @@ -84,9 +84,9 @@ public: * Called by DHB in the GET_WRITE doGetWrite(). * Get send confirmation that the data in sendMessage() was sent successfully. * @param cookie - * @return -@c RETURN_OK if data was sent successfull + * @return - @c RETURN_OK if data was sent successfull * - Everything else triggers falure event with - * returnvalue as parameter 1 + * returnvalue as parameter 1 */ virtual ReturnValue_t getSendSuccess(CookieIF *cookie) = 0; @@ -99,9 +99,9 @@ public: * * @param cookie * @param requestLen Size of data to read - * @return -@c RETURN_OK to confirm the request for data has been sent. + * @return - @c RETURN_OK to confirm the request for data has been sent. * - Everything else triggers failure event with - * returnvalue as parameter 1 + * returnvalue as parameter 1 */ virtual ReturnValue_t requestReceiveMessage(CookieIF *cookie, size_t requestLen) = 0; @@ -113,8 +113,8 @@ public: * @param buffer [out] Set reply here (by using *buffer = ...) * @param size [out] size pointer to set (by using *size = ...). * Set to 0 if no reply was received - * @return -@c RETURN_OK for successfull receive - * -@c NO_REPLY_RECEIVED if not reply was received. Setting size to + * @return - @c RETURN_OK for successfull receive + * - @c NO_REPLY_RECEIVED if not reply was received. Setting size to * 0 has the same effect * - Everything else triggers failure event with * returnvalue as parameter 1 diff --git a/osal/FreeRTOS/BinarySemaphore.h b/osal/FreeRTOS/BinarySemaphore.h index 54126692..373e26bf 100644 --- a/osal/FreeRTOS/BinarySemaphore.h +++ b/osal/FreeRTOS/BinarySemaphore.h @@ -35,24 +35,20 @@ public: static constexpr ReturnValue_t SEMAPHORE_NOT_OWNED = MAKE_RETURN_CODE(2); static constexpr ReturnValue_t SEMAPHORE_NULLPOINTER = MAKE_RETURN_CODE(3); - /** - * Create a binary semaphore - */ BinarySemaphore(); /** - * Copy ctor - * @param + * @brief Copy ctor */ BinarySemaphore(const BinarySemaphore&); /** - * Copy assignment + * @brief Copy assignment */ BinarySemaphore& operator=(const BinarySemaphore&); /** - * Move constructor + * @brief Move constructor */ BinarySemaphore (BinarySemaphore &&); @@ -81,16 +77,16 @@ public: /** * Same as lockBinarySemaphore() with timeout in FreeRTOS ticks. * @param timeoutTicks - * @return -@c RETURN_OK on success - * -@c RETURN_FAILED on failure + * @return - @c RETURN_OK on success + * - @c RETURN_FAILED on failure */ ReturnValue_t takeBinarySemaphoreTickTimeout(TickType_t timeoutTicks = BinarySemaphore::NO_BLOCK_TICKS); /** * Give back the binary semaphore - * @return -@c RETURN_OK on success - * -@c RETURN_FAILED on failure + * @return - @c RETURN_OK on success + * - @c RETURN_FAILED on failure */ ReturnValue_t giveBinarySemaphore(); @@ -108,8 +104,8 @@ public: /** * Wrapper function to give back semaphore from handle * @param semaphore - * @return -@c RETURN_OK on success - * -@c RETURN_FAILED on failure + * @return - @c RETURN_OK on success + * - @c RETURN_FAILED on failure */ static ReturnValue_t giveBinarySemaphore(SemaphoreHandle_t semaphore); @@ -118,8 +114,8 @@ public: * @param semaphore * @param higherPriorityTaskWoken This will be set to pdPASS if a task with a higher priority * was unblocked - * @return -@c RETURN_OK on success - * -@c RETURN_FAILED on failure + * @return - @c RETURN_OK on success + * - @c RETURN_FAILED on failure */ static ReturnValue_t giveBinarySemaphoreFromISR(SemaphoreHandle_t semaphore, BaseType_t * higherPriorityTaskWoken); diff --git a/serialize/SerializeDoc.h b/serialize/SerializeDoc.h new file mode 100644 index 00000000..6186b77b --- /dev/null +++ b/serialize/SerializeDoc.h @@ -0,0 +1,16 @@ +/** + * @page serialPage Serialization Tools + * This page refers to the serialization tools included in framework/serialize. + * The serialization tools are a useful tool to convert object data into raw + * buffers and vice-versa. Here is a rough overview which tool to use for + * which purpose. + * + * @section endSwapper Endian Swapper + * This header file includes tools to do simple serial order swapping + * + * @section serialiezIF SerializeIF + * + * @section serElement SerializeElement + * + */ + diff --git a/timemanager/Stopwatch.cpp b/timemanager/Stopwatch.cpp index 6c50f0de..a7cbfa7c 100644 --- a/timemanager/Stopwatch.cpp +++ b/timemanager/Stopwatch.cpp @@ -31,7 +31,7 @@ seconds_t Stopwatch::stopSeconds() { void Stopwatch::display() { if(displayMode == StopwatchDisplayMode::MILLIS) { - info << "Stopwatch: Operation took " << elapsedTime.tv_sec * 1000 + + info << "Stopwatch: Operation took " << elapsedTime.tv_sec / 1000 + elapsedTime.tv_usec * 1000 << " milliseconds" << std::endl; } else if(displayMode == StopwatchDisplayMode::SECONDS) {