25 #include <boost/asio/io_service.hpp> 26 #include <boost/property_tree/ptree.hpp> 28 #include <zmqpp/reactor.hpp> 29 #include <zmqpp/socket.hpp> 50 class PFDigitalModule;
64 : BaseModuleSupportThread(core_utils, {})
71 void test_output_pin(
const UUID &gpio_id);
85 PFDigitalModule(zmqpp::context &ctx, zmqpp::socket *module_manager_pipe,
86 const boost::property_tree::ptree &config,
CoreUtilsPtr utils);
94 virtual void run()
override;
100 void handle_interrupt();
105 void process_xml_config(
const boost::property_tree::ptree &cfg);
110 void process_config();
115 void setup_database();
117 void load_config_from_database();
136 bool get_input_pin_name(std::string &dest,
int idx, uint8_t hw_addr);
A service object provided by the Websocket module.
Main class for the piface digital module.
Some ~const parameter that are required to process websocket requests.
This is the header file for a generated source file, GitSHA1.cpp.
zmqpp::socket bus_push_
Socket to push event to the bus.
WSHelperThread ws_helper_thread_
Support thread for processing websocket requests.
Thin wrapper around boost::uuids::uuid.
Base class for module implementation.
std::vector< PFDigitalPin > gpios_
GPIO vector.
WSHelperThread(const CoreUtilsPtr &core_utils)
std::shared_ptr< CoreUtils > CoreUtilsPtr
bool degraded_mode_
True if we are running in "degraded" mode (ie, not on a device that support the PifaceDigital).
This class provide a base implementation -designed to be extended by subclass- so that non-boost-asio...
int interrupt_fd_
File descriptor of the PIN that triggers interrupts.