* Moved BlockDrv to Ref
* Fixed unit tests
* Updated LinuxTimer component name
* Fixed unit tests
* Re-removed LinuxTimerImpl.hpp
* Fixed a bunch of doc references to Drv/BlockDriver
* Spelling fix
* Added linux to spelling expect
* Doc fixes, have Svc/LinuxTimer use tick interface
* Added to change log
---------
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
* Initial prototype of external parameter types
* Change external parameter interface to be an abstract base class
* Renamed external parameter delegate
* Sync parameter delegate interfaces with GNC
* Finshed interface sync with GNC
* Fixed missing include
* Added external parameter delgate documentation
* Added parameter base ID to the parameter external delegate interface
* Added external parameters to FPP component UTs
* Add external parameter UTs and got them to build
* Completed external paramter UTs
* Updated parameter delegate to accept a serial buffer base instead of a parameter buffer
* Renamed to fix spelling
* Bumped Fpp version
* Added external parameters documentation to the user's guide
* Fixed config include path
* Updated spelling expect file for external parameter names
* Revise FppTest
Add static casts in assertions to avoid conversion warnings
* Bumped FPP version to the 10th alpha release of 3.0.0
* Revise FppTest
Sort file lists
---------
Co-authored-by: Rob Bocchino <bocchino@jpl.nasa.gov>
* Added nav for tutorials back to mkdocs.yml
* formatting
* formatting
---------
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
* Initial FprimeFramer and FprimePacketizer
* Code clarity + set up UTs
* Rework ComQueue and ComStub to use DataWithContext
* Add packets to RefPackets.fppi
* Fix ComQueue tests
* Add hotfix to FileDownlink instead of ComQueue
* Fix cancelPacket as well
* Fix ComQueue UTs by removing hotfix
* Refactor DataWithContext to use an FPP object for context instead of Fw.Buffer
* Touch up testing
* Add docs
* more docs
* More docs
* Rework buffer deallocation pattern to pass-through ComQueue
* Update ComStub UTs
* Restore original FileDownlink.cpp
* Formatting tweak
* Update deprecated getSerializeRepr() calls
* deserialization methods
* Fix spelling
* add cast for safety
* CMakefile change
* Bump ComQueue depth
* Update RPI deployment with new Downlink stack
* Rename comQueueIn port to comPktQueueIn
* Fix comQueueIn to comPktQueueIn change
* Remove legacy Svc.Framer
* Fix CMake UTs
* Fix RPI topology config
* Fix FprimeProtocol.fpp module
* Fix namespacing
* Use const reference for FrameContext port
* Review comments EXCEPT port passback refactor
* Rework ComStub with new ByteStream
* New ByteStream - ComInterface model
* Rework TcpClient / TcpServer with new bytestream
* Adapt UDP component for new ByteStream
* Adapt FrameAccumulator for new ByteStream
* Adapt FprimeFramer for new ByteStream
* Update Ref topology with new ByteStream model
* Remove all legacy deallocates from Drivers; reintroduce DEPRECATED model types
* Fix spelling and include error
* More spelling....
* RPI and RpiDemo fixes
* Fix conversion warning on RPI
* static_cast for short int on RPI
* Standardize port names
* Remove legacy Drv types and merge RECV/SEND enum type, delete StreamCrossover
* Update SDDs
* Update SDDs
* Fix ComInterface <-> Framer interfaction, clarify comments and fix annotations
* Switch ComStub from ASSERT to log failure and return buffer
* Add history size check + clarify test handler overrides
* Fix RPI topology to wire comStub on Uplink
* Rename comm to comDriver in RPI topology
* Update communication adapter interface docs
* Awesome Nav Changes
* Awesome Nav Changes
* Bring up to date with latest
* This is AWESOME
* Rename files for ordering
* Remove How-To prefix in titles
* Fix spelling
* Remove old sdd_processing.py script
---------
Co-authored-by: thomas-bc <thomas.boyer.chammard@jpl.nasa.gov>
* Deprecating Fw::Buffer::getSerializeRepr in favour of Fw::Buffer::getSerializer and Fw::Buffer::getDeserializer (#2714)
* Addressing PR comments.
* Add workflow for running fpp-to-json on Ref (#3430)
* Add workflow for running fpp-to-json on Ref
* Update working dirs
* Add FPP v3.0.0a4
* fpp v3.0.0a5
* Use setup action
* Rename workflow for better display
---------
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
* Return cmd repsonse and UT check (#3438)
Co-authored-by: Zimri Leisher <zimri.leisher@fireflyspace.com>
* Update Ref to use FPP telemetry packets (#3440)
* Revise Ref app
Convert Ref packets to FPP
* Remove header include for XML packets
* Remove trailing spaces
* Delete RefPackets.xml
* Update Ref packets
* Update fpp version
* Update fpp version
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>
* Refactored type organization (#3422)
* Refactored type organization
* Creating better configuration/types header hierarchy
* Replace FpConfig type aliases with FPP generated aliases
* Add the aliases to the FPP model
* Config + Type Aliases builds
* Renamed Fw/Types.h,hpp to Fw/FPrimeBasicTypes.h,hpp
* Updating to FPP-a7
* Adding newline
* sp
* Fixing minor nit from review
* Spurious ;
---------
Co-authored-by: Andrei Tumbar <andrei.tumbar@jpl.nasa.gov>
* Deprecating Fw::Buffer::getSerializeRepr in favour of Fw::Buffer::getSerializer and Fw::Buffer::getDeserializer (#2714)
* Incorporating PR suggested fixes
* Adding the setting of m_serLoc and m_deserLoc to the copy constructor. Moving those members from private to protected.
* Adding m_serLoc and m_deserLoc copying to = operator function. Fixing FPP tests to explicitly move deserialize location to offset.
* File typo (#3464)
* typo. SeekType does not have a CURRENT value but it does have a RELATIVE value
* applied formatter
* Incorporating PR comments
* Incorporating PR comments
---------
Co-authored-by: Justine West <35715959+jwest115@users.noreply.github.com>
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
Co-authored-by: Zimri Leisher <zimri.leisher@gmail.com>
Co-authored-by: Zimri Leisher <zimri.leisher@fireflyspace.com>
Co-authored-by: Rob Bocchino <bocchino@jpl.nasa.gov>
Co-authored-by: M Starch <LeStarch@googlemail.com>
Co-authored-by: Andrei Tumbar <andrei.tumbar@jpl.nasa.gov>
Co-authored-by: kevin-f-ortega <kevin.f.ortega@gmail.com>
* Adding format specifier aliases for primitives. Updating documentation. (#3199)
* Changing double format to 'lf' for better compatibility for scanf
* Adding UTs. Removing PRI_F32 as C/C++ always promotes floats to doubles.
* Create fprime-translations.md
LeStarch on Feb 13, 2025
CollaboratorAuthor
@matt392code these tables you posted are exactly what we need for this issue. Do you want to pull those tables into a PR?
Create:
docs/user-guide/framework/fprime-translations.md
Add all of the tables you put at the top (everything up to "Example Translations").
I will need to go through and edit some of the data, but want to let you get credit for the initial work.
* Reviewing output
* Adding tranlation guide to mkdocs.yml
* Add links and fix typo
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>
Co-authored-by: chammard <thomas.boyer.chammard@jpl.nasa.gov>
* added telem packets to JSON dictionary spec
* add telemetry packet examples, cleanup examples
* fix examples
* fix typo
* rename groups to sets
* Add newline after tables, use camel case for component instance names
* update description of deploymentName field
* update deploymentName field description
* fix example
* Synchronous cancel guide, and Fw.Signal implementation
Fixing name in CMakeList for Fw.Signal
Draft of other port patterns
More port patterns with reoganized structure
Adding completion status port
Proof-read ports paterns doc
Fixing expert review elements w/ common port patterns
Updating links to point to devel examples
* Fixing path from old to new
* Fix relative links
* Update mkdocs.yml and ordering
* Fixing [!NOTE]
---------
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
* 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
* Update requirements to use new fpp version
* Removed unneeded files
* update FppTest for new autocoder changes
* Get unit tests updated and working for fpp state machines phase 1 delivery
* Rename Fw/SMTest to Fw/Sm
* Update STARS to use FW_ASSERT
* Rename SMSignalBuffer to SmSignalBuffer
* Fix spelling issues with CI
* Update requirements to the FPP alpha release v2.2.0a3
* Fix requirements.txt
* Fix requirements.txt
* Initialize data in the constructor of SmSignalBuffer
* Add constructor list to all the constructors in SmSignalBuffer
* Reorganize FppTest directories
Move external state machine tests to state_machine/external
* Add missing file
* Reorganize FppTest/state_machine
external --> external_instance
* Add state machine test harness
* Revise SmGuard
* Fix include guard
* Add header file for test harness
* Revise Basic state machine
* Revise Basic test
* Add Junction test
* Add missing file
* Refactor internal state machine tests
* Add Nested state machine
* Revise Nested test
* Revise state machine tests
* Fix issues in string utils
* Revise FppTest
Add signals to state machine tests
* Refactor state machine test harness
* Revise autocode for Basic test
Replace with actual autocode
* Update fpp version
Fix F Prime to match
Switch initial/basic test from checked-in to auto-generated
* Revise FppTest
Make state machine guards const
* Update fpp version
Convert initial/Junction test to autocode
* Update fpp version
Make initial/nested test use autocode
* Start to add State/Basic test
* Revise FppTest
Revise namespaces in state machine tests
* Revise SmState::Basic test
* Update fpp version
Convert SmState/Basic test to use autocoding
* Update FppTest
* Add SmState/BasicSelf test
* Add state/BasicGuard test
* Add SmState/BasicU32 test
* Revise state machine tests
* Refactor state machine tests
* Revise FppTest
* Revise comments
* Refactor state machine tests
* Refactor state machine tests
* Refactor state machine tests
* Refactor state machine tests
* Revise state machine tests
* Revise state machine tests
* Revise state machine tests
* Revise state machine tests
* Revise fpp tests
* Revise state machine tests
* Revise state machine tests
* Revise state machine tests
* Revise state machine tests
* Revise state machine tests
* Add README files to FPP tests
* Start to add StateToState test
* Revise StateToState test
* Revise StateToState test
* Revise StateToState test
* Revise StateToState test
* Revise StateToState test
Remove hand-generated files
* Revise StateToState tests
* Add BasicInternal test
* Update fpp version
* Revise state machine tests
* Add state-to-junction test
* Add Internal state machine test
* Add Polymorphism test
* Add StateToChild test
* Revise README files
* Add junction/Basic test
* Revise FppTest build
* Update fpp version; revise Basic test
* Revise junction tests
* Add BasicGuardU32 test
* Add BasicGuardString test
* Add BasicGuardTestAbsType test
* Add BasicGuardTestArray test
* Add BasicGuardTestEnum test
* Add BasicGuardTestStruct test
* Add junction/Sequence test
* Add junction/SequenceU32 test
* Add junction/InputPairU16U32 test
* Add JunctionToState.fpp
* Add junction/JunctionToState test
* Add junction/JunctionToJunction test
* Update fpp version
* Update fpp version
Revise test code to match
* Update fpp version
* Update fpp version
* Fix CMakeLists
* Update fpp version
* Update fpp version
* Refactor sm tests
* Refactor sm tests
* Refactor sm tests
* Update fpp version
* Start to add internal_instance tests
* Add missing files
* Revise state machine tests
* Revise state machine tests
* Revise sm instance initial tests
* Revise sm instance init tests
* Revise sm instance initial tests
* Revise sm instance initial tests
* Add sm instance state tests
* Revise sm instance state tests
* Revise sm instance state tests
* Revise sm instance state tests
* Revise sm instance state tests
* Revise internal instance state tests
* Revise sm instance state tests
* Revise sm instance state tests
* Revsie BasicGuardTestAbsType
* Revise sm instance state tests
* Revise BasicGuardTestAbsType
* Add BasicGuardTestArray
* Add BasicGuardTestEnum
* Add BasicGuardTestStruct
* Add BasicGuardU32
* Add BasicInternal
* Revise BasicInternal
* Add BasicSelf
* Reformat code
* Add BasicString test
* Add BasicTestAbsType
* Add BasicTestArray
* Add BasicTestEnum
* Add BasicTestStruct
* Add BasicU32
* Remove extraneous file
* Remove extraneous files
* Revise sm tests
* Revise state machine tests
* Add Internal test
* Add Polymorphism test
* Add StateToChild test
* Add StateToJunction test
* Add StateToSelf test
* Add StateToState test
* Add junction/Basic
* Add BasicU32 test
* Add InputPairU16U32
* Add JunctionToJunction
* Revise comments
* Add JunctionToState
* Revise JunctionToState
* Revise JunctionToJunction
* Add Sequence test
* Add Sequence test
* Revise SequenceU32 test
* Revise state machine tests
Add tests for queued components
* Revise Basic test
Add schedIn handler
* Revise junction/Basic test
Add schedIn handler
* Revise state/Basic test
Add schedIn handler
* Revise initial/Basic test
Add multiple instances of the same state machine
* Revise state/Basic test
Add multiple instances of the same state machine
* Reformat code
* Update fpp version
* Update fpp; revise FppTest
* Refactor internal/initial tests
* Revise state machine tests
* Revise internal/state tests
* Revise state-machine/internal tests
Rename junction to choice
* Revise state-machine/internal tests
* Reformat C++ files
* Revise state-machine/internal_instance/initial tests
* Revise internal_instance/state tests
* Format code
* Revise internal_instance/choice tests
* Update fpp version
* Format code
* Update fpp version
* Improve const correctness in Fw/Port
* Update design
* Revise state machines design
* Revise state machine design
* Revise state machine design
* Revise state machine design
* Revise state machine design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machine instances design
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Update fpp version
* Update fpp version; revise code to match
* Update fpp version
* Revise state machines design
* Revise state machines design
Add class diagram
* Revise state machines design
* Revise state machines design
* Revise typography
Close up spaces in names with embedded variables
* Revise state machines design
* Revise state machines design
* Revise state machines design
* Revise state machine unit tests
* Revise state machine tests
Increase code coverage
* Revise state machine tests
Increase code coverage
* Update fpp version
* Update spelling
* Remove Design directory
This directory no longer exists in fprime/devel
* Update mkdocs
---------
Co-authored-by: watney <garth.j.watney@jpl.nasa.gov>
Co-authored-by: garthwatney <160269551+garthwatney@users.noreply.github.com>
Co-authored-by: M Starch <LeStarch@googlemail.com>
* Add sequence dispatcher component
* Add seq start port to cmd sequencer
* Update author names and some include paths
* Get fully compiling, move consts/enums to correct places, check for connections on init
* Add spelling exceptions
* Get unit tests almost compiling...
* Fix string type in port, call component init in test
* Fix unit test compilation errors and assertions
* Switch back to using StringBase
* Switch to FwIndexType, remove textLogIn
* UpperCamel events, add warning for unexpected seq start
* remove init method, add check for connected to getNextAvailableIdx
* Update sdd, change event from low to high, static cast a portnum
* Add state diagram, add more warnings, fix wrong header types, use assert instead of warning for runSeq
---------
Co-authored-by: Zimri Leisher <zimri.leisher@fireflyspace.com>
* Change CI to use Json dictionaries
* Bumping to gds/tools for alpha release of JSON dictionary
* Change Workflow RPI Dictionary to JSON
* Install requirements.txt on RPIs for integration tests
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>