#include <machine.h>
◆ Machine()
◆ ~Machine()
◆ abort_client_requests()
void Machine::abort_client_requests |
( |
const std::string & |
connection_id | ) |
|
|
pure virtual |
◆ add_message()
Add a new incoming machine message to the queue.
- Parameters
-
◆ command_workers_done()
bool Machine::command_workers_done |
( |
| ) |
|
Check if all started Command Workers are done.
This function can be called from the outside to check if all of the threads created for Command Workers are done before cleaning up (e.g. stopping VDM - stopping of the VDM before all threads are done may cause them to try to access drives that are no longer available, thus causing segmentation faults).
- Returns
- true if all Command Worker threads are done, false otherwise
◆ done()
virtual bool Machine::done |
( |
| ) |
|
|
pure virtual |
Check if all of the machine started processes are done (including the Command Workers)
- Returns
- true if all of the processes are done, false otherwise
Implemented in DeviceProcedureMachine, EncoderCalibrationMachine, FirmwareMachine, FullAutoTuningMachine, MonitorMachine, MotionControlMachine, SignalGeneratorMachine, SystemMachine, UniversalMachine, and WatchdogMachine.
◆ execute()
virtual void Machine::execute |
( |
uint64_t |
pending_signals | ) |
|
|
pure virtual |
◆ process_command_workers()
void Machine::process_command_workers |
( |
std::function< void(CommandWorker *)> |
process = nullptr | ) |
|
|
protected |
Process all of the available Command Workers.
- Parameters
-
process | a function for additional custom processing |
◆ send_response()
void Machine::send_response |
( |
MachineMessage::Protocol |
protocol, |
|
|
std::string |
connection_id, |
|
|
motionmaster::MotionMasterMessage & |
message |
|
) |
| |
|
protected |
Send the response (Status protobuf message) to the proper client.
- Parameters
-
protocol | |
connection_id | |
message | |
◆ start_command_worker()
\brif Start a Command Worker to process an incoming machine message
- Parameters
-
◆ incoming_message_queue_
◆ notifier_
◆ thread_pool_
ctpl::thread_pool& Machine::thread_pool_ |
|
protected |
◆ vdm_
The documentation for this class was generated from the following files: