Motion Master 6.0.0-alpha.86
Next-generation motion control software
Loading...
Searching...
No Matches
eni_collector.h
Go to the documentation of this file.
1#pragma once
2
3#include <cstdint>
4#include <expected>
5#include <string>
6#include <vector>
7
8#include "etg/eni.h"
9
10namespace mm::node {
11
12class DeviceManager;
13
20 std::string masterName = "Motion Master";
21 std::vector<std::uint8_t> sourceMac;
22 std::uint32_t cycleTimeUs = 0;
23};
24
32 std::vector<std::string> warnings;
33};
34
54std::expected<EniCollection, std::string> collectEni(DeviceManager& manager,
55 const EniCollectorOptions& options);
56
57} // namespace mm::node
Owns the fieldbus driver and node collection, and drives PDO exchange.
Definition device_manager.h:287
Definition bus_health_source.h:7
std::expected< EniCollection, std::string > collectEni(DeviceManager &manager, const EniCollectorOptions &options)
Reads the live bus and builds an ENI network from it.
Definition eni_collector.cc:318
A complete network configuration (ENI EtherCATConfig/Config).
Definition eni.h:430
A collected network, and what could not be read while collecting it.
Definition eni_collector.h:30
mm::etg::EniNetwork network
Ready for mm::etg::writeEni.
Definition eni_collector.h:31
std::vector< std::string > warnings
One per part that was asked for and not answered.
Definition eni_collector.h:32
What an ENI needs that no device can answer for.
Definition eni_collector.h:19
std::string masterName
Written to Master/Info/Name.
Definition eni_collector.h:20
std::vector< std::uint8_t > sourceMac
Source MAC of the cyclic frames; exactly six bytes.
Definition eni_collector.h:21
std::uint32_t cycleTimeUs
Cycle period in microseconds; 0 omits Cyclic/CycleTime.
Definition eni_collector.h:22