Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: NaturalTinyShell_ice libmDot-12Sept mbed-rtos mbed
Fork of ICE by
src/ConfigurationHandler/ConfigurationHandler.h@284:cc72206ea8e0, 2016-10-28 (annotated)
- Committer:
- jinu
- Date:
- Fri Oct 28 18:44:12 2016 +0000
- Revision:
- 284:cc72206ea8e0
- Parent:
- 252:3c9863f951b7
modified for live data testing
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jmarkel44 | 0:65cfa4873284 | 1 | /****************************************************************************** |
jmarkel44 | 0:65cfa4873284 | 2 | * |
jmarkel44 | 0:65cfa4873284 | 3 | * File: ConfigurationHandler.h |
jmarkel44 | 0:65cfa4873284 | 4 | * Desciption: interface file for the ICE Configuration Handler |
jmarkel44 | 0:65cfa4873284 | 5 | * |
jmarkel44 | 0:65cfa4873284 | 6 | *****************************************************************************/ |
jmarkel44 | 0:65cfa4873284 | 7 | #ifndef CONFIGURATION_HANDLER_H |
jmarkel44 | 0:65cfa4873284 | 8 | #define CONFIGURATION_HANDLER_H |
jmarkel44 | 0:65cfa4873284 | 9 | |
jmarkel44 | 46:4cb96ab2d1c8 | 10 | #include "SetpointControl.h" |
jmarkel44 | 46:4cb96ab2d1c8 | 11 | #include "TimerControl.h" |
jmarkel44 | 97:5cf6ab71dcd0 | 12 | #include "ManualControl.h" |
jmarkel44 | 220:dbe21411f962 | 13 | #include "CompositeControl.h" |
jmarkel44 | 250:1cd8ec63e9e9 | 14 | #include "FailsafeControl.h" |
jmarkel44 | 221:2a5e9902003c | 15 | #include "CompositeAlgorithm.h" |
jmarkel44 | 46:4cb96ab2d1c8 | 16 | #include <map> |
jmarkel44 | 46:4cb96ab2d1c8 | 17 | |
jmarkel44 | 221:2a5e9902003c | 18 | typedef struct va_tag { |
jmarkel44 | 221:2a5e9902003c | 19 | std::string tag; |
jmarkel44 | 221:2a5e9902003c | 20 | std::string opr; |
jmarkel44 | 221:2a5e9902003c | 21 | std::string op; |
jmarkel44 | 221:2a5e9902003c | 22 | } VirtualAlgorithm; |
jmarkel44 | 221:2a5e9902003c | 23 | |
jmarkel44 | 221:2a5e9902003c | 24 | |
jmarkel44 | 0:65cfa4873284 | 25 | void ConfigurationHandler(void const *args); |
jmarkel44 | 221:2a5e9902003c | 26 | |
jmarkel44 | 221:2a5e9902003c | 27 | // APIs |
jmarkel44 | 12:ea87887ca7ad | 28 | void ConfigurationHandler_showControls(void); |
jmarkel44 | 221:2a5e9902003c | 29 | void ConfigurationHandler_showAlgorithms(void); |
jmarkel44 | 12:ea87887ca7ad | 30 | |
jmarkel44 | 156:44f87c5a83ae | 31 | // map["control_sp_1.json"] : setpointControl |
jmarkel44 | 46:4cb96ab2d1c8 | 32 | typedef map<string, SetpointControl*> StringSetpointMap; |
jmarkel44 | 156:44f87c5a83ae | 33 | |
jmarkel44 | 156:44f87c5a83ae | 34 | // map["o_rly1"] : vector<TimerControl>.first |
jmarkel44 | 156:44f87c5a83ae | 35 | // vector<TimerControl>.second |
jmarkel44 | 156:44f87c5a83ae | 36 | // map["o_rly2"] : vector<TimerControl>.first |
jmarkel44 | 156:44f87c5a83ae | 37 | typedef map<string, vector<TimerControl*> > StringVectorTimerMap; |
jmarkel44 | 156:44f87c5a83ae | 38 | |
jmarkel44 | 156:44f87c5a83ae | 39 | //map["control_mn_1.json"] : manualControl |
jmarkel44 | 97:5cf6ab71dcd0 | 40 | typedef map<string, ManualControl*> StringManualMap; |
jmarkel44 | 46:4cb96ab2d1c8 | 41 | |
jmarkel44 | 221:2a5e9902003c | 42 | // map["control_cmp_1.json"] : compositeControl |
jmarkel44 | 220:dbe21411f962 | 43 | typedef map<string, CompositeControl*> StringCompositeMap; |
jmarkel44 | 220:dbe21411f962 | 44 | |
jmarkel44 | 250:1cd8ec63e9e9 | 45 | // map["control_fs_rly1.json"] : failsafeControl |
jmarkel44 | 250:1cd8ec63e9e9 | 46 | typedef map<string, FailsafeControl*> StringFailsafeMap; |
jmarkel44 | 250:1cd8ec63e9e9 | 47 | |
jmarkel44 | 221:2a5e9902003c | 48 | // map["EQUAL_TO_1"].<operands stucture> |
jmarkel44 | 221:2a5e9902003c | 49 | typedef map<string, CompositeAlgorithm *> StringAlgorithmMap; |
jmarkel44 | 221:2a5e9902003c | 50 | |
jmarkel44 | 156:44f87c5a83ae | 51 | extern StringSetpointMap setpointTable; |
jmarkel44 | 220:dbe21411f962 | 52 | extern StringVectorTimerMap timerTable; |
jmarkel44 | 156:44f87c5a83ae | 53 | extern StringManualMap manualTable; |
jmarkel44 | 221:2a5e9902003c | 54 | extern StringCompositeMap compositeTable; |
jmarkel44 | 221:2a5e9902003c | 55 | extern StringAlgorithmMap algorithmTable; |
jmarkel44 | 252:3c9863f951b7 | 56 | extern StringFailsafeMap failsafeTable; |
jmarkel44 | 0:65cfa4873284 | 57 | |
jmarkel44 | 0:65cfa4873284 | 58 | #endif |