28 namespace canopen_schunk {
38 for (
size_t i=0; i <
m_nodes.size(); ++i)
40 deleted_ids.push_back(
m_nodes.at(i)->getNodeId());
47 for (std::vector<DS301Node::Ptr>::iterator it =
m_nodes.begin(); it !=
m_nodes.end(); ++it)
49 if ((*it)->getNodeId() == node_id)
62 const bool dummy_mapping,
63 const uint8_t cyclic_timeout_cycles,
66 for (std::vector<DS301Node::Ptr>::iterator it =
m_nodes.begin(); it !=
m_nodes.end(); ++it)
68 if ((*it)->getNodeId() == node_id || node_id < 0)
70 (*it)->initPDOMappingSingle(config,
75 cyclic_timeout_cycles);
84 const bool dummy_mapping,
85 const uint8_t cyclic_timeout_cycles,
88 for (std::vector<DS301Node::Ptr>::iterator it =
m_nodes.begin(); it !=
m_nodes.end(); ++it)
90 if ((*it)->getNodeId() == node_id || node_id < 0)
92 (*it)->appendPDOMappingSingle(config,
97 cyclic_timeout_cycles);
104 for (std::vector<DS301Node::Ptr>::iterator it =
m_nodes.begin(); it !=
m_nodes.end(); ++it)
112 for (std::vector<DS301Node::Ptr>::iterator it =
m_nodes.begin(); it !=
m_nodes.end(); ++it)
114 (*it)->downloadPDOs();
120 for (std::vector<DS301Node::Ptr>::iterator it =
m_nodes.begin(); it !=
m_nodes.end(); ++it)
122 if ((*it)->getNodeId() == node_id || node_id < 0)
124 (*it)->printPDOMapping();
virtual bool deleteNodeFromId(const uint8_t node_id)
Deletes a node with a given node id from the node list, if it is present. If the node can't be found ...
virtual void appendPDOMappingSingle(const PDO::MappingConfigurationList &config, const uint16_t pdo_nr, const PDO::eTransmissionType &transmission_type, const DS301Node::ePDO_TYPE &pdo_type, const bool dummy_mapping=false, const uint8_t cyclic_timeout_cycles=0, const int16_t node_id=-1)
Appends one or more mapping parameters to the existing mapping. Note that the PDO will be disabled wh...
std::vector< MappingConfiguration > MappingConfigurationList
The MappingConfigurationList holds multiple Mapping configurations. The Mapping of a single PDO is de...
void registerWSBroadcaster(boost::shared_ptr< icl_comm::websocket::WsBroadcaster > broadcaster)
registerWSBroadcaster Adds a debug interface
eTransmissionType
Transmission types of a PDO, needed when mapping PDOs.
virtual void deleteNodes(std::vector< uint8_t > &deleted_ids)
Deletes all nodes assigned to the group.
boost::shared_ptr< icl_comm::websocket::WsBroadcaster > m_ws_broadcaster
Interface to send out diagnostics data. Only available if compiled with IC_BUILDER_ICL_COMM_WEBSOCKET...
std::vector< DS301Node::Ptr > m_nodes
void printPDOMapping(const uint8_t node_id=-1)
Will query the PDO mapping from the device and print that to the output.
virtual void initPDOMappingSingle(const PDO::MappingConfigurationList &config, const uint16_t pdo_nr, const PDO::eTransmissionType &transmission_type, const DS301Node::ePDO_TYPE &pdo_type, const bool dummy_mapping=false, const uint8_t cyclic_timeout_cycles=0, const int16_t node_id=-1)
Init PDO mapping with a given mapping configuration for a given pdo nr.
DS301Group(const std::string &name="")
ePDO_TYPE
Type of a PDO. RECEIVE_PDOs carry data from the host to the device, TRANSMIT_PDOs from the device to ...