9 Commits

Author SHA1 Message Date
Saransh Chopra
903677e97d
Fix clang-tidy checks (#4379)
* fix(.clang-tidy): `Checks` is supposed to be a comma separated list of checks

* fix clang-tidy warning

* fix a few lint warnings

* run clang-format

* more format
2025-11-03 17:45:54 -08:00
Thomas Boyer-Chammard
89bccfa438
Differentiate sync/async ByteStreamDriver and update ComStub to work with both (#3987)
* Update ByteStream interface, interface implementations (and UTs) and ComStub

* Update ComStub UTs

* Fix RHEL8 static cast failure

* spelling

* Update Async driver to async port

* Make code more readable... part 1

* Refactor code for human readability

* Update docs

* Remove unused helper
2025-08-06 11:21:06 -07:00
Thomas Boyer-Chammard
c69ff72110
Format Svc and add to CI (#3978)
* Format Svc and add to CI

* Fix comlogger include

* fix assert UTs

* Fix static analysis warning

* formatting
2025-08-04 16:21:47 -07:00
Thomas Boyer-Chammard
c3b2e04880
Use data return pattern on Uplink and standardize port names (#3546)
* First pass at Svc + TcpClient implementation

* 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

* Update Deframer interface to include bufferReturn

* Address review comments
2025-05-08 10:54:54 -07:00
Thomas Boyer-Chammard
c2ad6e8f3b
Fix ComStub UTs type warnings (#3550) 2025-05-01 10:40:58 -07:00
Thomas Boyer-Chammard
d0246f148b
Add Framer FPP interface, implement FprimeFramer and adapt ComQueue (#3486)
* 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
2025-04-29 16:40:36 -07:00
Rob Bocchino
da11b3a7c5
Improve warning flags in builds (#3319)
* Update fpp version

Add more warnings to FppTest

* Update fpp version

Add warnings to build

* Enable warnings in unit tests

Fix warnings

* Clean up test code

* Update fpp version

Remove workarounds in unit test builds

* Update fpp version

Fix warnings

* Revise DpManager tests

Remove conversion warnings

* Revise DpWriter tests

Remove conversion warnings

* Refactor Hash

Provide a size type to remove dependencies on NATIVE_INT_TYPE,
which is going away.

* Revise top-level CMakeLists.txt

* Fix warnings in Ref

* Fix warnings in Ref, RPI

* Revise warning flags

* Revise code to eliminate warnings

* Revise code to fix warnings

* Revise code to fix warnings

* Revise code to fix warnings

* Revise Serializable.cpp

* Revise Serializable.cpp

* Revise warning flags

* Fix warnings in test code

* Fix warnings

* Fix warnings

* Fix warnings and static analysis errors

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Turn off -Wshadow for unit tests

* Revise comments

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Fix warnings

* Enable -Wshadow for main ut builds

* Revise compile options

* Remove commented-out code

* Update STest

Eliminate warnings

* Fix warning

* Fix warnings

* Fix warning

* Fix warning

* Fix warning

* Revise comments

* Revise static cast expression

* Cast return type to void

* Remove unneeded cast

* Fix warnings that appear on the F Prime dev machine

* Fix more warnings

* Enable more warnings

* Update fpp version

* Remove commented-out compiler flags

* Enable warning flag in CmdDispatcher

* Disable -Wconversion in gtest

* Revise compiler warning flags

* Revise compiler options

* Revise compiler flags

* Revise compiler flags

* Revise compiler flags

* Revise compiler flags

* Revise Buffer

* Fix comments

* Fix warning flags

* Fix compiler warning flags

* Fix compiler warnings

* Fix compiler warning flags

* Fix compiler warnings

* Fix compiler warning flags

* Fix compiler warning flags

* Fix compiler warning flags

* Fix compiler warning flags

* Fix compiler warning flags

* Fix compiler warning flags

* Fix compiler warning flags

* Fix compiler warning flags

* Revise compiler warning flags

* Restore deleted test

* Fixing UT_TARGET collision

---------

Co-authored-by: Robert L Bocchino <bocchino@fprime-fsw-0.jpl.nasa.gov>
Co-authored-by: Michael D Starch <Michael.D.Starch@jpl.nasa.gov>
Co-authored-by: M Starch <LeStarch@googlemail.com>
2025-03-12 12:04:43 -07:00
M Starch
a5c853b9cf
NATIVE_INT_TYPE portNum to FwIndexType portNum (#3236) 2025-02-14 12:25:12 -08:00
M Starch
f797734994
Integrate/fpp v2 (#2293)
* WIP: FPP v2

* Initial integration of FPP UT generation

* Updating UT GTestBase.hpp includes

* Update fpp version

* Revise header path

* Revise test; add modified generated code

* Revise modified code gen

* Revise modified generated code

* Add and move files

* Revise Fpp tests

* Add fpp deps

* Update fpp version

* Update include paths

* Fix unit tests

* Fix unit tests

* Revise TlmPacketizer test

* Fix unit tests

* Fix unit tests

* Delete temporary files

* Updating for new FPP tools flags

* Bump for fixed FPP tools

* Migrating TcpServer unit tests to v3.4.0 standards

* Migrating Udp unit tests to v3.4.0 standards

* Migrating LinuxSpiDriver unit tests to v3.4.0 standards

* Migrating LinuxI2cDriver unit tests to v3.4.0 standards

* Migrating LinuxGpioDriver unit tests to v3.4.0 standards

* Migrating TcpClient unit tests to v3.4.0 standards

* Migrating StreamCrossover unit tests to v3.4.0 standards

* Migrating SignalGen unit tests to v3.4.0 standards

* Migrating Checksum unit tests to v3.4.0 standards

* Migrating queued unit tests to v3.4.0 standards

* Migrating empty unit tests to v3.4.0 standards

* Migrating passive unit tests to v3.4.0 standards

* Migrating active unit tests to v3.4.0 standards

* Migrating FilePacket unit tests to v3.4.0 standards

* Migrating Logger unit tests to v3.4.0 standards

* Migrating port_return_type unit tests to v3.4.0 standards

* Migrating ext_dict unit tests to v3.4.0 standards

* Migrating time_tester unit tests to v3.4.0 standards

* Migrating serial_passive unit tests to v3.4.0 standards

* Migrating tlm_multi_inst unit tests to v3.4.0 standards

* Migrating param2 unit tests to v3.4.0 standards

* Migrating param_string unit tests to v3.4.0 standards

* Migrating command_string unit tests to v3.4.0 standards

* Migrating command_res unit tests to v3.4.0 standards

* Migrating tlm_onchange unit tests to v3.4.0 standards

* Migrating param_multi_inst unit tests to v3.4.0 standards

* Migrating command2 unit tests to v3.4.0 standards

* Migrating port_nogen unit tests to v3.4.0 standards

* Migrating tlm2 unit tests to v3.4.0 standards

* Migrating command_tester unit tests to v3.4.0 standards

* Migrating event2 unit tests to v3.4.0 standards

* Migrating param_tester unit tests to v3.4.0 standards

* Migrating tlm_string unit tests to v3.4.0 standards

* Migrating testgen unit tests to v3.4.0 standards

* Migrating log_tester unit tests to v3.4.0 standards

* Migrating port_loopback unit tests to v3.4.0 standards

* Migrating param_enum unit tests to v3.4.0 standards

* Migrating command_multi_inst unit tests to v3.4.0 standards

* Migrating log1 unit tests to v3.4.0 standards

* Migrating event_multi_inst unit tests to v3.4.0 standards

* Migrating serialize_user unit tests to v3.4.0 standards

* Migrating telem_tester unit tests to v3.4.0 standards

* Migrating param1 unit tests to v3.4.0 standards

* Migrating event_throttle unit tests to v3.4.0 standards

* Migrating string_port unit tests to v3.4.0 standards

* Migrating command1 unit tests to v3.4.0 standards

* Migrating noargport unit tests to v3.4.0 standards

* Migrating time_get unit tests to v3.4.0 standards

* Migrating event_enum unit tests to v3.4.0 standards

* Migrating comp_no_namespace unit tests to v3.4.0 standards

* Migrating event1 unit tests to v3.4.0 standards

* Migrating event_string unit tests to v3.4.0 standards

* Migrating tlm1 unit tests to v3.4.0 standards

* Migrating comp_diff_namespace unit tests to v3.4.0 standards

* Migrating tlm_enum unit tests to v3.4.0 standards

* Migrating pass_by_attrib unit tests to v3.4.0 standards

* Migrating stress unit tests to v3.4.0 standards

* Migrating interface1 unit tests to v3.4.0 standards

* Migrating templates unit tests to v3.4.0 standards

* Migrating FileUplink unit tests to v3.4.0 standards

* Migrating ComLogger unit tests to v3.4.0 standards

* Migrating SystemResources unit tests to v3.4.0 standards

* Migrating TlmPacketizer unit tests to v3.4.0 standards

* Migrating ComStub unit tests to v3.4.0 standards

* Migrating ComSplitter unit tests to v3.4.0 standards

* Migrating Health unit tests to v3.4.0 standards

* Migrating BufferLogger unit tests to v3.4.0 standards

* Migrating AssertFatalAdapter unit tests to v3.4.0 standards

* Migrating FileDownlink unit tests to v3.4.0 standards

* Migrating StaticMemory unit tests to v3.4.0 standards

* Migrating CmdSequencer unit tests to v3.4.0 standards

* Migrating Framer unit tests to v3.4.0 standards

* Migrating GroundInterface unit tests to v3.4.0 standards

* Migrating FileManager unit tests to v3.4.0 standards

* Migrating ActiveTextLogger unit tests to v3.4.0 standards

* Migrating LinuxTime unit tests to v3.4.0 standards

* Migrating Deframer unit tests to v3.4.0 standards

* Migrating Deframer unit tests to v3.4.0 standards

* Migrating BufferRepeater unit tests to v3.4.0 standards

* Migrating TlmChan unit tests to v3.4.0 standards

* Migrating GenericHub unit tests to v3.4.0 standards

* Migrating BufferAccumulator unit tests to v3.4.0 standards

* Migrating LinuxTimer unit tests to v3.4.0 standards

* Migrating BufferManager unit tests to v3.4.0 standards

* Migrating CmdSplitter unit tests to v3.4.0 standards

* Migrating ComQueue unit tests to v3.4.0 standards

* Migrating Os unit tests to v3.4.0 standards

* Federating FPP tools with release versions

* Python formatting

* Reverting FPPTest to correctly working build

* Removing minor dead code and comments

---------

Co-authored-by: bocchino <bocchino@jpl.nasa.gov>
2023-10-05 14:42:09 -07:00