modbus rtu 1.2
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
#include "plugins/protocols/modbus_rtu/parser/ModbusRtuProtocolPlugin.h"
|
||||
|
||||
#include "core/plugin_system/IProtocolPlugin.h"
|
||||
#include "message_bus/pipeline/PipelineContext.h"
|
||||
#include "core/models/RawBusMessage.h"
|
||||
#include "message_bus/pipeline/protocol/ProtocolEnvelope.h"
|
||||
#include "plugins/protocols/modbus_rtu/codec/ModbusRtuCodec.h"
|
||||
#include "plugins/protocols/modbus_rtu/framer/ModbusRtuFraming.h"
|
||||
@@ -49,11 +49,10 @@ overloaded(Ts...) -> overloaded<Ts...>;
|
||||
class ModbusRtuSession final : public IProtocolSession
|
||||
{
|
||||
public:
|
||||
bool parse(const softbus::message_bus::pipeline::PipelineContext& ctx,
|
||||
bool parse(const softbus::core::models::RawBusMessage& ctx,
|
||||
softbus::message_bus::pipeline::protocol::ProtocolEnvelope& out) override
|
||||
{
|
||||
using softbus::message_bus::pipeline::FrameKind;
|
||||
if (ctx.frameKind != FrameKind::CompleteFrame || !ctx.payload.valid()) {
|
||||
if (!ctx.payload.valid()) {
|
||||
return false;
|
||||
}
|
||||
const std::size_t n = ctx.payloadSize ? ctx.payloadSize : ctx.payload.length;
|
||||
@@ -63,7 +62,11 @@ public:
|
||||
}
|
||||
|
||||
ModbusRtuPdu pdu;
|
||||
if (!decodeModbusRtu(ctx.direction, p, n, pdu, nullptr)) {
|
||||
if (!decodeModbusRtu(ctx.direction,
|
||||
p,
|
||||
n,
|
||||
pdu,
|
||||
nullptr)) {
|
||||
out.family = ProtocolFamily::None;
|
||||
out.pdu = {};
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user