31 namespace canopen_schunk {
70 virtual void deleteNodes(std::vector<uint8_t>& deleted_ids);
93 const bool dummy_mapping =
false,
94 const uint8_t cyclic_timeout_cycles = 0,
119 const bool dummy_mapping =
false,
120 const uint8_t cyclic_timeout_cycles = 0,
158 template <
typename NodeT>
177 #endif // DS301GROUP_H 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
The DS301Group class is the base Class for all canOpen device groups, providing basic interfaces to t...
The CanOpenController class is the main entry point for any calls to the canOpen System.
eTransmissionType
Transmission types of a PDO, needed when mapping PDOs.
boost::shared_ptr< DS301Group > Ptr
Shared pointer to a DS301Group.
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...
virtual std::vector< DS301Node::Ptr > getNodes() const
Returns the group's node vector.
boost::shared_ptr< const DS301Group > ConstPtr
Shared pointer to a const DS301Group.
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.
DS301Node::Ptr addNode(const uint8_t node_id, const CanDevPtr can_device, HeartBeatMonitor::Ptr heartbeat_monitor)
Creates a new DS301Node and adds it to the group-.
std::string getName() const
Returns the group's identifier string.
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 ...