Skip to content
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

Split Deframer into FrameAccumulator and Router #2900

Draft
wants to merge 21 commits into
base: devel
Choose a base branch
from

Conversation

thomas-bc
Copy link
Collaborator

@thomas-bc thomas-bc commented Sep 25, 2024

Related Issue(s)
Has Unit Tests (y/n)
Documentation Included (y/n)

Change Description

Split up Deframer into 3 components:

  • FrameAccumulator
  • Deframer
  • Router (rename UplinkRouter ?)

Using this new structure, adding in 2 new deframers for CCSDS SpacePacket and TM protocols.

Rationale

Better reusability and chaining of deframers, preliminary work for CCSDS integrations

TODO

!!! Unit tests, SDDs, update documentation

!!! UPDATE fprime-util new --deployment

class CRCWrapper {
protected:
//! \brief constructor setting initial value
CRCWrapper(TokenType initial) : m_crc(initial) {}

Check warning

Code scanning / CppCheck

Single-parameter constructors should be marked explicit. Warning

Single-parameter constructors should be marked explicit.
@thomas-bc thomas-bc added the Update Instructions Needed Need to add instructions in the release notes for updates. label Sep 25, 2024
Copy link

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

check-spelling found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

class CRCWrapper {
protected:
//! \brief constructor setting initial value
CRCWrapper(TokenType initial) : m_crc(initial) {}

Check warning

Code scanning / CppCheck

Single-parameter constructors should be marked explicit.

Single-parameter constructors should be marked explicit.
@thomas-bc thomas-bc changed the title Add FrameAccumulator, Router and CCSDS deframers Split Deframer into FrameAccumulator and Router Sep 30, 2024
@LeStarch LeStarch added this to the Release v3.5.1 milestone Oct 7, 2024
@thomas-bc
Copy link
Collaborator Author

Will fix #2073

@ReggieMarr
Copy link

@thomas-bc @LeStarch I made a fork and kinda ran with it in my repo I found what I think is an issue with the frame detection here

Currently I'm workin to fix my TM framer impl but let me know if I'm stepping on anyones toes or going in a bad direction

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Update Instructions Needed Need to add instructions in the release notes for updates.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Build uplink router Build A Frame Reassembler Break Apart Deframer
3 participants