![]()  | 
  
    F´ Flight Software - C/C++ Documentation
    devel
    
   A framework for building embedded system applications to NASA flight quality standards. 
   | 
 
The Svc::PolyDb component is meant to act as a resident database of values that components can use for checking or for data in algorithms.
The requirements for Svc::PolyDb are as follows:
| Requirement | Description | Verification Method | 
|---|---|---|
| PDB-001 | The Svc::PolyDb component shall store Fw::PolyType values.    | Inspection, Unit Test | 
| PDB-002 | The Svc::PolyDb component shall allow the Fw::PolyType values to be read and written.    | Unit Test | 
| PDB-003 | The Svc::PolyDb component shall time tag the data    | Unit Test | 
| PDB-004 | The Svc::PolyDb component shall report the measurement state of the data (good, stale, failure)    | Unit Test | 
The Svc::PolyDb component has the following component diagram:

The Svc::RateGroupDriver component uses the following port types:
| Port Data Type | Name | Direction | Kind | Usage | 
|---|---|---|---|---|
Svc::Poly    | getValue | Input | Guarded | Write Fw::PolyType values     | 
Svc::Poly    | setValue | Input | Guarded | Write Fw::PolyType values    | 
Fw::PolyType is different from binary telemetry in that it is not in a serialized form, but is stored as the native type. The component stores a table of ‘Fw::PolyType’ objects which are read and written by table index. The table is protected by a mutex to prevent simultaneous access.
As described in the Functional Description section, the RateGroupDriver component accepts calls to the SchedIn and divides them down to the SchedOut ports:

Svc::PolyDb has no state machines.
Svc::PolyDb has no significant algorithms.
No dictionaries
| Document | Link | 
|---|---|
| Design Checklist | Link | 
| Code Checklist | Link | 
| Unit Test Checklist | Link | 
To see unit test coverage run fprime-util check –coverage
| Date | Description | 
|---|---|
| 6/19/2015 | Design review edits | 
| 7/22/2015 | Design review actions | 
| 9/15.2015 | Unit Test actions |