-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ICD] Update and Document ICDManager interface #33081
[ICD] Update and Document ICDManager interface #33081
Conversation
PR #33081: Size comparison from 8823bd9 to 78003be Increases (81 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
Decreases (2 builds for linux)
Full report (82 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>
PR #33081: Size comparison from 8823bd9 to f1c6f1f Increases (6 builds for cc32xx, mbed, qpg, stm32)
Decreases (2 builds for cc32xx)
Full report (6 builds for cc32xx, mbed, qpg, stm32)
|
PR #33081: Size comparison from 8823bd9 to 9fe2cc2 Increases above 0.2%:
Increases (52 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, linux, nrfconnect, psoc6, stm32)
Decreases (70 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, qpg, stm32, telink)
Full report (82 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
|
@bzbarsky-apple resolving the two remaining comments to unblock follow up PR. If the commit doesn't fully address them, i'll open a follow up PR. |
// This enum class represents to all ICDStateObserver callbacks available from the | ||
// mStateObserverPool for the ICDManager. | ||
/** | ||
* @brief This enum class represents to all ICDStateObserver callbacks available from the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"represents all"?
* When this event is called, the ICD is still in ActiveMode. | ||
* If the ActiveMode timer is increased due to the TransitionToIdle event, the event will not be called a second time in | ||
* a given cycle. | ||
* OnEnterIdleMode will always the third when the ICD has transitioned to IdleMode. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"OnEnterIdleMode will always the third event and indictats that the ICD has transitioned to IdleMode."
* OnEnterIdleMode will always the third when the ICD has transitioned to IdleMode. | ||
* | ||
* The ICDModeChange event can occur independently from the EnterActiveMode, TransitionToIdle and EnterIdleMode. | ||
* It will typpically hapen at the ICDManager init when a client is already registered with the ICD before the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"happen"
* | ||
* The ICDModeChange event can occur independently from the EnterActiveMode, TransitionToIdle and EnterIdleMode. | ||
* It will typpically hapen at the ICDManager init when a client is already registered with the ICD before the | ||
* OnEnterIdleMode event or when a client send a register command after the OnEnterActiveMode event. Nothing prevents the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"sends"
* The ICDModeChange event can occur independently from the EnterActiveMode, TransitionToIdle and EnterIdleMode. | ||
* It will typpically hapen at the ICDManager init when a client is already registered with the ICD before the | ||
* OnEnterIdleMode event or when a client send a register command after the OnEnterActiveMode event. Nothing prevents the | ||
* ICDModeChange event to happen multiple times per cycle or while the ICD is in IdleMode. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"from happening"
Description
The PRs goal is finalize the public interface provided by the ICDManager. During developmment, most of the functions in the ICDManager were made public without good reason and gave access to internal functions and states that should not have been accessible.
PR also has a bug fix to reset the
OnTransitionToIdle
flag when we enter ActiveMode and not when the IdleMode timer expires. This is the only real functionnal changes. ICDManager.cpp line #468 & #510private
to prevent consummers from modyfing internal states without going through standard and tested methods.OnTransitionToIdle
flag was being set / clearedNote to reviewers :
Tests