Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
|
#include <ModbusCommunicationTcpProtocol.hpp>
Protected Member Functions | |
void | buildAllQueries (const std::map< iv::types::comms::modbus::modbusAddressAndFunction, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > > &channels, const iv::types::networkId &netId, bool forceContinuousRegisters) |
Protected Attributes | |
iv::model::comms::modbus::Settings | m_modbusSettings |
std::vector< iv::comms::modbus::ModbusQueryMessage > | m_queriesCoils |
std::vector< iv::comms::modbus::ModbusQueryMessage > | m_queriesDiscreteInputs |
std::vector< iv::comms::modbus::ModbusQueryMessage > | m_queriesInputRegisters |
std::vector< iv::comms::modbus::ModbusQueryMessage > | m_queriesHoldingRegisters |
std::vector< iv::comms::modbus::ModbusQueryMessage > | m_queriesWriteCoils |
std::vector< iv::comms::modbus::ModbusQueryMessage > | m_queriesWriteRegisters |
std::map< iv::types::comms::modbus::modbusAddressAndFunction, std::optional< iv::types::comms::modbus::registerValue > > | m_valueAtAddress |
std::weak_ptr< iv::channels::AbstractChannel > | m_heartbeatChannel |
std::weak_ptr< iv::diamar::AppFailuresLoggerManager > | m_appFailuresLoggerManager |
iv::types::networkId | m_networkId |
std::shared_ptr< iv::comms::ICommunicationDriver > | m_driver |
Private Member Functions | |
void | processModbusResponse (iv::comms::modbus::ModbusResponseMessage response) |
bool | prvProcessQueries (const std::vector< iv::comms::modbus::ModbusQueryMessage > &queries) |
Process the queries. | |
std::vector< iv::comms::modbus::ModbusQueryMessage > | buildSpecificQuery (const std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &chVectOrderedByAddress, uint16_t maxRegPerQuery, iv::comms::modbus::eFunctionCode mbFunction, const iv::types::networkId &netId, bool forceContinuousRegisters=false) const |
Static Private Member Functions | |
static void | classifyChannelsMap (const std::map< iv::types::comms::modbus::modbusAddressAndFunction, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > > &channelsByAddress, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &readCoils, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &readDiscreteInputs, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &readInputRegisters, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &readHoldingRegisters, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &writeCoils, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > &writeHoldingRegisters, const iv::types::networkId &netId) |
Private Attributes | |
std::map< iv::types::comms::tcpPacketId, std::vector< iv::types::comms::modbus::modbusAddress > > | m_transactionIdToAddress |
|
delete |
iv::comms::modbus::ModbusCommunicationTcpProtocol::ModbusCommunicationTcpProtocol | ( | const std::shared_ptr< iv::comms::ICommunicationDriver > & | driver, |
const iv::model::comms::modbus::Settings & | settings, | ||
const std::map< iv::types::comms::modbus::modbusAddressAndFunction, std::vector< std::shared_ptr< iv::channels::AbstractChannel > > > & | channelsOrderedByAddress, | ||
const std::weak_ptr< iv::diamar::AppFailuresLoggerManager > & | appFailuresLoggerManager, | ||
const iv::types::networkId & | netId, | ||
std::weak_ptr< iv::channels::AbstractChannel > & | heartbeatChannel ) |
|
delete |
|
delete |
|
overridedefault |
|
protectedinherited |
TODO RAG: Esta opción genera problemas si tienes un canal de un tipo que ya de por si es mayor a 1 registro. ej: Float, Dint, Qint, etc. ¿Descartamos ese canal de la lista?
|
nodiscardprivateinherited |
|
staticprivateinherited |
|
inherited |
|
inherited |
|
inlinenodiscardoverridevirtualinherited |
Implements iv::comms::ICommunicationProtocol.
|
delete |
|
delete |
|
private |
|
private |
Process the queries.
queries | The queries to process. |
|
overridevirtual |
|
overridevirtual |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Queries para leer coils.
|
protectedinherited |
Queries para leer discrete inputs.
|
protectedinherited |
Queries para leer holding registers.
|
protectedinherited |
Queries para leer input registers.
|
protectedinherited |
Queries para escribir uno o multiples coils.
|
protectedinherited |
Queries para escribir uno o multiples registros.
|
private |
|
protectedinherited |
Valor contenido en cada registro.