forked from nasa/fprime
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
5c1dd45
commit 2a5dba3
Showing
6 changed files
with
213 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
#### | ||
# F prime CMakeLists.txt: | ||
# | ||
# SOURCE_FILES: combined list of source and autocoding files | ||
# MOD_DEPS: (optional) module dependencies | ||
# UT_SOURCE_FILES: list of source files for unit tests | ||
# | ||
#### | ||
set(SOURCE_FILES | ||
"${CMAKE_CURRENT_LIST_DIR}/Version.fpp" | ||
"${CMAKE_CURRENT_LIST_DIR}/Version.cpp" | ||
) | ||
|
||
# Uncomment and add any modules that this component depends on, else | ||
# they might not be available when cmake tries to build this component. | ||
|
||
set(MOD_DEPS | ||
Os | ||
version | ||
) | ||
|
||
register_fprime_module() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
// ====================================================================== | ||
// \title Version.cpp | ||
// \author sreddy | ||
// \brief cpp file for Version component implementation class | ||
// ====================================================================== | ||
|
||
#include "FpConfig.hpp" | ||
#include "Svc/Version/Version.hpp" | ||
|
||
namespace Svc { | ||
|
||
// ---------------------------------------------------------------------- | ||
// Component construction and destruction | ||
// ---------------------------------------------------------------------- | ||
|
||
Version :: | ||
Version(const char* const compName) : | ||
VersionComponentBase(compName) | ||
{ | ||
|
||
} | ||
|
||
Version :: | ||
~Version() | ||
{ | ||
|
||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
module Svc { | ||
@ Tracks veramework, user defined versions etc | ||
passive component Version { | ||
|
||
############################################################################## | ||
#### Uncomment the following examples to start customizing your component #### | ||
############################################################################## | ||
|
||
# @ Example async command | ||
# async command COMMAND_NAME(param_name: U32) | ||
|
||
# @ Example telemetry counter | ||
# telemetry ExampleCounter: U64 | ||
|
||
# @ Example event | ||
# event ExampleStateEvent(example_state: Fw.On) severity activity high id 0 format "State set to {}" | ||
|
||
# @ Example port: receiving calls from the rate group | ||
# sync input port run: Svc.Sched | ||
|
||
# @ Example parameter | ||
# param PARAMETER_NAME: U32 | ||
|
||
############################################################################### | ||
# Standard AC Ports: Required for Channels, Events, Commands, and Parameters # | ||
############################################################################### | ||
@ Port for requesting the current time | ||
time get port timeCaller | ||
|
||
@ Port for sending command registrations | ||
command reg port cmdRegOut | ||
|
||
@ Port for receiving commands | ||
command recv port cmdIn | ||
|
||
@ Port for sending command responses | ||
command resp port cmdResponseOut | ||
|
||
@ Port for sending textual representation of events | ||
text event port logTextOut | ||
|
||
@ Port for sending events to downlink | ||
event port logOut | ||
|
||
@ Port for sending telemetry channels to downlink | ||
telemetry port tlmOut | ||
|
||
@ Port to return the value of a parameter | ||
param get port prmGetOut | ||
|
||
@Port to set the value of a parameter | ||
param set port prmSetOut | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
// ====================================================================== | ||
// \title Version.hpp | ||
// \author sreddy | ||
// \brief hpp file for Version component implementation class | ||
// ====================================================================== | ||
|
||
#ifndef Svc_Version_HPP | ||
#define Svc_Version_HPP | ||
|
||
#include "Svc/Version/VersionComponentAc.hpp" | ||
|
||
namespace Svc { | ||
|
||
class Version : | ||
public VersionComponentBase | ||
{ | ||
|
||
public: | ||
|
||
// ---------------------------------------------------------------------- | ||
// Component construction and destruction | ||
// ---------------------------------------------------------------------- | ||
|
||
//! Construct Version object | ||
Version( | ||
const char* const compName //!< The component name | ||
); | ||
|
||
//! Destroy Version object | ||
~Version(); | ||
|
||
}; | ||
|
||
} | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# Svc::Version | ||
|
||
Tracks versions for framework,project, libraries and user defined project specific versions. | ||
|
||
## Usage Examples | ||
Add usage examples here | ||
|
||
### Diagrams | ||
Add diagrams here | ||
|
||
### Typical Usage | ||
And the typical usage of the component here | ||
|
||
## Class Diagram | ||
Add a class diagram here | ||
|
||
## Port Descriptions | ||
| Name | Description | | ||
|---|---| | ||
|---|---| | ||
|
||
## Component States | ||
Add component states in the chart below | ||
| Name | Description | | ||
|---|---| | ||
|---|---| | ||
|
||
## Sequence Diagrams | ||
Add sequence diagrams here | ||
|
||
## Parameters | ||
| Name | Description | | ||
|---|---| | ||
|---|---| | ||
|
||
## Commands | ||
| Name | Description | | ||
|---|---| | ||
|---|---| | ||
|
||
## Events | ||
| Name | Description | | ||
|---|---| | ||
|---|---| | ||
|
||
## Telemetry | ||
| Name | Description | | ||
|---|---| | ||
|---|---| | ||
|
||
## Unit Tests | ||
Add unit test descriptions in the chart below | ||
| Name | Description | Output | Coverage | | ||
|---|---|---|---| | ||
|---|---|---|---| | ||
|
||
## Requirements | ||
|
||
| Name | Description | Validation | | ||
|---|---|---| | ||
|SVC-VERSION-001|`Svc::Version` shall create an EVR indicating versions of framework, project and libary at start-up and on command| This is to provide transparency to users on versions being used| | ||
|SVC-VERSION-002|`Svc::Version` shall provide a telemetry channel on framework version| Accessiblity to versions being used| | ||
|SVC-VERSION-003|`Svc::Version` shall provide a telemetry channel on project version| Accessiblity to versions being used| | ||
|SVC-VERSION-004|`Svc::Version` shall provide a telemetry channel on library version| Accessiblity to versions being used| | ||
|SVC-VERSION-005|`Svc::Version` shall provide an interface for users to set custom versions.| Enables projects to set hardware and FPGA versions as needed| | ||
|
||
## Change Log | ||
| Date | Description | | ||
|---|---| | ||
|---| Initial Draft | |