Skip to content

Commit

Permalink
Fix nasa#1216, Update Directory Diagrams in App Developer Guide
Browse files Browse the repository at this point in the history
  • Loading branch information
arielswalker committed Aug 27, 2021
1 parent 73c1565 commit 76dbe79
Show file tree
Hide file tree
Showing 8 changed files with 91 additions and 16 deletions.
107 changes: 91 additions & 16 deletions docs/cFE Application Developers Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -303,21 +303,104 @@ a variation on this standard.

## 2.1 Directory Tree

The following diagrams show the standard development and build directory
The following shows the standard development and build directory
tree or mission tree as it is often referred to. The purpose of each
directory is described as a note under each folder.

![](.//media/cFE_Application_Developers_Guide_image4.png)

![](.//media/cFE_Application_Developers_Guide_image5.png)

![](.//media/cFE_Application_Developers_Guide_image6.png)

```
-- missionxyz
|-- cfe
| |-- Contains a copy of the cFE component
|-- osal
| |-- Contains a copy of the OSAL component
|-- psp
| |-- Contains the Platform Suport Package (PSP) library.
| |-- Can customize PSP implementation for each CPU and OS that the project needs.
|-- build
| |-- The flight software is all configured and built under this directory.
| |-- All mission and platform configuration files are placed here.
|-- apps
| |-- Contains application source code.
| |-- Application source code may be shared amoung multiple build CPUs.
|-- libs
| |-- Contains Core Flight System (cFS) Sample Library (sample_lib).
|-- tools
| |-- Contains Core Flight System (cFS) tools.
```
Module descriptions are provided in the table below.
```
-- missionxyz/cfe
|-- cmake
| |-- sample_defs
| |-- target
| |-- inc
| |-- src
|-- docs
|-- modules
|-- cfe_assert
|-- cfe_testcase
|-- cfe_testrunner
|-- core_api
|-- core_private
|-- es
|-- evs
|-- fs
|-- msg
|-- resourceid
|-- sb
|-- sbr
|-- tbl
|-- time
```
```
-- missionxyz/build
|-- CMakeFiles
|-- cpu1
| |-- default_cpu1
| |-- CMakeFiles
| |-- apps
| |-- core_api
| |-- core_private
| |-- cpu1
| |-- es
| |-- evs
| |-- fs
| |-- inc
| |-- msg
| |-- osal
| |-- psp
| |-- resourceid
| |-- sb
| |-- sbr
| |-- tbl
| |-- time
|-- cpuN
|-- docs
|-- exe
|-- inc
|-- src
|-- tools
```
```
-- missionxyz/apps
|-- ci_lab
|-- sample_app
|-- sch_lab
|-- to_lab
```
```
-- missionxyz/tools
|-- cFS-GroundSystem
|-- elf2cfetbl
|-- tblCRCTool
```
Each cFE core component is itself a modular entity, all of which work together to form the
complete cFE core executive. These modules are all contained under the `modules` subdirectory:

| **Directory** | **Content** |
|:------------------------|:------------------------------------------------------------------------------------------------------------------ |
| `modules/cfe_assert/` | A CFE-compatible library wrapping the basic UT assert library. This is the same library that all other unit tests use, but configured to be dynamically loaded into the CFE environment, and using CFE syslog for its output. This must be the first library loaded for any functional test. |
| `modules/cfe_testcase/` | A CFE-compatible library implementing test cases for CFE core apps. This must be loaded after cfe_assert. |
| `modules/cfe_testrunner/` | A CFE application that actually executes the tests. This is a very simple app that waits for CFE startup to complete, then executes all registered test cases. It also must be loaded after cfe_assert. |
| `modules/core_api/` | Contains the public interface definition of the complete CFE core - public API/headers only, no implementation |
| `modules/core_private/` | Contains the inter-module interface definition of the CFE core - internal API/headers only, no implementation |
| `modules/es/` | Implementation of the Executive Services (ES) core module - provides app and task management |
Expand All @@ -343,15 +426,7 @@ Each module directory is in turn divided into subdirectories as follows:
| _module_`/ut-coverage/` | Coverage tests to provide line/branch testing (correlates with internal implementation in `fsw/src`) |
| _module_`/eds/` | Command & Telemetry interface description as a CCSDS book 876.0 Electronic Data Sheet |

![](.//media/cFE_Application_Developers_Guide_image7.png)

![](.//media/cFE_Application_Developers_Guide_image8.png)

![](.//media/cFE_Application_Developers_Guide_image9.png)

![](.//media/cFE_Application_Developers_Guide_image10.png)

![](.//media/cFE_Application_Developers_Guide_image11.png)

## 2.2 Header Files

Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 comments on commit 76dbe79

Please sign in to comment.