UNPKG

ethernet-ip

Version:

A feature-complete EtherNet/IP client for Rockwell ControlLogix/CompactLogix PLCs

23 lines 1.03 kB
"use strict"; /** * CPF response utilities — extract CIP data from CPF items. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.extractCIPData = extractCIPData; const common_packet_format_1 = require("../encapsulation/common-packet-format"); /** Sequence count prefix in connected transport packets */ const SEQUENCE_COUNT_SIZE = 2; /** * Extract CIP response data from CPF items. * Finds the data-carrying item (ConnectedTransportPacket or UCMM) * and strips the sequence count prefix for connected packets. */ function extractCIPData(items) { const dataItem = items.find((i) => i.typeId === common_packet_format_1.CPFItemType.ConnectedTransportPacket || i.typeId === common_packet_format_1.CPFItemType.UCMM); if (!dataItem) throw new Error('No CIP data item in response'); return dataItem.typeId === common_packet_format_1.CPFItemType.ConnectedTransportPacket ? dataItem.data.subarray(SEQUENCE_COUNT_SIZE) : dataItem.data; } //# sourceMappingURL=cpf-utils.js.map