* Created new SerialBufferBase as a parent of SerializeBufferBase. Renaming interface functions to be less confusing.
* Deprecating copyRawOffset. No direct use-cases in F' core.
* Make SerialBufferBase a true pure virtual interface.
* Changing Serializable to work with SerialBufferBase parent interface.
* Changing copyRaw and copyRawOffset to work with SerialBufferBase
* Updating documentation for SerialBufferBase usage
* Adding some documentation. Adding missing ASSERT in copyRaw. Fixing some bugs that new ASSERT uncovered.
* Renaming SerializeBufferBase to LinearBufferBase. Add a using declaration to maintain backwards compatability. Properly mark LinearBufferBase functions as override.
* Filling in the rest of the docstrings for the classes in Serializable
* Removing redundant virtual keyword on override function
* Applying clang formatting
* Incorporating PR comments
* Fix compile issues
* Bump version to alpha
* Format
* v
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>
* Mark legacy serialize and deserialize functions as deprecated. Clean up of remaining legacy references.
* Upgrading serialization in FppTestProject and Ref
* Fixed formatting issues
* Deprecating serialize/deserialize methods for clearer serializeTo/serializeFrom and deserializeTo/deserializeFrom methods to indicate direction.
* Cleaned up some GCC directives that was used for an experimenting. Fixed some bugs in Serializable.
* Un-deprecating serialize/deserialize methods to decouple the required FPP changes
* Further modenized more child classes. Added some backwards compatibility fall-back logic to aid in FPP decoupling.
* Fixing clang formatting violation
* Removing redundant virtual keyword since the functions are already overrides
* Incorporating PR comments
* Fixing clang format issue
* Incorporating PR comments
* Updating documentation for new serialize/deserialize methods
* Update F' Time handling with FPP struct and clean up TIME flags
* Update documentation to indicate required time base options
* Remove time context comparison from Time compare method and FpySequencer
* UT updates
* Remove time add/sub context assertions, upload context compare logic and UTs, and doc updates
* Update Fw::Time SDD serializables section
* Markdown format fix
* Markdown format fix
* Markdown format fix
* Markdown format fix
* Bump FPP to v3.0.0a14
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>
* Add FwBaseIdType, updates ActiveLogger, CmdDispatcher, TlmPacketizer to use Fw types, update unit tests
* Update unit tests, rename FwBaseIdType to FwIdType
* Cleanup
* Change type of sizeOfZeros
* Add FwIdType to TestConfigDeployment overriden config
* Add annotation
* Update Ref linuxTimer base id
* First pass at Svc + TcpClient implementation
* Tmp work
* Revert FileUplink changes
* Add copy (with allocation/deallocation) to FprimeRouter to simplify buffer management
* Update FprimeRouter UTs
* Update FprimeDeframer UTs
* Update FrameAccumulator UTs
* Update ComStub UTs
* Update missing Drv and UTs
* Update ComInterface to use ComDataWithContext on output
* Update Ref/RPI topology
* Fix spelling
* Fix test typo
* Update Udp component and UTs
* Rename data ports and standardize "Return" naming pattern
* Fix variable name
* Adapt UTs
* Update Communication Adapter Interface docs
* Full SDD updates
* Spelling & nits and details
* Put formatting back to original
* Added SpacePacket, TC and TM framers/deframers + Ref topology. Working with GDS wohooo
* TODOs and code cleanup
* Add APID enum to ComCfg.fpp and route based on received APID
* Increment counts per frame/apid
* Remove duplicate files
* Document and implement services/functions provided by the TCDeframer
* Add events, todos and notes
* fill TM frame with idle packet
* Add ApidMapper component and map APID - FwPacketDescriptor
* Refactor to new CMake API
* Update Types and Add TCDeframer tests
* Update type usage namespacing
* Finish TCDeframer UTs
* Add TMFramer tests and refine VcId handling
* Tests and code cleanup
* Define ComPacketType in FPP
* Map FW_PACKET_FILE to downlink specific APID
* Remove sequence number check
* Add packet loss notification to space packet
* Tests WIP
* WIP
* Use SpacePacket header type in TMFramer idle packet
* SpacePacketDeframer tests and untracked APID detection
* Add APID (=PacketDescriptor) extraction to FprimeDeframer
* Use ApidManager on uplink to validate seq count (is central authority for APID - SeqCount)
* Code cleanup
* Much cleaner ApidManager as a service, not in the middle of framing
* Even better ApidManager
* Add SpacePacketFramer UTs
* Set up rule based testing for ApidManager
* Code cleanup and fix TMFramer UT
* First pass at SDDs and stuff
* SDD fixes
* ApidManager Rule-based testing
* Improve TMFramer code coverage, docs and comments
* Types cleanup
* Add CRC check to CcsdsTCFrameDetector
* Add unit tests for CcsdsTCFrameDetector
* Fix Ref topology
* Fix old PacketType usage
* Fix ComQueue UTs
* Fix CI warnings
* Add test for CRC corruption in frame detector
* Spelling
* Remove ApidDemo component from topology
* Fix more static analysis
* Clean up ApidManager tests and fix static analysis warnings
* Fix UTs on RHEL8
* Fix SDD links
* Fix more static analysis on UTs
* More spelling fixes
* Improve SDDs and comments
* Update metadata
check-spelling run (pull_request_target) for ccsds-protocols
Signed-off-by: check-spelling-bot <check-spelling-bot@users.noreply.github.com>
on-behalf-of: @check-spelling <check-spelling-bot@check-spelling.dev>
* More SDD updates
* Attempt UT fixes
* First pass of review comments
* Fix length token is minus 1 inconsistency
* Review recs: static assert frame size, docs, TM buffer asserts
* Add fprime-gds.yml to Ref for GDS with framing selection
* Update requirements.txt for GDS 4.0.0a3 (CCSDS protocols)
* Update UTs to reflect last update
* Drop Python 3.8 support
* Update FprimeRouter UTs for new APID routing
* Fix spelling and RHEL8 cast warnings
* Fix spelling again...
* Deserialize APID in FprimeDeframer only if it is valid
* Fix googletest warning??
* static casting that u8 yall
* Use width FPP constants
* Add SDD links
* Switch TMFramer/TCDeframer capitalization to TmFramer/TcDeframer
* Use git mv to rename files and directory
* oops forgot rename a test file
* review changes: add annotations on all FPP ports
---------
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>
* Remove FwSignedSizeType from file
* Restoring FwSignedSizeType to seek offsets
* Fixing usages and UTs
* Fixes on Linux
* CI fix
* CI round 3
* CI rev 4
* Fixing code scan errors
* Review fixes - pt 1
* Failed to save
* NATIVE_INT_TYPE use in toString
* NATIVE_INT_TYPE use in SimpleObjRegistry
* NATIVE_INT_TYPE use in Asserts
* NATIVE_INT_TYPE use in Fw/Comp
* NATIVE_INT_TYPE use in getCapacity
* NATIVE_INT_TYPE use in getEntries
* NATIVE_INT_TYPE use in size/length
* NATIVE_INT_TYPE use in FILE_NAME_ARG
* NATIVE_INT_TYPE use in Fw (misc)
* NATIVE_INT_TYPE use in identifier
* NATIVE_INT_TYPE use in Fw (misc II)
* POINTER_CAST in Buffer
* POINTER_CAST in Serializable
* sp
* Removing no longer used DefaultTypes.hpp
* Fixes to accomidate Fw refactor
* Unit-test and CI fixes
* Fixing review comments - pt 1
* Os::File refactor: open w/ basic stub, posix UTs
* Refactoring Os::File for all methods, less UTs
* Adding rules-based common tests
* Fixing posix file for common UTs
* Adding WriteRead and WriteReadSeek tests
* Working random tests
* Working randomized tests and stub testing
* Fixing PrmDb unit tests
* Updating files to used FwSignedSizeType
* Factoring out the synthetic file system
* Initial work on CmdSequencer UTs
* Fixing linux implementation
* Newlines at end of file
* sp
* Static analysis checks
* Changing API to use enums
* Refactoring for proper class tree
* CmdSequencer UTs - WIP
* CmdSequencer UTs work
* Adding copy constructor functionality
* Spelling and static analysis fixes
* Copy constructor/assignment operator UTs and fixes
* Initial CRC work
* Working CRC and FPP models
* Minor UT fixes
* Correcting CMake choices implementation
* MAking implementation choices real dependencies
* Fixing implementation to use source files
* Fixing posix file read/write permissions
* Allowing None implementations
* Fixed CI breakages
* Fixing MyRules.hpp formatting
* Minor CRC unit test fix
* Removing direct write support
* Changing get delegate to static method of interface
* Replacing old comments with new comments
* Fixing friend regression
* Review fixes
* Fixing serialization method usages
* Review fixes
* Fixing RPI build
* Fixing FwBuffSizeType overflow
* Fixing review comment
* Renaming FwExternalSize -> FwSizeStoreType
* lestarch: update for small platform support (no U64)
* first-pass at fixing types interface
* fixing U64s in merged commit
* fixing improper loop limit
* fixing FwSizeType redefinition
* fixing review comments
* formatting Linux/FileSystem
* fixing static analysis errors
* fixing UTs when file system or memory to large
* disabling broken ut and fixing spelling
* cleaning up unused variable
* adding more comments to explain casting checks
Refactor command sequencer into generic and format-specific parts
Add support for AMPCS format
Revise unit tests to support multiple formats
Add AMPCS tests