-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Add Active Phaser to Svc #3974
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
Add Active Phaser to Svc #3974
Conversation
Please run formatting on this contribution, we are adding formatting check to CI
|
m_cycle = cycle_ticks; | ||
} | ||
|
||
void ActivePhaser ::register_phased(FwIndexType port, U32 length, U32 start, U32 context) { |
Check notice
Code scanning / CodeQL
Long function without assertion Note
// Handler implementations for user-defined internal interfaces | ||
// ---------------------------------------------------------------------- | ||
|
||
void ActivePhaser ::Tick_internalInterfaceHandler() { |
Check notice
Code scanning / CodeQL
Long function without assertion Note
return false; | ||
} | ||
|
||
void ActivePhaser ::startChild(U32 full_ticks) { |
Check notice
Code scanning / CodeQL
Long function without assertion Note
// Component construction and destruction | ||
// ---------------------------------------------------------------------- | ||
|
||
ActivePhaser ::ActivePhaser(const char* const compName) |
Check notice
Code scanning / CodeQL
Use of basic integral type Note
void ActivePhaser ::init(const FwSizeType queueDepth, const FwIndexType instance) { | ||
FW_ASSERT(queueDepth == 1, static_cast<FwAssertArgType>( | ||
queueDepth)); // Dependent on queue-depth of one to prevent a rush to catch up | ||
ActivePhaserComponentBase::init(1, instance); |
Check warning
Code scanning / CodeQL
Unchecked function argument Warning
* Initial open source review of active phaser * Start working on ActivePhaser's FPP model * Add ActivePhaser implementation * Start working on unit tests * Fill in test logic * Add comments * Guard against writing outside of container * Add comment * Update comments * Fix comment on overflow * Comment on the use of actual_start and others * Add comments and max connection count * Add comments * Phaser updates * Add telemetry channels * Update comments, fix FPP, update API calls in tester * Apply formatter * Minor comment change * Fix spelling * First draft of SDD * Revert "Add telemetry channels" This reverts commit 1690e51. * PRIVATE -> private * Add friend class declaration for ActivePhaserTester * Fix FIXMEs where possible * Formatting * Fix minor UT issues * Remove (void) --------- Co-authored-by: ZIIIKT <[email protected]> Co-authored-by: M Starch <[email protected]> Co-authored-by: Michael D Starch <[email protected]>
Change Description
This PR brings an
ActivePhaser
component to theSvc
directory, which was originally written by @LeStarch.Rationale
ActivePhaser
is a scheduling component that provides fine-grained control over the timing of port calls, including specifying start times and lengths. For applications that require more timing guarantees, this component can serve as a suitable alternative to rate groups.Testing/Review Recommendations
Future Work