Erick / Mbed 2 deprecated ICE-F412

Dependencies:   mbed-rtos mbed

Committer:
jmarkel44
Date:
Tue Jan 24 19:05:33 2017 +0000
Revision:
0:61364762ee0e
Port from IAR to Nucleo-F412 board

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jmarkel44 0:61364762ee0e 1 /******************************************************************************
jmarkel44 0:61364762ee0e 2 *
jmarkel44 0:61364762ee0e 3 * File: ConfigurationHandler.h
jmarkel44 0:61364762ee0e 4 * Desciption: interface file for the ICE Configuration Handler
jmarkel44 0:61364762ee0e 5 *
jmarkel44 0:61364762ee0e 6 *****************************************************************************/
jmarkel44 0:61364762ee0e 7 #ifndef CONFIGURATIONHANDLER_H
jmarkel44 0:61364762ee0e 8 #define CONFIGURATIONHANDLER_H
jmarkel44 0:61364762ee0e 9
jmarkel44 0:61364762ee0e 10 #include "./Controls/SetpointControl.h"
jmarkel44 0:61364762ee0e 11 #include "./Controls/TimerControl.h"
jmarkel44 0:61364762ee0e 12 #include "./Controls/ManualControl.h"
jmarkel44 0:61364762ee0e 13 #include "./Controls/CompositeControl.h"
jmarkel44 0:61364762ee0e 14 #include "./Controls/PIDControl.h"
jmarkel44 0:61364762ee0e 15 #include "./Controls/FailsafeControl.h"
jmarkel44 0:61364762ee0e 16 #include "./Controls/SensorErrorControl.h"
jmarkel44 0:61364762ee0e 17 #include "./Controls/SequenceControl.h"
jmarkel44 0:61364762ee0e 18 #include "./Algorithms/CompositeAlgorithm.h"
jmarkel44 0:61364762ee0e 19 #include <map>
jmarkel44 0:61364762ee0e 20
jmarkel44 0:61364762ee0e 21 // file naming prefix conventions
jmarkel44 0:61364762ee0e 22 #define CONTROL_SP_STR "control_sp_"
jmarkel44 0:61364762ee0e 23 #define CONTROL_TM_STR "control_tm_"
jmarkel44 0:61364762ee0e 24 #define CONTROL_MN_STR "control_mn_"
jmarkel44 0:61364762ee0e 25 #define CONTROL_COMP_STR "control_comp_"
jmarkel44 0:61364762ee0e 26 #define CONTROL_CA_STR "control_ca_"
jmarkel44 0:61364762ee0e 27 #define CONTROL_FS_STR "control_fs_"
jmarkel44 0:61364762ee0e 28 #define CONTROL_SE_STR "control_se_"
jmarkel44 0:61364762ee0e 29 #define CONTROL_PID_STR "control_pid_"
jmarkel44 0:61364762ee0e 30 #define CONTROL_ADM_STR "control_adm_"
jmarkel44 0:61364762ee0e 31 #define CONTROL_SEQ_STR "control_seq_"
jmarkel44 0:61364762ee0e 32
jmarkel44 0:61364762ee0e 33 #define VIRTUAL_OUTPUT_PREFIX "v_"
jmarkel44 0:61364762ee0e 34
jmarkel44 0:61364762ee0e 35 typedef struct va_tag {
jmarkel44 0:61364762ee0e 36 std::string tag;
jmarkel44 0:61364762ee0e 37 std::string opr;
jmarkel44 0:61364762ee0e 38 std::string op;
jmarkel44 0:61364762ee0e 39 } VirtualAlgorithm;
jmarkel44 0:61364762ee0e 40
jmarkel44 0:61364762ee0e 41 void ConfigurationHandler(void const *args);
jmarkel44 0:61364762ee0e 42
jmarkel44 0:61364762ee0e 43 // Public APIs
jmarkel44 0:61364762ee0e 44 void ConfigurationHandler_showControls(void);
jmarkel44 0:61364762ee0e 45 void ConfigurationHandler_showAlgorithms(void);
jmarkel44 0:61364762ee0e 46 void ConfigurationHandler_showTimerControls(void);
jmarkel44 0:61364762ee0e 47 void ConfigurationHandler_showManualControls(void);
jmarkel44 0:61364762ee0e 48 void ConfigurationHandler_showSetpointControls(void);
jmarkel44 0:61364762ee0e 49 void ConfigurationHandler_showCompositeControls(void);
jmarkel44 0:61364762ee0e 50 void ConfigurationHandler_showFailsafeControls(void);
jmarkel44 0:61364762ee0e 51 void ConfigurationHandler_showSensorErrorControls(void);
jmarkel44 0:61364762ee0e 52 void ConfigurationHandler_showSequenceControls(void);
jmarkel44 0:61364762ee0e 53
jmarkel44 0:61364762ee0e 54 // map["control_sp_1.json"] : setpointControl
jmarkel44 0:61364762ee0e 55 typedef std::map<std::string, SetpointControl*> StringSetpointMap;
jmarkel44 0:61364762ee0e 56
jmarkel44 0:61364762ee0e 57 // map["control_tm_rly01.json"] : timerControl
jmarkel44 0:61364762ee0e 58 typedef std::map<std::string, TimerControl*> StringTimerMap;
jmarkel44 0:61364762ee0e 59
jmarkel44 0:61364762ee0e 60 //map["control_mn_1.json"] : manualControl
jmarkel44 0:61364762ee0e 61 typedef std::map<std::string, ManualControl*> StringManualMap;
jmarkel44 0:61364762ee0e 62
jmarkel44 0:61364762ee0e 63 // map["control_pid_1.json"] : PIDControl
jmarkel44 0:61364762ee0e 64 //typedef std::map<std::string, PIDControl *> StringPIDMap;
jmarkel44 0:61364762ee0e 65
jmarkel44 0:61364762ee0e 66 // map["control_cmp_1.json"] : compositeControl
jmarkel44 0:61364762ee0e 67 typedef std::map<std::string, CompositeControl*> StringCompositeMap;
jmarkel44 0:61364762ee0e 68
jmarkel44 0:61364762ee0e 69 // map["control_fs_rly1.json"] : failsafeControl
jmarkel44 0:61364762ee0e 70 typedef std::map<std::string, FailsafeControl*> StringFailsafeMap;
jmarkel44 0:61364762ee0e 71
jmarkel44 0:61364762ee0e 72 // map["control_se_bdcond.json"] : sensorErrorControl
jmarkel44 0:61364762ee0e 73 typedef std::map<std::string, SensorErrorControl*> StringSensorErrorMap;
jmarkel44 0:61364762ee0e 74
jmarkel44 0:61364762ee0e 75 // map["EQUAL_TO_1"].<operands stucture>
jmarkel44 0:61364762ee0e 76 typedef std::map<std::string, CompositeAlgorithm *> StringAlgorithmMap;
jmarkel44 0:61364762ee0e 77
jmarkel44 0:61364762ee0e 78 // map["control_seq_slug.json"] : sequenceControl
jmarkel44 0:61364762ee0e 79 typedef std::map<std::string, SequenceControl *> StringSequenceMap;
jmarkel44 0:61364762ee0e 80
jmarkel44 0:61364762ee0e 81 extern StringSetpointMap setpointTable;
jmarkel44 0:61364762ee0e 82 extern StringTimerMap timerTable;
jmarkel44 0:61364762ee0e 83 extern StringManualMap manualTable;
jmarkel44 0:61364762ee0e 84 //extern StringPIDMap PIDTable;
jmarkel44 0:61364762ee0e 85 extern StringCompositeMap compositeTable;
jmarkel44 0:61364762ee0e 86 extern StringAlgorithmMap algorithmTable;
jmarkel44 0:61364762ee0e 87 extern StringFailsafeMap failsafeTable;
jmarkel44 0:61364762ee0e 88 extern StringSensorErrorMap sensorErrorTable;
jmarkel44 0:61364762ee0e 89 extern StringSequenceMap sequenceTable;
jmarkel44 0:61364762ee0e 90
jmarkel44 0:61364762ee0e 91 extern Mutex manual_mutex;
jmarkel44 0:61364762ee0e 92 extern Mutex setpoint_mutex;
jmarkel44 0:61364762ee0e 93 extern Mutex timer_mutex;
jmarkel44 0:61364762ee0e 94 extern Mutex failsafe_mutex;
jmarkel44 0:61364762ee0e 95 extern Mutex sensorError_mutex;
jmarkel44 0:61364762ee0e 96 extern Mutex composite_mutex;
jmarkel44 0:61364762ee0e 97 extern Mutex sequence_mutex;
jmarkel44 0:61364762ee0e 98
jmarkel44 0:61364762ee0e 99 #endif