UNPKG

ethernet-ip

Version:

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

47 lines 1.62 kB
/** * Common Packet Format (CPF) * Per CIP Vol 2, Section 2-6 — Common Packet Format * * CPF encodes a variable number of typed data items: * Offset Size Field * ------ ---- ----- * 0 2 Item Count (UINT16LE) * For each item: * +0 2 Type ID (UINT16LE) * +2 2 Data Length (UINT16LE) * +4 N Data (variable) */ /** CPF Item Type IDs — Per CIP Vol 2, Table 2-6.1 */ export declare enum CPFItemType { /** Null address item — used as placeholder in unconnected messages */ Null = 0, /** List Identity response item */ ListIdentity = 12, /** Connected Address Item — carries Connection ID for Class 3 connected messaging */ ConnectionBased = 161, /** Connected Data Item — carries CIP data for connected messaging */ ConnectedTransportPacket = 177, /** Unconnected Message (UCMM) — carries CIP data for unconnected messaging */ UCMM = 178, /** List Services response item */ ListServices = 256, /** Sockaddr Info O→T */ SockaddrO2T = 32768, /** Sockaddr Info T→O */ SockaddrT2O = 32769, /** Sequenced Address Item — used for Class 1 implicit (I/O) messaging */ SequencedAddrItem = 32770 } export interface CPFItem { typeId: CPFItemType; data: Buffer; } /** * Build a CPF buffer from an array of typed items. */ export declare function buildCPF(items: CPFItem[]): Buffer; /** * Parse a CPF buffer into an array of typed items. */ export declare function parseCPF(buf: Buffer): CPFItem[]; //# sourceMappingURL=common-packet-format.d.ts.map