From 4949817085a8e283d2653451836db86fc9288b94 Mon Sep 17 00:00:00 2001 From: andygallay-silabs Date: Wed, 14 Jun 2023 14:48:35 -0400 Subject: [PATCH] Removed mName and mTimeout attributes from WindowManager::Timer struct to reduce memory occupancy --- examples/window-app/silabs/include/WindowManager.h | 5 +---- examples/window-app/silabs/src/WindowManager.cpp | 14 +++++++------- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/examples/window-app/silabs/include/WindowManager.h b/examples/window-app/silabs/include/WindowManager.h index 134c9b48bb9ef1..5cd49c1742b409 100644 --- a/examples/window-app/silabs/include/WindowManager.h +++ b/examples/window-app/silabs/include/WindowManager.h @@ -42,20 +42,17 @@ class WindowManager { typedef void (*Callback)(Timer & timer); - Timer(const char * name, uint32_t timeoutInMs, Callback callback, void * context); + Timer(uint32_t timeoutInMs, Callback callback, void * context); void Start(); void Stop(); void Timeout(); - const char * mName = nullptr; - uint32_t mTimeoutInMs = 0; Callback mCallback = nullptr; void * mContext = nullptr; bool mIsActive = false; TimerHandle_t mHandler = nullptr; - void IsrStart(); private: static void TimerCallback(TimerHandle_t xTimer); diff --git a/examples/window-app/silabs/src/WindowManager.cpp b/examples/window-app/silabs/src/WindowManager.cpp index 28894059bd0d9d..388e7196bbfaef 100644 --- a/examples/window-app/silabs/src/WindowManager.cpp +++ b/examples/window-app/silabs/src/WindowManager.cpp @@ -298,8 +298,8 @@ void WindowManager::OnLongPressTimeout(WindowManager::Timer & timer) void WindowManager::Cover::Init(chip::EndpointId endpoint) { mEndpoint = endpoint; - mLiftTimer = new Timer("Timer:Lift", COVER_LIFT_TILT_TIMEOUT, OnLiftTimeout, this); - mTiltTimer = new Timer("Timer:Tilt", COVER_LIFT_TILT_TIMEOUT, OnTiltTimeout, this); + mLiftTimer = new Timer(COVER_LIFT_TILT_TIMEOUT, OnLiftTimeout, this); + mTiltTimer = new Timer(COVER_LIFT_TILT_TIMEOUT, OnTiltTimeout, this); // Preset Lift attributes Attributes::InstalledOpenLimitLift::Set(endpoint, LIFT_OPEN_LIMIT); @@ -595,10 +595,10 @@ void WindowManager::Cover::CallbackOperationalStateSet(intptr_t arg) // Timers //------------------------------------------------------------------------------ -WindowManager::Timer::Timer(const char * name, uint32_t timeoutInMs, Callback callback, void * context) : - mName(name), mTimeoutInMs(timeoutInMs), mCallback(callback), mContext(context) +WindowManager::Timer::Timer(uint32_t timeoutInMs, Callback callback, void * context) : + mCallback(callback), mContext(context) { - mHandler = xTimerCreate(name, // Just a text name, not used by the RTOS kernel + mHandler = xTimerCreate("", // Just a text name, not used by the RTOS kernel pdMS_TO_TICKS(timeoutInMs), // == default timer period (mS) false, // no timer reload (==one-shot) (void *) this, // init timer id = app task obj context @@ -637,7 +637,7 @@ WindowManager & WindowManager::Instance() } #ifdef DISPLAY_ENABLED -WindowManager::WindowManager() : mIconTimer("Timer:icon", LCD_ICON_TIMEOUT, OnIconTimeout, this) {} +WindowManager::WindowManager() : mIconTimer(LCD_ICON_TIMEOUT, OnIconTimeout, this) {} #else WindowManager::WindowManager() {} #endif @@ -657,7 +657,7 @@ CHIP_ERROR WindowManager::Init() ConfigurationMgr().LogDeviceConfig(); // Timers - mLongPressTimer = new Timer("Timer:LongPress", LONG_PRESS_TIMEOUT, OnLongPressTimeout, this); + mLongPressTimer = new Timer(LONG_PRESS_TIMEOUT, OnLongPressTimeout, this); // Coverings mCoverList[0].Init(WINDOW_COVER_ENDPOINT1);