/** Sanity check function **/
SanityFn sanity;
/** Cleanup function **/
- CleanFn clean;
+ CleanFn cleanup;
+ /** Last setting **/
+ DataPoint last_setting;
} Actuator;
extern void Actuator_Init(); // One off initialisation of *all* Actuators
+extern void Actuator_Cleanup();
extern void Actuator_SetModeAll(ControlModes mode, void *arg);
extern void Actuator_SetMode(Actuator * a, ControlModes mode, void *arg);
extern void * Actuator_Loop(void * args); // Main loop for a thread that handles an Actuator
-extern void Actuator_SetValue(Actuator * a, double value); // Set an actuator by value
+extern void Actuator_SetValue(Actuator * a, double value, bool record); // Set an actuator by value
extern void Actuator_SetControl(Actuator * a, ActuatorControl * c); // Set the control for an Actuator
extern Actuator * Actuator_Identify(const char * str); // Identify a Sensor from a string Id
extern void Actuator_Handler(FCGIContext *context, char * params); // Handle a FCGI request for Actuator control
extern const char * Actuator_GetName(int id);
+extern DataPoint Actuator_LastData(int id);
#endif //_ACTUATOR_H