nasa / fprime

F´ - A flight software and embedded systems framework
https://fprime.jpl.nasa.gov
Apache License 2.0
10.02k stars 1.29k forks source link

Create F´ Interfaces From Existing Concepts #2578

Open LeStarch opened 5 months ago

LeStarch commented 5 months ago
F´ Version
Affected Component

Feature Description

Many F´ concepts can be reworked as F´ interfaces. These are specialized .fppi files that define a set of ports. An example would be: https://github.com/nasa/fprime/blob/devel/Drv/Interfaces/ByteStreamDriverInterface.fppi.

Interfaces are expected to live in a folder Interfaces under a given package (e.g. Drv/Interfaces or Svc/Sinterfaces).

New interfaces should use the filename pattern *.interface.fppi and not just .fppi. This is a change since the example was created.

Here is a list of interfaces that should be created:

I2c, Gpio, Spi, and ByteStreamDriver items should also have a *UserInterface.fppi for callers/managers using these inferaces. These issues have not been created. These are the same ports with the directions reversed.