Motion Master 6.0.0-alpha.50
Next-generation motion control software
Loading...
Searching...
No Matches
ProcessDataCyclicTask Class Reference

Game-loop task that exchanges one cycle of process data. More...

#include <process_data_cyclic_task.h>

Inheritance diagram for ProcessDataCyclicTask:
[legend]
Collaboration diagram for ProcessDataCyclicTask:
[legend]

Public Member Functions

 ProcessDataCyclicTask (mm::node::DeviceManager &deviceManager)
 
void execute (const CycleContext &) override
 Called once per cycle, after process data has been exchanged and device parameters updated.
 
- Public Member Functions inherited from CyclicTask
virtual ~CyclicTask ()=default
 Virtual destructor.
 

Detailed Description

Game-loop task that exchanges one cycle of process data.

Delegates to DeviceManager::exchangeProcessData, which is a no-op until a process image has been published (i.e. devices have been mapped and brought into SAFE-OP/OP). Registering it unconditionally is therefore safe: the RT loop drives PDO automatically as soon as the bus is configured, and stops again when it is torn down — no wiring changes per state.

Constructor & Destructor Documentation

◆ ProcessDataCyclicTask()

ProcessDataCyclicTask::ProcessDataCyclicTask ( mm::node::DeviceManager deviceManager)
inlineexplicit

Member Function Documentation

◆ execute()

void ProcessDataCyclicTask::execute ( const CycleContext ctx)
inlineoverridevirtual

Called once per cycle, after process data has been exchanged and device parameters updated.

Must return before the next cycle deadline. Blocking here stalls the entire RT loop.

Parameters
ctxPer-cycle timing context (grid index + skipped count). Tasks that act only on the freshest state may ignore it.

Implements CyclicTask.


The documentation for this class was generated from the following file: