* Split Router out of Deframer - initial implementation
* Rename variable to packetBuffer and resolve conversion warnings
* Add test cases for each incoming packet type
* Adjust comments and stuff
* Update Ref topology with Router
* WIP - FrameAccumulator
* Add lightweight deframer
* Working frame detector, accumulator, and fprime packet
* CCSDS implementation and better checksums
* Fixing overly small start word to use SCID as well
* Fixing frame accumulator for new structure
* Minor cleanup to frame detectors
* Add CCSDS Deframers and F´ minimal deframer
* Clean up comments
* Update Ref topology with Accumulator/Deframer/Router
* Update buffer manager
* Upgrade Router.cpp to latest Fw::Logger
* Update RPI deployment to use FrameAccumulator/Router
* Remove CCSDS Deframers
* Add first pass at UTs
* add buffer accumulation testing
* start SDD and rename author
* Fix static analysis warnings and add comments to UTs
* Spelling
* Add FprimeFrameDetector UTs
* Fix CI issue
* Fix test component creation
* Add first pass at SDDs
* Rename FrameAccumulator allocation ports
* Add review comments
* Functional one-off detection
* Fix algorithms and rename Deframer to FprimeDeframer
* Remove file
* Remove templated detectors
* Improve test code
* Rename frame Footer to Trailer, and improve SDDs
* finish renaming footer to trailer and add implementation note
* Fix spelling and CI warning
* Fix test code
* More CI and spelling fixes
* Add back virtual destructor
* appease pedantic warnings
* Fix declaration ordering for safe destruction
* Run formatting and add a few comments
* Add RouterInterface.fppi and use it in Router
* review changes round 1
* Rename Router to FprimeRouter and add test for unconnected unknownDataOut port
* Finish renaming Router -> FprimeRouter
* Use get-target-branch for cookiecutters tests and fix spelling
* fix a few comments, CI warning and formatting
* Update types for compatibility with updated FwSizeType
* Move FprimeProtocol.fpp to Svc/ and update non-compliant UINT types
* Code review recommendations
* Move FrameAccumulator destruction to cleanup() code
* Add frame validation to FprimeDeframer
* Add cleanup() call to test code
* Fix static analysis warnings
* Resolve type warnings and add multiple events in FprimeDeframer
* latest latest v3
---------
Co-authored-by: Michael D Starch <Michael.D.Starch@jpl.nasa.gov>
* Doc restructure with design-patterns and build-system sections
* Restore advanced.md and uts.md
* Link in UTs
* Fix link
* Remove card layout from user manual landing page
* Add back the cards
* Add Os::RawTime and preliminary rule-based tests
* Implement Stubs and stub tests tests + misc improvements
* Update delay functions to use Fw::TimeInterval instead of Fw::Time
* Replace TimerVal with Os::RawTime FPP type, SERIALIZED_SIZE fixed to 2*sizeof(U32)
* Fix spelling and legacy code
* Fix test import
* Remove TimerVal files and misc clean up
* Add Fw/Time as dependency of Os module
* Fix include guards
* Fix default constructors and missing getHandle stub
* Add Handle and Serialization size to FpConfig, refactor interface for less vtable calls, refactor IntervalTimer
* Fixes for new OS CMake API
* Add RawTime FPP Model
* Rename getRawTime to now(), better error handling, added docs for all functions
* Correct handle size, spelling, and more robust test IntervalTimer test
* Peer review changes
* Move `Os.RawTime` to `Os/Types.fpp`
* Fix unused variable
* Fix spelling and comments
* spelling extravaganza
* Update metadata
check-spelling run (pull_request_target) for os-interval-timer
Signed-off-by: check-spelling-bot <check-spelling-bot@users.noreply.github.com>
on-behalf-of: @check-spelling <check-spelling-bot@check-spelling.dev>
* Reference based approach to minuend and subtrahend
---------
Signed-off-by: check-spelling-bot <check-spelling-bot@users.noreply.github.com>
Co-authored-by: Thomas Boyer-Chammard <thomas-bc@users.noreply.github.com>
Co-authored-by: M Starch <LeStarch@googlemail.com>
* Remove mdxml references in component READMEs
* Remove mdxml format in .*ignore files
* Remove .mdxml exclude from spell checking
If the .mdxml file no longer exists, there is no need to specify them. This could also be a way to track the reappearance of .mdxml files in the project.
* Remove MagicDraw user guide
* Remove MagicDraw ug link from ToC
* Revise command response port
Replace inline enum with XML enum type
Generate XML from FPP
Revise uses to match
* Revise xml-gen script
* Revise event ports
Replace inline enums with external enums
* Add missing files
* Revise ActiveLogger
* Revise text log port
* Revise text log port
Replace inline enum with external LogSeverity enum
Now Log and TextLog share the same enum for severity
* Revise Fw/Prm
* Revise uses of Fw/Prm
* Revise Fw/Cmd model
* Revise Fw/Cmd build
* Revise build for Fw/Cmd
* Refactor Fw/Log model
* Refactor build for Fw/Prm
* Revise build scripts
Remove workarounds after compiler fix
* Revise model
Revise build scripts
Regerate XML
* Revise FPP model in Fw
* Add gen-xml
* Add metadata files
* Add redo scripts
* Remove gen-xml scripts
* Revise redo scripts
* Revise redo scripts
* Add redo scripts
* Add FPP model for Fw/Com
* Add FPP model for Fw/Time
* Revise redo scripts
* Add FPP model for Fw/Tlm
* Revise redo scripts
* Revise redo scripts
* Revise redo scripts, gitignore
* Remove unused file
* Revise redo scripts
* Add FPP.adoc
* Add FPP model for Svc/Cycle
* Revise defs.fpp and build rules
* Revise do files
Rename fpp-defs to defs
* Update redo scripts
* Revise redo scripts
* Fix build rules
* Add FPP model for Svc/Sched
* Revise update script
* Rename defs.fpp --> locs.fpp
* Revise build scripts
* Revise Svc.Cycle model
Make TimerVal argument by value, not by reference
This is required for compliance with FPP semantics, because
Svc.Cycle is used in async input ports
* Revert "Revise Svc.Cycle model"
This reverts commit a31c12f1c0a9639da818d79da4f7ddd036c0b3d8.
Under the revised semantics of FPP, this change is not necessary.
* Revise Fw/Types build
Add missing file
* Revise FatalHandler
Abort with SIGABRT, not SIGSEGV
* Add FPP model for Ping port
* Revise GDS launcher
Make the HTML server port configurable
Interpret -g 5001 as "Run the HTML GUI at port 5001"
* Fix bug in XML array parser
* Revise build scripts
* Revise build script
* Fix merge errors
* Fix merge errors
* Fix redo scripts
* redo not overwriting Svc/FileDownlink .xml files
* Remove redo database
* Revise .gitignore
* Revise FileDownlink FPP model
* pre redo all in Drv/ByteStreamDriveModel
* Revisited SignalPair to run redo all
* redo all in Ref/SignalGen
* Saving before running redo all
* /Svc/Watchdog pre redo all
* All Svc Enums etc. done minus /Svc/PolyIf and /Svc/WatchDog
* Forgot to add /Seq/Seq.fpp on last commit
* Created Type.fpp, ran redo xml in /Svc/Seq
* /Svc/PolyIf pre redo all
* /Svc/PolyIf returning .hpp error on fprime-util build
* Svc ports etc. complete
* Svc/ActiveLogger pre redo
* /Svc/PolyDb pre redo
* /Svc/ActiveTextLogger pre-redo
* /Svc/ActiveTextLogger post redo
* Svc/ComSplitter pre redo
* Svc/ComSplitter post redo
* /Svc/Deframer pre redo
* Svc/Deframer post redo
* /Svc/FatalHandler pre redo
* /Svc/FatalHandler post redo
* /Svc/Framer pre redo
* /Svc/FramerComponentAi post redo
* /Svc/LinuxTimer pre redo
* post redo for /Svc/LinuxTimer /Svc/PolyDb
* /Svc/Time pre redo
* /Svc/Time post redo
* /Svc/TlmChan pre redo
* /Svc/TlmChan post redo
* Remove files deleted from mainline
* Revert change to Fatal Handler
* Rename CommandResponse to CmdResponse
* Revert name of enum constant
* updated Fw/types.fpp
* Added ActiveRateGroupOutputPorts to Fpconfig.fpp, Svc/ActiveRateGroup pre redo
* /Svc/ActiveRateGroup component finished
* Revise build scripts
* Revise Ref redo build
Make it into a separate project
* Revise fpp build
* Revise fpp build
* Revise ActiveRateGroup
Put AcConstants variable back in for now
* Revise FPP model
* Revise fpp model
Add AcConstants.fpp
* Remove local setup scripts
* Fix spelling in comment
* Revise spell check
Co-authored-by: jweadick <joshua.m.weadick@jpl.nasa.gov>