model

package
v0.0.0-...-8944a85 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 26, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const CipIdentity_ZEROES1 uint32 = 0x00000000

Constant values.

View Source
const CipIdentity_ZEROES2 uint32 = 0x00000000
View Source
const CipUnconnectedRequest_ROUTE uint16 = 0x0001

Constant values.

View Source
const EipConnectionRequest_FLAGS uint16 = 0x00
View Source
const EipConnectionRequest_PROTOCOLVERSION uint16 = 0x01

Constant values.

View Source
const EipConnectionResponse_FLAGS uint16 = 0x00
View Source
const EipConnectionResponse_PROTOCOLVERSION uint16 = 0x01

Constant values.

View Source
const EipConstants_EIPTCPDEFAULTPORT uint16 = uint16(44818)
View Source
const EipConstants_EIPUDPDISCOVERYDEFAULTPORT uint16 = uint16(44818)

Constant values.

View Source
const MultipleServiceRequest_REQUESTPATH uint32 = 0x01240220
View Source
const MultipleServiceRequest_REQUESTPATHSIZE uint8 = 0x02

Constant values.

View Source
const SendUnitData_INTERFACEHANDLE uint32 = 0x00000000

Constant values.

Variables

View Source
var CIPClassIDValues []CIPClassID
View Source
var CIPDataTypeCodeValues []CIPDataTypeCode
View Source
var CIPStatusValues []CIPStatus
View Source
var CIPStructTypeCodeValues []CIPStructTypeCode
View Source
var EiPCommandValues []EiPCommand

Functions

func CIPAttributesParseWithBufferProducer

func CIPAttributesParseWithBufferProducer(packetLength uint16) func(ctx context.Context, readBuffer utils.ReadBuffer) (CIPAttributes, error)

func CIPClassIDKnows

func CIPClassIDKnows(value uint16) bool

func CIPDataConnectedParseWithBufferProducer

func CIPDataConnectedParseWithBufferProducer() func(ctx context.Context, readBuffer utils.ReadBuffer) (CIPDataConnected, error)

func CIPDataParseWithBufferProducer

func CIPDataParseWithBufferProducer(packetLength uint16) func(ctx context.Context, readBuffer utils.ReadBuffer) (CIPData, error)

func CIPDataTypeCodeKnows

func CIPDataTypeCodeKnows(value uint16) bool

func CIPStatusKnows

func CIPStatusKnows(value uint32) bool

func CIPStructTypeCodeKnows

func CIPStructTypeCodeKnows(value uint16) bool

func CipServiceParse

func CipServiceParse[T CipService](ctx context.Context, theBytes []byte, connected bool, serviceLen uint16) (T, error)

func CipServiceParseWithBuffer

func CipServiceParseWithBuffer[T CipService](ctx context.Context, readBuffer utils.ReadBuffer, connected bool, serviceLen uint16) (T, error)

func CipServiceParseWithBufferProducer

func CipServiceParseWithBufferProducer[T CipService](connected bool, serviceLen uint16) func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func ClassSegmentParseWithBufferProducer

func ClassSegmentParseWithBufferProducer() func(ctx context.Context, readBuffer utils.ReadBuffer) (ClassSegment, error)

func CommandSpecificDataItemParse

func CommandSpecificDataItemParse[T CommandSpecificDataItem](ctx context.Context, theBytes []byte) (T, error)

func CommandSpecificDataItemParseWithBuffer

func CommandSpecificDataItemParseWithBuffer[T CommandSpecificDataItem](ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func CommandSpecificDataItemParseWithBufferProducer

func CommandSpecificDataItemParseWithBufferProducer[T CommandSpecificDataItem]() func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func DataSegmentTypeParse

func DataSegmentTypeParse[T DataSegmentType](ctx context.Context, theBytes []byte) (T, error)

func DataSegmentTypeParseWithBuffer

func DataSegmentTypeParseWithBuffer[T DataSegmentType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func DataSegmentTypeParseWithBufferProducer

func DataSegmentTypeParseWithBufferProducer[T DataSegmentType]() func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func EiPCommandKnows

func EiPCommandKnows(value uint16) bool

func EipConstantsParseWithBufferProducer

func EipConstantsParseWithBufferProducer() func(ctx context.Context, readBuffer utils.ReadBuffer) (EipConstants, error)

func EipPacketParse

func EipPacketParse[T EipPacket](ctx context.Context, theBytes []byte, response bool) (T, error)

func EipPacketParseWithBuffer

func EipPacketParseWithBuffer[T EipPacket](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error)

func EipPacketParseWithBufferProducer

func EipPacketParseWithBufferProducer[T EipPacket](response bool) func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func InstanceSegmentParseWithBufferProducer

func InstanceSegmentParseWithBufferProducer() func(ctx context.Context, readBuffer utils.ReadBuffer) (InstanceSegment, error)

func LogicalSegmentTypeParse

func LogicalSegmentTypeParse[T LogicalSegmentType](ctx context.Context, theBytes []byte) (T, error)

func LogicalSegmentTypeParseWithBuffer

func LogicalSegmentTypeParseWithBuffer[T LogicalSegmentType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func LogicalSegmentTypeParseWithBufferProducer

func LogicalSegmentTypeParseWithBufferProducer[T LogicalSegmentType]() func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func NetworkConnectionParametersParseWithBufferProducer

func NetworkConnectionParametersParseWithBufferProducer() func(ctx context.Context, readBuffer utils.ReadBuffer) (NetworkConnectionParameters, error)

func NewAnsiExtendedSymbolSegment

func NewAnsiExtendedSymbolSegment(symbol string, pad *uint8) *_AnsiExtendedSymbolSegment

NewAnsiExtendedSymbolSegment factory function for _AnsiExtendedSymbolSegment

func NewCIPAttributes

func NewCIPAttributes(classId []uint16, numberAvailable *uint16, numberActive *uint16, data []byte, packetLength uint16) *_CIPAttributes

NewCIPAttributes factory function for _CIPAttributes

func NewCIPData

func NewCIPData(dataType CIPDataTypeCode, data []byte, packetLength uint16) *_CIPData

NewCIPData factory function for _CIPData

func NewCIPDataConnected

func NewCIPDataConnected(value uint32, tagStatus uint16) *_CIPDataConnected

NewCIPDataConnected factory function for _CIPDataConnected

func NewCipConnectedRequest

func NewCipConnectedRequest(pathSegments []byte, serviceLen uint16) *_CipConnectedRequest

NewCipConnectedRequest factory function for _CipConnectedRequest

func NewCipConnectedResponse

func NewCipConnectedResponse(status uint8, additionalStatusWords uint8, data CIPDataConnected, serviceLen uint16) *_CipConnectedResponse

NewCipConnectedResponse factory function for _CipConnectedResponse

func NewCipConnectionManagerCloseRequest

func NewCipConnectionManagerCloseRequest(requestPathSize uint8, classSegment PathSegment, instanceSegment PathSegment, priority uint8, tickTime uint8, timeoutTicks uint8, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, connectionPathSize uint8, connectionPaths []PathSegment, serviceLen uint16) *_CipConnectionManagerCloseRequest

NewCipConnectionManagerCloseRequest factory function for _CipConnectionManagerCloseRequest

func NewCipConnectionManagerCloseResponse

func NewCipConnectionManagerCloseResponse(status uint8, additionalStatusWords uint8, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, applicationReplySize uint8, serviceLen uint16) *_CipConnectionManagerCloseResponse

NewCipConnectionManagerCloseResponse factory function for _CipConnectionManagerCloseResponse

func NewCipConnectionManagerRequest

func NewCipConnectionManagerRequest(classSegment PathSegment, instanceSegment PathSegment, priority uint8, tickTime uint8, timeoutTicks uint8, otConnectionId uint32, toConnectionId uint32, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, timeoutMultiplier uint8, otRpi uint32, otConnectionParameters NetworkConnectionParameters, toRpi uint32, toConnectionParameters NetworkConnectionParameters, transportType TransportType, connectionPathSize uint8, connectionPaths []PathSegment, serviceLen uint16) *_CipConnectionManagerRequest

NewCipConnectionManagerRequest factory function for _CipConnectionManagerRequest

func NewCipConnectionManagerResponse

func NewCipConnectionManagerResponse(otConnectionId uint32, toConnectionId uint32, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, otApi uint32, toApi uint32, serviceLen uint16) *_CipConnectionManagerResponse

NewCipConnectionManagerResponse factory function for _CipConnectionManagerResponse

func NewCipIdentity

func NewCipIdentity(encapsulationProtocolVersion uint16, socketAddressFamily uint16, socketAddressPort uint16, socketAddressAddress []uint8, vendorId uint16, deviceType uint16, productCode uint16, revisionMajor uint8, revisionMinor uint8, status uint16, serialNumber uint32, productName string, state uint8) *_CipIdentity

NewCipIdentity factory function for _CipIdentity

func NewCipRRData

func NewCipRRData(sessionHandle uint32, status uint32, senderContext []byte, options uint32, interfaceHandle uint32, timeout uint16, typeIds []TypeId) *_CipRRData

NewCipRRData factory function for _CipRRData

func NewCipReadRequest

func NewCipReadRequest(tag []byte, elementNb uint16, serviceLen uint16) *_CipReadRequest

NewCipReadRequest factory function for _CipReadRequest

func NewCipReadResponse

func NewCipReadResponse(status uint8, extStatus uint8, data CIPData, serviceLen uint16) *_CipReadResponse

NewCipReadResponse factory function for _CipReadResponse

func NewCipSecurityInformation

func NewCipSecurityInformation(todoImplement []uint8) *_CipSecurityInformation

NewCipSecurityInformation factory function for _CipSecurityInformation

func NewCipService

func NewCipService(serviceLen uint16) *_CipService

NewCipService factory function for _CipService

func NewCipUnconnectedRequest

func NewCipUnconnectedRequest(classSegment PathSegment, instanceSegment PathSegment, unconnectedService CipService, backPlane int8, slot int8, serviceLen uint16) *_CipUnconnectedRequest

NewCipUnconnectedRequest factory function for _CipUnconnectedRequest

func NewCipWriteRequest

func NewCipWriteRequest(tag []byte, dataType CIPDataTypeCode, elementNb uint16, data []byte, serviceLen uint16) *_CipWriteRequest

NewCipWriteRequest factory function for _CipWriteRequest

func NewCipWriteResponse

func NewCipWriteResponse(status uint8, extStatus uint8, serviceLen uint16) *_CipWriteResponse

NewCipWriteResponse factory function for _CipWriteResponse

func NewClassID

func NewClassID(format uint8, segmentClass uint8) *_ClassID

NewClassID factory function for _ClassID

func NewClassSegment

func NewClassSegment(pathSegmentType uint8, logicalSegmentType uint8, logicalSegmentFormat uint8, classSegment uint8) *_ClassSegment

NewClassSegment factory function for _ClassSegment

func NewCommandSpecificDataItem

func NewCommandSpecificDataItem() *_CommandSpecificDataItem

NewCommandSpecificDataItem factory function for _CommandSpecificDataItem

func NewConnectedAddressItem

func NewConnectedAddressItem(connectionId uint32) *_ConnectedAddressItem

NewConnectedAddressItem factory function for _ConnectedAddressItem

func NewConnectedDataItem

func NewConnectedDataItem(sequenceCount uint16, service CipService) *_ConnectedDataItem

NewConnectedDataItem factory function for _ConnectedDataItem

func NewDataSegment

func NewDataSegment(segmentType DataSegmentType) *_DataSegment

NewDataSegment factory function for _DataSegment

func NewDataSegmentType

func NewDataSegmentType() *_DataSegmentType

NewDataSegmentType factory function for _DataSegmentType

func NewEipConnectionRequest

func NewEipConnectionRequest(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_EipConnectionRequest

NewEipConnectionRequest factory function for _EipConnectionRequest

func NewEipConnectionResponse

func NewEipConnectionResponse(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_EipConnectionResponse

NewEipConnectionResponse factory function for _EipConnectionResponse

func NewEipConstants

func NewEipConstants() *_EipConstants

NewEipConstants factory function for _EipConstants

func NewEipDisconnectRequest

func NewEipDisconnectRequest(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_EipDisconnectRequest

NewEipDisconnectRequest factory function for _EipDisconnectRequest

func NewEipListIdentityRequest

func NewEipListIdentityRequest(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_EipListIdentityRequest

NewEipListIdentityRequest factory function for _EipListIdentityRequest

func NewEipListIdentityResponse

func NewEipListIdentityResponse(sessionHandle uint32, status uint32, senderContext []byte, options uint32, items []CommandSpecificDataItem) *_EipListIdentityResponse

NewEipListIdentityResponse factory function for _EipListIdentityResponse

func NewEipPacket

func NewEipPacket(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_EipPacket

NewEipPacket factory function for _EipPacket

func NewGetAttributeAllRequest

func NewGetAttributeAllRequest(classSegment PathSegment, instanceSegment PathSegment, serviceLen uint16) *_GetAttributeAllRequest

NewGetAttributeAllRequest factory function for _GetAttributeAllRequest

func NewGetAttributeAllResponse

func NewGetAttributeAllResponse(status uint8, extStatus uint8, attributes CIPAttributes, serviceLen uint16) *_GetAttributeAllResponse

NewGetAttributeAllResponse factory function for _GetAttributeAllResponse

func NewGetAttributeListRequest

func NewGetAttributeListRequest(serviceLen uint16) *_GetAttributeListRequest

NewGetAttributeListRequest factory function for _GetAttributeListRequest

func NewGetAttributeListResponse

func NewGetAttributeListResponse(serviceLen uint16) *_GetAttributeListResponse

NewGetAttributeListResponse factory function for _GetAttributeListResponse

func NewGetAttributeSingleRequest

func NewGetAttributeSingleRequest(serviceLen uint16) *_GetAttributeSingleRequest

NewGetAttributeSingleRequest factory function for _GetAttributeSingleRequest

func NewGetAttributeSingleResponse

func NewGetAttributeSingleResponse(serviceLen uint16) *_GetAttributeSingleResponse

NewGetAttributeSingleResponse factory function for _GetAttributeSingleResponse

func NewInstanceID

func NewInstanceID(format uint8, instance uint8) *_InstanceID

NewInstanceID factory function for _InstanceID

func NewInstanceSegment

func NewInstanceSegment(pathSegmentType uint8, logicalSegmentType uint8, logicalSegmentFormat uint8, instance uint8) *_InstanceSegment

NewInstanceSegment factory function for _InstanceSegment

func NewListServicesRequest

func NewListServicesRequest(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_ListServicesRequest

NewListServicesRequest factory function for _ListServicesRequest

func NewListServicesResponse

func NewListServicesResponse(sessionHandle uint32, status uint32, senderContext []byte, options uint32, typeIds []TypeId) *_ListServicesResponse

NewListServicesResponse factory function for _ListServicesResponse

func NewLogicalSegment

func NewLogicalSegment(segmentType LogicalSegmentType) *_LogicalSegment

NewLogicalSegment factory function for _LogicalSegment

func NewLogicalSegmentType

func NewLogicalSegmentType() *_LogicalSegmentType

NewLogicalSegmentType factory function for _LogicalSegmentType

func NewMemberID

func NewMemberID(format uint8, instance uint8) *_MemberID

NewMemberID factory function for _MemberID

func NewMultipleServiceRequest

func NewMultipleServiceRequest(data Services, serviceLen uint16) *_MultipleServiceRequest

NewMultipleServiceRequest factory function for _MultipleServiceRequest

func NewMultipleServiceResponse

func NewMultipleServiceResponse(status uint8, extStatus uint8, serviceNb uint16, offsets []uint16, servicesData []byte, serviceLen uint16) *_MultipleServiceResponse

NewMultipleServiceResponse factory function for _MultipleServiceResponse

func NewNetworkConnectionParameters

func NewNetworkConnectionParameters(connectionSize uint16, owner bool, connectionType uint8, priority uint8, connectionSizeType bool) *_NetworkConnectionParameters

NewNetworkConnectionParameters factory function for _NetworkConnectionParameters

func NewNullAddressItem

func NewNullAddressItem() *_NullAddressItem

NewNullAddressItem factory function for _NullAddressItem

func NewNullCommandRequest

func NewNullCommandRequest(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_NullCommandRequest

NewNullCommandRequest factory function for _NullCommandRequest

func NewNullCommandResponse

func NewNullCommandResponse(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_NullCommandResponse

NewNullCommandResponse factory function for _NullCommandResponse

func NewNullEipConnectionResponse

func NewNullEipConnectionResponse(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_NullEipConnectionResponse

NewNullEipConnectionResponse factory function for _NullEipConnectionResponse

func NewNullListServicesResponse

func NewNullListServicesResponse(sessionHandle uint32, status uint32, senderContext []byte, options uint32) *_NullListServicesResponse

NewNullListServicesResponse factory function for _NullListServicesResponse

func NewPathSegment

func NewPathSegment() *_PathSegment

NewPathSegment factory function for _PathSegment

func NewPortSegment

func NewPortSegment(segmentType PortSegmentType) *_PortSegment

NewPortSegment factory function for _PortSegment

func NewPortSegmentExtended

func NewPortSegmentExtended(port uint8, linkAddressSize uint8, address string) *_PortSegmentExtended

NewPortSegmentExtended factory function for _PortSegmentExtended

func NewPortSegmentNormal

func NewPortSegmentNormal(port uint8, linkAddress uint8) *_PortSegmentNormal

NewPortSegmentNormal factory function for _PortSegmentNormal

func NewPortSegmentType

func NewPortSegmentType() *_PortSegmentType

NewPortSegmentType factory function for _PortSegmentType

func NewSendUnitData

func NewSendUnitData(sessionHandle uint32, status uint32, senderContext []byte, options uint32, timeout uint16, typeIds []TypeId) *_SendUnitData

NewSendUnitData factory function for _SendUnitData

func NewServices

func NewServices(offsets []uint16, services []CipService, servicesLen uint16) *_Services

NewServices factory function for _Services

func NewServicesResponse

func NewServicesResponse(encapsulationProtocol uint16, supportsCIPEncapsulation bool, supportsUDP bool, data []byte) *_ServicesResponse

NewServicesResponse factory function for _ServicesResponse

func NewSetAttributeAllRequest

func NewSetAttributeAllRequest(serviceLen uint16) *_SetAttributeAllRequest

NewSetAttributeAllRequest factory function for _SetAttributeAllRequest

func NewSetAttributeAllResponse

func NewSetAttributeAllResponse(serviceLen uint16) *_SetAttributeAllResponse

NewSetAttributeAllResponse factory function for _SetAttributeAllResponse

func NewSetAttributeListRequest

func NewSetAttributeListRequest(serviceLen uint16) *_SetAttributeListRequest

NewSetAttributeListRequest factory function for _SetAttributeListRequest

func NewSetAttributeListResponse

func NewSetAttributeListResponse(serviceLen uint16) *_SetAttributeListResponse

NewSetAttributeListResponse factory function for _SetAttributeListResponse

func NewSetAttributeSingleRequest

func NewSetAttributeSingleRequest(serviceLen uint16) *_SetAttributeSingleRequest

NewSetAttributeSingleRequest factory function for _SetAttributeSingleRequest

func NewSetAttributeSingleResponse

func NewSetAttributeSingleResponse(serviceLen uint16) *_SetAttributeSingleResponse

NewSetAttributeSingleResponse factory function for _SetAttributeSingleResponse

func NewTransportType

func NewTransportType(direction bool, trigger uint8, classTransport uint8) *_TransportType

NewTransportType factory function for _TransportType

func NewTypeId

func NewTypeId() *_TypeId

NewTypeId factory function for _TypeId

func NewUnConnectedDataItem

func NewUnConnectedDataItem(service CipService) *_UnConnectedDataItem

NewUnConnectedDataItem factory function for _UnConnectedDataItem

func NoMorePathSegments

func NoMorePathSegments(ctx context.Context, readBuffer utils.ReadBuffer) func() bool

func PathSegmentParse

func PathSegmentParse[T PathSegment](ctx context.Context, theBytes []byte) (T, error)

func PathSegmentParseWithBuffer

func PathSegmentParseWithBuffer[T PathSegment](ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func PathSegmentParseWithBufferProducer

func PathSegmentParseWithBufferProducer[T PathSegment]() func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func PortSegmentTypeParse

func PortSegmentTypeParse[T PortSegmentType](ctx context.Context, theBytes []byte) (T, error)

func PortSegmentTypeParseWithBuffer

func PortSegmentTypeParseWithBuffer[T PortSegmentType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func PortSegmentTypeParseWithBufferProducer

func PortSegmentTypeParseWithBufferProducer[T PortSegmentType]() func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func ServicesParseWithBufferProducer

func ServicesParseWithBufferProducer(servicesLen uint16) func(ctx context.Context, readBuffer utils.ReadBuffer) (Services, error)

func TransportTypeParseWithBufferProducer

func TransportTypeParseWithBufferProducer() func(ctx context.Context, readBuffer utils.ReadBuffer) (TransportType, error)

func TypeIdParse

func TypeIdParse[T TypeId](ctx context.Context, theBytes []byte) (T, error)

func TypeIdParseWithBuffer

func TypeIdParseWithBuffer[T TypeId](ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

func TypeIdParseWithBufferProducer

func TypeIdParseWithBufferProducer[T TypeId]() func(ctx context.Context, readBuffer utils.ReadBuffer) (T, error)

Types

type AnsiExtendedSymbolSegment

type AnsiExtendedSymbolSegment interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	DataSegmentType
	// GetSymbol returns Symbol (property field)
	GetSymbol() string
	// GetPad returns Pad (property field)
	GetPad() *uint8
	// IsAnsiExtendedSymbolSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsAnsiExtendedSymbolSegment()
	// CreateBuilder creates a AnsiExtendedSymbolSegmentBuilder
	CreateAnsiExtendedSymbolSegmentBuilder() AnsiExtendedSymbolSegmentBuilder
}

AnsiExtendedSymbolSegment is the corresponding interface of AnsiExtendedSymbolSegment

func CastAnsiExtendedSymbolSegment deprecated

func CastAnsiExtendedSymbolSegment(structType any) AnsiExtendedSymbolSegment

Deprecated: use the interface for direct cast

type AnsiExtendedSymbolSegmentBuilder

type AnsiExtendedSymbolSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(symbol string) AnsiExtendedSymbolSegmentBuilder
	// WithSymbol adds Symbol (property field)
	WithSymbol(string) AnsiExtendedSymbolSegmentBuilder
	// WithPad adds Pad (property field)
	WithOptionalPad(uint8) AnsiExtendedSymbolSegmentBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() DataSegmentTypeBuilder
	// Build builds the AnsiExtendedSymbolSegment or returns an error if something is wrong
	Build() (AnsiExtendedSymbolSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() AnsiExtendedSymbolSegment
}

AnsiExtendedSymbolSegmentBuilder is a builder for AnsiExtendedSymbolSegment

func NewAnsiExtendedSymbolSegmentBuilder

func NewAnsiExtendedSymbolSegmentBuilder() AnsiExtendedSymbolSegmentBuilder

NewAnsiExtendedSymbolSegmentBuilder() creates a AnsiExtendedSymbolSegmentBuilder

type CIPAttributes

type CIPAttributes interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetClassId returns ClassId (property field)
	GetClassId() []uint16
	// GetNumberAvailable returns NumberAvailable (property field)
	GetNumberAvailable() *uint16
	// GetNumberActive returns NumberActive (property field)
	GetNumberActive() *uint16
	// GetData returns Data (property field)
	GetData() []byte
	// IsCIPAttributes is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCIPAttributes()
	// CreateBuilder creates a CIPAttributesBuilder
	CreateCIPAttributesBuilder() CIPAttributesBuilder
}

CIPAttributes is the corresponding interface of CIPAttributes

func CIPAttributesParse

func CIPAttributesParse(ctx context.Context, theBytes []byte, packetLength uint16) (CIPAttributes, error)

func CIPAttributesParseWithBuffer

func CIPAttributesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, packetLength uint16) (CIPAttributes, error)

func CastCIPAttributes deprecated

func CastCIPAttributes(structType any) CIPAttributes

Deprecated: use the interface for direct cast

type CIPAttributesBuilder

type CIPAttributesBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(classId []uint16, data []byte) CIPAttributesBuilder
	// WithClassId adds ClassId (property field)
	WithClassId(...uint16) CIPAttributesBuilder
	// WithNumberAvailable adds NumberAvailable (property field)
	WithOptionalNumberAvailable(uint16) CIPAttributesBuilder
	// WithNumberActive adds NumberActive (property field)
	WithOptionalNumberActive(uint16) CIPAttributesBuilder
	// WithData adds Data (property field)
	WithData(...byte) CIPAttributesBuilder
	// WithArgPacketLength sets a parser argument
	WithArgPacketLength(uint16) CIPAttributesBuilder
	// Build builds the CIPAttributes or returns an error if something is wrong
	Build() (CIPAttributes, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CIPAttributes
}

CIPAttributesBuilder is a builder for CIPAttributes

func NewCIPAttributesBuilder

func NewCIPAttributesBuilder() CIPAttributesBuilder

NewCIPAttributesBuilder() creates a CIPAttributesBuilder

type CIPClassID

type CIPClassID uint16

CIPClassID is an enum

const (
	CIPClassID_Identity                     CIPClassID = 0x0001
	CIPClassID_MessageRouter                CIPClassID = 0x0002
	CIPClassID_Assembly                     CIPClassID = 0x0004
	CIPClassID_Connection                   CIPClassID = 0x0005
	CIPClassID_ConnectionManager            CIPClassID = 0x0006
	CIPClassID_Register                     CIPClassID = 0x0007
	CIPClassID_Parameter                    CIPClassID = 0x000F
	CIPClassID_ParameterGroup               CIPClassID = 0x0010
	CIPClassID_AcknowledgeHandler           CIPClassID = 0x002B
	CIPClassID_Selection                    CIPClassID = 0x002E
	CIPClassID_File                         CIPClassID = 0x0037
	CIPClassID_OriginatorConnectionList     CIPClassID = 0x0045
	CIPClassID_ConnectionConfiguration      CIPClassID = 0x00F3
	CIPClassID_Port                         CIPClassID = 0x00F4
	CIPClassID_DiscreteInputPoint           CIPClassID = 0x0008
	CIPClassID_DiscreteOutputPoint          CIPClassID = 0x0009
	CIPClassID_AnalogInputPoint             CIPClassID = 0x000A
	CIPClassID_AnalogOutputPoint            CIPClassID = 0x000B
	CIPClassID_PresenceSensing              CIPClassID = 0x000E
	CIPClassID_Group                        CIPClassID = 0x0012
	CIPClassID_DiscreteInputGroup           CIPClassID = 0x001D
	CIPClassID_DiscreteOutputGroup          CIPClassID = 0x001E
	CIPClassID_DiscreteGroup                CIPClassID = 0x001F
	CIPClassID_AnalogInputGroup             CIPClassID = 0x0020
	CIPClassID_AnalogOutputGroup            CIPClassID = 0x0021
	CIPClassID_AnalogGroup                  CIPClassID = 0x0022
	CIPClassID_PositionSensor               CIPClassID = 0x0023
	CIPClassID_PositionControllerSupervisor CIPClassID = 0x0024
	CIPClassID_PositionController           CIPClassID = 0x0025
	CIPClassID_BlockSequencer               CIPClassID = 0x0026
	CIPClassID_CommandBlock                 CIPClassID = 0x0027
	CIPClassID_MotorData                    CIPClassID = 0x0028
	CIPClassID_ControlSupervisor            CIPClassID = 0x0029
	CIPClassID_AcDcDrive                    CIPClassID = 0x002A
	CIPClassID_Overload                     CIPClassID = 0x002C
	CIPClassID_SDeviceSupervisor            CIPClassID = 0x0030
	CIPClassID_SAnalogSensor                CIPClassID = 0x0031
	CIPClassID_SAnalogActuator              CIPClassID = 0x0032
	CIPClassID_SSingleStageController       CIPClassID = 0x0033
	CIPClassID_SGasCalibration              CIPClassID = 0x0034
	CIPClassID_SPartialPressure             CIPClassID = 0x0038
	CIPClassID_SSensorCalibration           CIPClassID = 0x0040
	CIPClassID_EventLog                     CIPClassID = 0x0041
	CIPClassID_MotionDeviceAxis             CIPClassID = 0x0042
	CIPClassID_SafetyAnalogInputGroup       CIPClassID = 0x004A
	CIPClassID_BaseEnergy                   CIPClassID = 0x004E
	CIPClassID_ElectricalEnergy             CIPClassID = 0x004F
	CIPClassID_NonElectricalEnergy          CIPClassID = 0x0050
	CIPClassID_PowerManagementObject        CIPClassID = 0x0053
	CIPClassID_PowerCurtailmentObject       CIPClassID = 0x005C
	CIPClassID_DeviceNet                    CIPClassID = 0x0003
	CIPClassID_Modbus                       CIPClassID = 0x0044
	CIPClassID_ModbusSerialLink             CIPClassID = 0x0046
	CIPClassID_DeviceLevelRing              CIPClassID = 0x0047
	CIPClassID_QOS                          CIPClassID = 0x0048
	CIPClassID_Sercos3Link                  CIPClassID = 0x004C
	CIPClassID_BaseSwitch                   CIPClassID = 0x0051
	CIPClassID_Snmp                         CIPClassID = 0x0052
	CIPClassID_PowerManagement              CIPClassID = 0x0053
	CIPClassID_RstpBridge                   CIPClassID = 0x0054
	CIPClassID_RstpPort                     CIPClassID = 0x0055
	CIPClassID_ParallelRedundancyProtocol   CIPClassID = 0x0056
	CIPClassID_PrpNodesTable                CIPClassID = 0x0057
	CIPClassID_ControlNet                   CIPClassID = 0x00F0
	CIPClassID_ControlNetKeeper             CIPClassID = 0x00F1
	CIPClassID_ControlNetScheduling         CIPClassID = 0x00F2
	CIPClassID_TcpIpInterface               CIPClassID = 0x00F5
	CIPClassID_EthernetLink                 CIPClassID = 0x00F6
	CIPClassID_CompoNetLink                 CIPClassID = 0x00F7
	CIPClassID_CompoNetRepeater             CIPClassID = 0x00F8
)

func CIPClassIDByName

func CIPClassIDByName(value string) (enum CIPClassID, ok bool)

func CIPClassIDByValue

func CIPClassIDByValue(value uint16) (enum CIPClassID, ok bool)

func CIPClassIDParse

func CIPClassIDParse(ctx context.Context, theBytes []byte) (CIPClassID, error)

func CIPClassIDParseWithBuffer

func CIPClassIDParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CIPClassID, error)

func CastCIPClassID

func CastCIPClassID(structType any) CIPClassID

func (CIPClassID) GetLengthInBits

func (m CIPClassID) GetLengthInBits(ctx context.Context) uint16

func (CIPClassID) GetLengthInBytes

func (m CIPClassID) GetLengthInBytes(ctx context.Context) uint16

func (CIPClassID) GetValue

func (e CIPClassID) GetValue() uint16

func (CIPClassID) PLC4XEnumName

func (e CIPClassID) PLC4XEnumName() string

PLC4XEnumName returns the name that is used in code to identify this enum

func (CIPClassID) Serialize

func (e CIPClassID) Serialize() ([]byte, error)

func (CIPClassID) SerializeWithWriteBuffer

func (e CIPClassID) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.WriteBuffer) error

func (CIPClassID) String

func (e CIPClassID) String() string

type CIPData

type CIPData interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetDataType returns DataType (property field)
	GetDataType() CIPDataTypeCode
	// GetData returns Data (property field)
	GetData() []byte
	// IsCIPData is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCIPData()
	// CreateBuilder creates a CIPDataBuilder
	CreateCIPDataBuilder() CIPDataBuilder
}

CIPData is the corresponding interface of CIPData

func CIPDataParse

func CIPDataParse(ctx context.Context, theBytes []byte, packetLength uint16) (CIPData, error)

func CIPDataParseWithBuffer

func CIPDataParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, packetLength uint16) (CIPData, error)

func CastCIPData deprecated

func CastCIPData(structType any) CIPData

Deprecated: use the interface for direct cast

type CIPDataBuilder

type CIPDataBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(dataType CIPDataTypeCode, data []byte) CIPDataBuilder
	// WithDataType adds DataType (property field)
	WithDataType(CIPDataTypeCode) CIPDataBuilder
	// WithData adds Data (property field)
	WithData(...byte) CIPDataBuilder
	// WithArgPacketLength sets a parser argument
	WithArgPacketLength(uint16) CIPDataBuilder
	// Build builds the CIPData or returns an error if something is wrong
	Build() (CIPData, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CIPData
}

CIPDataBuilder is a builder for CIPData

func NewCIPDataBuilder

func NewCIPDataBuilder() CIPDataBuilder

NewCIPDataBuilder() creates a CIPDataBuilder

type CIPDataConnected

type CIPDataConnected interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetValue returns Value (property field)
	GetValue() uint32
	// GetTagStatus returns TagStatus (property field)
	GetTagStatus() uint16
	// IsCIPDataConnected is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCIPDataConnected()
	// CreateBuilder creates a CIPDataConnectedBuilder
	CreateCIPDataConnectedBuilder() CIPDataConnectedBuilder
}

CIPDataConnected is the corresponding interface of CIPDataConnected

func CIPDataConnectedParse

func CIPDataConnectedParse(ctx context.Context, theBytes []byte) (CIPDataConnected, error)

func CIPDataConnectedParseWithBuffer

func CIPDataConnectedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CIPDataConnected, error)

func CastCIPDataConnected deprecated

func CastCIPDataConnected(structType any) CIPDataConnected

Deprecated: use the interface for direct cast

type CIPDataConnectedBuilder

type CIPDataConnectedBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(value uint32, tagStatus uint16) CIPDataConnectedBuilder
	// WithValue adds Value (property field)
	WithValue(uint32) CIPDataConnectedBuilder
	// WithTagStatus adds TagStatus (property field)
	WithTagStatus(uint16) CIPDataConnectedBuilder
	// Build builds the CIPDataConnected or returns an error if something is wrong
	Build() (CIPDataConnected, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CIPDataConnected
}

CIPDataConnectedBuilder is a builder for CIPDataConnected

func NewCIPDataConnectedBuilder

func NewCIPDataConnectedBuilder() CIPDataConnectedBuilder

NewCIPDataConnectedBuilder() creates a CIPDataConnectedBuilder

type CIPDataTypeCode

type CIPDataTypeCode uint16

CIPDataTypeCode is an enum

const (
	CIPDataTypeCode_BOOL          CIPDataTypeCode = 0x00C1
	CIPDataTypeCode_SINT          CIPDataTypeCode = 0x00C2
	CIPDataTypeCode_INT           CIPDataTypeCode = 0x00C3
	CIPDataTypeCode_DINT          CIPDataTypeCode = 0x00C4
	CIPDataTypeCode_LINT          CIPDataTypeCode = 0x00C5
	CIPDataTypeCode_USINT         CIPDataTypeCode = 0x00C6
	CIPDataTypeCode_UINT          CIPDataTypeCode = 0x00C7
	CIPDataTypeCode_UDINT         CIPDataTypeCode = 0x00C8
	CIPDataTypeCode_ULINT         CIPDataTypeCode = 0x00C9
	CIPDataTypeCode_REAL          CIPDataTypeCode = 0x00CA
	CIPDataTypeCode_LREAL         CIPDataTypeCode = 0x00CB
	CIPDataTypeCode_STIME         CIPDataTypeCode = 0x00CC
	CIPDataTypeCode_DATE          CIPDataTypeCode = 0x00CD
	CIPDataTypeCode_TIME_OF_DAY   CIPDataTypeCode = 0x00CE
	CIPDataTypeCode_DATE_AND_TIME CIPDataTypeCode = 0x00CF
	CIPDataTypeCode_STRING        CIPDataTypeCode = 0x00D0
	CIPDataTypeCode_BYTE          CIPDataTypeCode = 0x00D1
	CIPDataTypeCode_WORD          CIPDataTypeCode = 0x00D2
	CIPDataTypeCode_DWORD         CIPDataTypeCode = 0x00D3
	CIPDataTypeCode_LWORD         CIPDataTypeCode = 0x00D3
	CIPDataTypeCode_STRING2       CIPDataTypeCode = 0x00D5
	CIPDataTypeCode_FTIME         CIPDataTypeCode = 0x00D6
	CIPDataTypeCode_LTIME         CIPDataTypeCode = 0x00D7
	CIPDataTypeCode_ITIME         CIPDataTypeCode = 0x00D8
	CIPDataTypeCode_STRINGN       CIPDataTypeCode = 0x00D9
	CIPDataTypeCode_SHORT_STRING  CIPDataTypeCode = 0x00DA
	CIPDataTypeCode_TIME          CIPDataTypeCode = 0x00DB
	CIPDataTypeCode_EPATH         CIPDataTypeCode = 0x00DC
	CIPDataTypeCode_ENGUNIT       CIPDataTypeCode = 0x00DD
	CIPDataTypeCode_STRINGI       CIPDataTypeCode = 0x00DD
	CIPDataTypeCode_STRUCTURED    CIPDataTypeCode = 0x02A0
)

func CIPDataTypeCodeByName

func CIPDataTypeCodeByName(value string) (enum CIPDataTypeCode, ok bool)

func CIPDataTypeCodeByValue

func CIPDataTypeCodeByValue(value uint16) (enum CIPDataTypeCode, ok bool)

func CIPDataTypeCodeFirstEnumForFieldSize

func CIPDataTypeCodeFirstEnumForFieldSize(value uint8) (enum CIPDataTypeCode, ok bool)

func CIPDataTypeCodeParse

func CIPDataTypeCodeParse(ctx context.Context, theBytes []byte) (CIPDataTypeCode, error)

func CIPDataTypeCodeParseWithBuffer

func CIPDataTypeCodeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CIPDataTypeCode, error)

func CastCIPDataTypeCode

func CastCIPDataTypeCode(structType any) CIPDataTypeCode

func (CIPDataTypeCode) GetLengthInBits

func (m CIPDataTypeCode) GetLengthInBits(ctx context.Context) uint16

func (CIPDataTypeCode) GetLengthInBytes

func (m CIPDataTypeCode) GetLengthInBytes(ctx context.Context) uint16

func (CIPDataTypeCode) GetSize

func (e CIPDataTypeCode) GetSize() uint8

func (CIPDataTypeCode) GetValue

func (e CIPDataTypeCode) GetValue() uint16

func (CIPDataTypeCode) PLC4XEnumName

func (e CIPDataTypeCode) PLC4XEnumName() string

PLC4XEnumName returns the name that is used in code to identify this enum

func (CIPDataTypeCode) Serialize

func (e CIPDataTypeCode) Serialize() ([]byte, error)

func (CIPDataTypeCode) SerializeWithWriteBuffer

func (e CIPDataTypeCode) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.WriteBuffer) error

func (CIPDataTypeCode) Size

func (e CIPDataTypeCode) Size() uint8

func (CIPDataTypeCode) String

func (e CIPDataTypeCode) String() string

type CIPStatus

type CIPStatus uint32

CIPStatus is an enum

const (
	CIPStatus_Success                          CIPStatus = 0x00000000
	CIPStatus_ConnectionFailure                CIPStatus = 0x00000001
	CIPStatus_ResourceUnAvailable              CIPStatus = 0x00000002
	CIPStatus_InvalidParameterValue            CIPStatus = 0x00000003
	CIPStatus_PathSegmentError                 CIPStatus = 0x00000004
	CIPStatus_PathDestinationUnknown           CIPStatus = 0x00000005
	CIPStatus_PartialTransfer                  CIPStatus = 0x00000006
	CIPStatus_ConnectionIDNotValid             CIPStatus = 0x00000007
	CIPStatus_ServiceNotSupported              CIPStatus = 0x00000008
	CIPStatus_InvalidAttributeValue            CIPStatus = 0x00000009
	CIPStatus_AttributeListError               CIPStatus = 0x0000000A
	CIPStatus_AlreadyInRequestedState          CIPStatus = 0x0000000B
	CIPStatus_ObjectStateConflict              CIPStatus = 0x0000000C
	CIPStatus_ObjectAlreadyExists              CIPStatus = 0x0000000D
	CIPStatus_AttributeNotSettable             CIPStatus = 0x0000000E
	CIPStatus_PrivilegeViolation               CIPStatus = 0x0000000F
	CIPStatus_DeviceStateConflict              CIPStatus = 0x00000010
	CIPStatus_ReplyDataTooLarge                CIPStatus = 0x00000011
	CIPStatus_FragmentationOfPrimitiveValue    CIPStatus = 0x00000012
	CIPStatus_NotEnoughData                    CIPStatus = 0x00000013
	CIPStatus_AttributeNotSupported            CIPStatus = 0x00000014
	CIPStatus_TooMuchData                      CIPStatus = 0x00000015
	CIPStatus_ObjectDoesNotExist               CIPStatus = 0x00000016
	CIPStatus_ServiceFragmentation             CIPStatus = 0x00000017
	CIPStatus_NoStoredAttributeData            CIPStatus = 0x00000018
	CIPStatus_StoreOperationFailure            CIPStatus = 0x00000019
	CIPStatus_RequestPacketTooLarge            CIPStatus = 0x0000001A
	CIPStatus_ResponsePacketTooLarge           CIPStatus = 0x0000001B
	CIPStatus_MissingAttributeListEntryData    CIPStatus = 0x0000001C
	CIPStatus_InvalidAttributeValueList        CIPStatus = 0x0000001D
	CIPStatus_EmbeddedServiceError             CIPStatus = 0x0000001E
	CIPStatus_VendorSpecificError              CIPStatus = 0x0000001F
	CIPStatus_InvalidCommandWithWrongEndianess CIPStatus = 0x01000000
)

func CIPStatusByName

func CIPStatusByName(value string) (enum CIPStatus, ok bool)

func CIPStatusByValue

func CIPStatusByValue(value uint32) (enum CIPStatus, ok bool)

func CIPStatusParse

func CIPStatusParse(ctx context.Context, theBytes []byte) (CIPStatus, error)

func CIPStatusParseWithBuffer

func CIPStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CIPStatus, error)

func CastCIPStatus

func CastCIPStatus(structType any) CIPStatus

func (CIPStatus) GetLengthInBits

func (m CIPStatus) GetLengthInBits(ctx context.Context) uint16

func (CIPStatus) GetLengthInBytes

func (m CIPStatus) GetLengthInBytes(ctx context.Context) uint16

func (CIPStatus) GetValue

func (e CIPStatus) GetValue() uint32

func (CIPStatus) PLC4XEnumName

func (e CIPStatus) PLC4XEnumName() string

PLC4XEnumName returns the name that is used in code to identify this enum

func (CIPStatus) Serialize

func (e CIPStatus) Serialize() ([]byte, error)

func (CIPStatus) SerializeWithWriteBuffer

func (e CIPStatus) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.WriteBuffer) error

func (CIPStatus) String

func (e CIPStatus) String() string

type CIPStructTypeCode

type CIPStructTypeCode uint16

CIPStructTypeCode is an enum

const (
	CIPStructTypeCode_STRING CIPStructTypeCode = 0x0FCE
)

func CIPStructTypeCodeByName

func CIPStructTypeCodeByName(value string) (enum CIPStructTypeCode, ok bool)

func CIPStructTypeCodeByValue

func CIPStructTypeCodeByValue(value uint16) (enum CIPStructTypeCode, ok bool)

func CIPStructTypeCodeParse

func CIPStructTypeCodeParse(ctx context.Context, theBytes []byte) (CIPStructTypeCode, error)

func CIPStructTypeCodeParseWithBuffer

func CIPStructTypeCodeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CIPStructTypeCode, error)

func CastCIPStructTypeCode

func CastCIPStructTypeCode(structType any) CIPStructTypeCode

func (CIPStructTypeCode) GetLengthInBits

func (m CIPStructTypeCode) GetLengthInBits(ctx context.Context) uint16

func (CIPStructTypeCode) GetLengthInBytes

func (m CIPStructTypeCode) GetLengthInBytes(ctx context.Context) uint16

func (CIPStructTypeCode) GetValue

func (e CIPStructTypeCode) GetValue() uint16

func (CIPStructTypeCode) PLC4XEnumName

func (e CIPStructTypeCode) PLC4XEnumName() string

PLC4XEnumName returns the name that is used in code to identify this enum

func (CIPStructTypeCode) Serialize

func (e CIPStructTypeCode) Serialize() ([]byte, error)

func (CIPStructTypeCode) SerializeWithWriteBuffer

func (e CIPStructTypeCode) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.WriteBuffer) error

func (CIPStructTypeCode) String

func (e CIPStructTypeCode) String() string

type CipConnectedRequest

type CipConnectedRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetPathSegments returns PathSegments (property field)
	GetPathSegments() []byte
	// IsCipConnectedRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipConnectedRequest()
	// CreateBuilder creates a CipConnectedRequestBuilder
	CreateCipConnectedRequestBuilder() CipConnectedRequestBuilder
}

CipConnectedRequest is the corresponding interface of CipConnectedRequest

func CastCipConnectedRequest deprecated

func CastCipConnectedRequest(structType any) CipConnectedRequest

Deprecated: use the interface for direct cast

type CipConnectedRequestBuilder

type CipConnectedRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(pathSegments []byte) CipConnectedRequestBuilder
	// WithPathSegments adds PathSegments (property field)
	WithPathSegments(...byte) CipConnectedRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipConnectedRequest or returns an error if something is wrong
	Build() (CipConnectedRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipConnectedRequest
}

CipConnectedRequestBuilder is a builder for CipConnectedRequest

func NewCipConnectedRequestBuilder

func NewCipConnectedRequestBuilder() CipConnectedRequestBuilder

NewCipConnectedRequestBuilder() creates a CipConnectedRequestBuilder

type CipConnectedResponse

type CipConnectedResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetStatus returns Status (property field)
	GetStatus() uint8
	// GetAdditionalStatusWords returns AdditionalStatusWords (property field)
	GetAdditionalStatusWords() uint8
	// GetData returns Data (property field)
	GetData() CIPDataConnected
	// IsCipConnectedResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipConnectedResponse()
	// CreateBuilder creates a CipConnectedResponseBuilder
	CreateCipConnectedResponseBuilder() CipConnectedResponseBuilder
}

CipConnectedResponse is the corresponding interface of CipConnectedResponse

func CastCipConnectedResponse deprecated

func CastCipConnectedResponse(structType any) CipConnectedResponse

Deprecated: use the interface for direct cast

type CipConnectedResponseBuilder

type CipConnectedResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(status uint8, additionalStatusWords uint8) CipConnectedResponseBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint8) CipConnectedResponseBuilder
	// WithAdditionalStatusWords adds AdditionalStatusWords (property field)
	WithAdditionalStatusWords(uint8) CipConnectedResponseBuilder
	// WithData adds Data (property field)
	WithOptionalData(CIPDataConnected) CipConnectedResponseBuilder
	// WithOptionalDataBuilder adds Data (property field) which is build by the builder
	WithOptionalDataBuilder(func(CIPDataConnectedBuilder) CIPDataConnectedBuilder) CipConnectedResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipConnectedResponse or returns an error if something is wrong
	Build() (CipConnectedResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipConnectedResponse
}

CipConnectedResponseBuilder is a builder for CipConnectedResponse

func NewCipConnectedResponseBuilder

func NewCipConnectedResponseBuilder() CipConnectedResponseBuilder

NewCipConnectedResponseBuilder() creates a CipConnectedResponseBuilder

type CipConnectionManagerCloseRequest

type CipConnectionManagerCloseRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetRequestPathSize returns RequestPathSize (property field)
	GetRequestPathSize() uint8
	// GetClassSegment returns ClassSegment (property field)
	GetClassSegment() PathSegment
	// GetInstanceSegment returns InstanceSegment (property field)
	GetInstanceSegment() PathSegment
	// GetPriority returns Priority (property field)
	GetPriority() uint8
	// GetTickTime returns TickTime (property field)
	GetTickTime() uint8
	// GetTimeoutTicks returns TimeoutTicks (property field)
	GetTimeoutTicks() uint8
	// GetConnectionSerialNumber returns ConnectionSerialNumber (property field)
	GetConnectionSerialNumber() uint16
	// GetOriginatorVendorId returns OriginatorVendorId (property field)
	GetOriginatorVendorId() uint16
	// GetOriginatorSerialNumber returns OriginatorSerialNumber (property field)
	GetOriginatorSerialNumber() uint32
	// GetConnectionPathSize returns ConnectionPathSize (property field)
	GetConnectionPathSize() uint8
	// GetConnectionPaths returns ConnectionPaths (property field)
	GetConnectionPaths() []PathSegment
	// IsCipConnectionManagerCloseRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipConnectionManagerCloseRequest()
	// CreateBuilder creates a CipConnectionManagerCloseRequestBuilder
	CreateCipConnectionManagerCloseRequestBuilder() CipConnectionManagerCloseRequestBuilder
}

CipConnectionManagerCloseRequest is the corresponding interface of CipConnectionManagerCloseRequest

func CastCipConnectionManagerCloseRequest deprecated

func CastCipConnectionManagerCloseRequest(structType any) CipConnectionManagerCloseRequest

Deprecated: use the interface for direct cast

type CipConnectionManagerCloseRequestBuilder

type CipConnectionManagerCloseRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(requestPathSize uint8, classSegment PathSegment, instanceSegment PathSegment, priority uint8, tickTime uint8, timeoutTicks uint8, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, connectionPathSize uint8, connectionPaths []PathSegment) CipConnectionManagerCloseRequestBuilder
	// WithRequestPathSize adds RequestPathSize (property field)
	WithRequestPathSize(uint8) CipConnectionManagerCloseRequestBuilder
	// WithClassSegment adds ClassSegment (property field)
	WithClassSegment(PathSegment) CipConnectionManagerCloseRequestBuilder
	// WithClassSegmentBuilder adds ClassSegment (property field) which is build by the builder
	WithClassSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) CipConnectionManagerCloseRequestBuilder
	// WithInstanceSegment adds InstanceSegment (property field)
	WithInstanceSegment(PathSegment) CipConnectionManagerCloseRequestBuilder
	// WithInstanceSegmentBuilder adds InstanceSegment (property field) which is build by the builder
	WithInstanceSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) CipConnectionManagerCloseRequestBuilder
	// WithPriority adds Priority (property field)
	WithPriority(uint8) CipConnectionManagerCloseRequestBuilder
	// WithTickTime adds TickTime (property field)
	WithTickTime(uint8) CipConnectionManagerCloseRequestBuilder
	// WithTimeoutTicks adds TimeoutTicks (property field)
	WithTimeoutTicks(uint8) CipConnectionManagerCloseRequestBuilder
	// WithConnectionSerialNumber adds ConnectionSerialNumber (property field)
	WithConnectionSerialNumber(uint16) CipConnectionManagerCloseRequestBuilder
	// WithOriginatorVendorId adds OriginatorVendorId (property field)
	WithOriginatorVendorId(uint16) CipConnectionManagerCloseRequestBuilder
	// WithOriginatorSerialNumber adds OriginatorSerialNumber (property field)
	WithOriginatorSerialNumber(uint32) CipConnectionManagerCloseRequestBuilder
	// WithConnectionPathSize adds ConnectionPathSize (property field)
	WithConnectionPathSize(uint8) CipConnectionManagerCloseRequestBuilder
	// WithConnectionPaths adds ConnectionPaths (property field)
	WithConnectionPaths(...PathSegment) CipConnectionManagerCloseRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipConnectionManagerCloseRequest or returns an error if something is wrong
	Build() (CipConnectionManagerCloseRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipConnectionManagerCloseRequest
}

CipConnectionManagerCloseRequestBuilder is a builder for CipConnectionManagerCloseRequest

func NewCipConnectionManagerCloseRequestBuilder

func NewCipConnectionManagerCloseRequestBuilder() CipConnectionManagerCloseRequestBuilder

NewCipConnectionManagerCloseRequestBuilder() creates a CipConnectionManagerCloseRequestBuilder

type CipConnectionManagerCloseResponse

type CipConnectionManagerCloseResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetStatus returns Status (property field)
	GetStatus() uint8
	// GetAdditionalStatusWords returns AdditionalStatusWords (property field)
	GetAdditionalStatusWords() uint8
	// GetConnectionSerialNumber returns ConnectionSerialNumber (property field)
	GetConnectionSerialNumber() uint16
	// GetOriginatorVendorId returns OriginatorVendorId (property field)
	GetOriginatorVendorId() uint16
	// GetOriginatorSerialNumber returns OriginatorSerialNumber (property field)
	GetOriginatorSerialNumber() uint32
	// GetApplicationReplySize returns ApplicationReplySize (property field)
	GetApplicationReplySize() uint8
	// IsCipConnectionManagerCloseResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipConnectionManagerCloseResponse()
	// CreateBuilder creates a CipConnectionManagerCloseResponseBuilder
	CreateCipConnectionManagerCloseResponseBuilder() CipConnectionManagerCloseResponseBuilder
}

CipConnectionManagerCloseResponse is the corresponding interface of CipConnectionManagerCloseResponse

func CastCipConnectionManagerCloseResponse deprecated

func CastCipConnectionManagerCloseResponse(structType any) CipConnectionManagerCloseResponse

Deprecated: use the interface for direct cast

type CipConnectionManagerCloseResponseBuilder

type CipConnectionManagerCloseResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(status uint8, additionalStatusWords uint8, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, applicationReplySize uint8) CipConnectionManagerCloseResponseBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint8) CipConnectionManagerCloseResponseBuilder
	// WithAdditionalStatusWords adds AdditionalStatusWords (property field)
	WithAdditionalStatusWords(uint8) CipConnectionManagerCloseResponseBuilder
	// WithConnectionSerialNumber adds ConnectionSerialNumber (property field)
	WithConnectionSerialNumber(uint16) CipConnectionManagerCloseResponseBuilder
	// WithOriginatorVendorId adds OriginatorVendorId (property field)
	WithOriginatorVendorId(uint16) CipConnectionManagerCloseResponseBuilder
	// WithOriginatorSerialNumber adds OriginatorSerialNumber (property field)
	WithOriginatorSerialNumber(uint32) CipConnectionManagerCloseResponseBuilder
	// WithApplicationReplySize adds ApplicationReplySize (property field)
	WithApplicationReplySize(uint8) CipConnectionManagerCloseResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipConnectionManagerCloseResponse or returns an error if something is wrong
	Build() (CipConnectionManagerCloseResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipConnectionManagerCloseResponse
}

CipConnectionManagerCloseResponseBuilder is a builder for CipConnectionManagerCloseResponse

func NewCipConnectionManagerCloseResponseBuilder

func NewCipConnectionManagerCloseResponseBuilder() CipConnectionManagerCloseResponseBuilder

NewCipConnectionManagerCloseResponseBuilder() creates a CipConnectionManagerCloseResponseBuilder

type CipConnectionManagerRequest

type CipConnectionManagerRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetClassSegment returns ClassSegment (property field)
	GetClassSegment() PathSegment
	// GetInstanceSegment returns InstanceSegment (property field)
	GetInstanceSegment() PathSegment
	// GetPriority returns Priority (property field)
	GetPriority() uint8
	// GetTickTime returns TickTime (property field)
	GetTickTime() uint8
	// GetTimeoutTicks returns TimeoutTicks (property field)
	GetTimeoutTicks() uint8
	// GetOtConnectionId returns OtConnectionId (property field)
	GetOtConnectionId() uint32
	// GetToConnectionId returns ToConnectionId (property field)
	GetToConnectionId() uint32
	// GetConnectionSerialNumber returns ConnectionSerialNumber (property field)
	GetConnectionSerialNumber() uint16
	// GetOriginatorVendorId returns OriginatorVendorId (property field)
	GetOriginatorVendorId() uint16
	// GetOriginatorSerialNumber returns OriginatorSerialNumber (property field)
	GetOriginatorSerialNumber() uint32
	// GetTimeoutMultiplier returns TimeoutMultiplier (property field)
	GetTimeoutMultiplier() uint8
	// GetOtRpi returns OtRpi (property field)
	GetOtRpi() uint32
	// GetOtConnectionParameters returns OtConnectionParameters (property field)
	GetOtConnectionParameters() NetworkConnectionParameters
	// GetToRpi returns ToRpi (property field)
	GetToRpi() uint32
	// GetToConnectionParameters returns ToConnectionParameters (property field)
	GetToConnectionParameters() NetworkConnectionParameters
	// GetTransportType returns TransportType (property field)
	GetTransportType() TransportType
	// GetConnectionPathSize returns ConnectionPathSize (property field)
	GetConnectionPathSize() uint8
	// GetConnectionPaths returns ConnectionPaths (property field)
	GetConnectionPaths() []PathSegment
	// IsCipConnectionManagerRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipConnectionManagerRequest()
	// CreateBuilder creates a CipConnectionManagerRequestBuilder
	CreateCipConnectionManagerRequestBuilder() CipConnectionManagerRequestBuilder
}

CipConnectionManagerRequest is the corresponding interface of CipConnectionManagerRequest

func CastCipConnectionManagerRequest deprecated

func CastCipConnectionManagerRequest(structType any) CipConnectionManagerRequest

Deprecated: use the interface for direct cast

type CipConnectionManagerRequestBuilder

type CipConnectionManagerRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(classSegment PathSegment, instanceSegment PathSegment, priority uint8, tickTime uint8, timeoutTicks uint8, otConnectionId uint32, toConnectionId uint32, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, timeoutMultiplier uint8, otRpi uint32, otConnectionParameters NetworkConnectionParameters, toRpi uint32, toConnectionParameters NetworkConnectionParameters, transportType TransportType, connectionPathSize uint8, connectionPaths []PathSegment) CipConnectionManagerRequestBuilder
	// WithClassSegment adds ClassSegment (property field)
	WithClassSegment(PathSegment) CipConnectionManagerRequestBuilder
	// WithClassSegmentBuilder adds ClassSegment (property field) which is build by the builder
	WithClassSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) CipConnectionManagerRequestBuilder
	// WithInstanceSegment adds InstanceSegment (property field)
	WithInstanceSegment(PathSegment) CipConnectionManagerRequestBuilder
	// WithInstanceSegmentBuilder adds InstanceSegment (property field) which is build by the builder
	WithInstanceSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) CipConnectionManagerRequestBuilder
	// WithPriority adds Priority (property field)
	WithPriority(uint8) CipConnectionManagerRequestBuilder
	// WithTickTime adds TickTime (property field)
	WithTickTime(uint8) CipConnectionManagerRequestBuilder
	// WithTimeoutTicks adds TimeoutTicks (property field)
	WithTimeoutTicks(uint8) CipConnectionManagerRequestBuilder
	// WithOtConnectionId adds OtConnectionId (property field)
	WithOtConnectionId(uint32) CipConnectionManagerRequestBuilder
	// WithToConnectionId adds ToConnectionId (property field)
	WithToConnectionId(uint32) CipConnectionManagerRequestBuilder
	// WithConnectionSerialNumber adds ConnectionSerialNumber (property field)
	WithConnectionSerialNumber(uint16) CipConnectionManagerRequestBuilder
	// WithOriginatorVendorId adds OriginatorVendorId (property field)
	WithOriginatorVendorId(uint16) CipConnectionManagerRequestBuilder
	// WithOriginatorSerialNumber adds OriginatorSerialNumber (property field)
	WithOriginatorSerialNumber(uint32) CipConnectionManagerRequestBuilder
	// WithTimeoutMultiplier adds TimeoutMultiplier (property field)
	WithTimeoutMultiplier(uint8) CipConnectionManagerRequestBuilder
	// WithOtRpi adds OtRpi (property field)
	WithOtRpi(uint32) CipConnectionManagerRequestBuilder
	// WithOtConnectionParameters adds OtConnectionParameters (property field)
	WithOtConnectionParameters(NetworkConnectionParameters) CipConnectionManagerRequestBuilder
	// WithOtConnectionParametersBuilder adds OtConnectionParameters (property field) which is build by the builder
	WithOtConnectionParametersBuilder(func(NetworkConnectionParametersBuilder) NetworkConnectionParametersBuilder) CipConnectionManagerRequestBuilder
	// WithToRpi adds ToRpi (property field)
	WithToRpi(uint32) CipConnectionManagerRequestBuilder
	// WithToConnectionParameters adds ToConnectionParameters (property field)
	WithToConnectionParameters(NetworkConnectionParameters) CipConnectionManagerRequestBuilder
	// WithToConnectionParametersBuilder adds ToConnectionParameters (property field) which is build by the builder
	WithToConnectionParametersBuilder(func(NetworkConnectionParametersBuilder) NetworkConnectionParametersBuilder) CipConnectionManagerRequestBuilder
	// WithTransportType adds TransportType (property field)
	WithTransportType(TransportType) CipConnectionManagerRequestBuilder
	// WithTransportTypeBuilder adds TransportType (property field) which is build by the builder
	WithTransportTypeBuilder(func(TransportTypeBuilder) TransportTypeBuilder) CipConnectionManagerRequestBuilder
	// WithConnectionPathSize adds ConnectionPathSize (property field)
	WithConnectionPathSize(uint8) CipConnectionManagerRequestBuilder
	// WithConnectionPaths adds ConnectionPaths (property field)
	WithConnectionPaths(...PathSegment) CipConnectionManagerRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipConnectionManagerRequest or returns an error if something is wrong
	Build() (CipConnectionManagerRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipConnectionManagerRequest
}

CipConnectionManagerRequestBuilder is a builder for CipConnectionManagerRequest

func NewCipConnectionManagerRequestBuilder

func NewCipConnectionManagerRequestBuilder() CipConnectionManagerRequestBuilder

NewCipConnectionManagerRequestBuilder() creates a CipConnectionManagerRequestBuilder

type CipConnectionManagerResponse

type CipConnectionManagerResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetOtConnectionId returns OtConnectionId (property field)
	GetOtConnectionId() uint32
	// GetToConnectionId returns ToConnectionId (property field)
	GetToConnectionId() uint32
	// GetConnectionSerialNumber returns ConnectionSerialNumber (property field)
	GetConnectionSerialNumber() uint16
	// GetOriginatorVendorId returns OriginatorVendorId (property field)
	GetOriginatorVendorId() uint16
	// GetOriginatorSerialNumber returns OriginatorSerialNumber (property field)
	GetOriginatorSerialNumber() uint32
	// GetOtApi returns OtApi (property field)
	GetOtApi() uint32
	// GetToApi returns ToApi (property field)
	GetToApi() uint32
	// IsCipConnectionManagerResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipConnectionManagerResponse()
	// CreateBuilder creates a CipConnectionManagerResponseBuilder
	CreateCipConnectionManagerResponseBuilder() CipConnectionManagerResponseBuilder
}

CipConnectionManagerResponse is the corresponding interface of CipConnectionManagerResponse

func CastCipConnectionManagerResponse deprecated

func CastCipConnectionManagerResponse(structType any) CipConnectionManagerResponse

Deprecated: use the interface for direct cast

type CipConnectionManagerResponseBuilder

type CipConnectionManagerResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(otConnectionId uint32, toConnectionId uint32, connectionSerialNumber uint16, originatorVendorId uint16, originatorSerialNumber uint32, otApi uint32, toApi uint32) CipConnectionManagerResponseBuilder
	// WithOtConnectionId adds OtConnectionId (property field)
	WithOtConnectionId(uint32) CipConnectionManagerResponseBuilder
	// WithToConnectionId adds ToConnectionId (property field)
	WithToConnectionId(uint32) CipConnectionManagerResponseBuilder
	// WithConnectionSerialNumber adds ConnectionSerialNumber (property field)
	WithConnectionSerialNumber(uint16) CipConnectionManagerResponseBuilder
	// WithOriginatorVendorId adds OriginatorVendorId (property field)
	WithOriginatorVendorId(uint16) CipConnectionManagerResponseBuilder
	// WithOriginatorSerialNumber adds OriginatorSerialNumber (property field)
	WithOriginatorSerialNumber(uint32) CipConnectionManagerResponseBuilder
	// WithOtApi adds OtApi (property field)
	WithOtApi(uint32) CipConnectionManagerResponseBuilder
	// WithToApi adds ToApi (property field)
	WithToApi(uint32) CipConnectionManagerResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipConnectionManagerResponse or returns an error if something is wrong
	Build() (CipConnectionManagerResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipConnectionManagerResponse
}

CipConnectionManagerResponseBuilder is a builder for CipConnectionManagerResponse

func NewCipConnectionManagerResponseBuilder

func NewCipConnectionManagerResponseBuilder() CipConnectionManagerResponseBuilder

NewCipConnectionManagerResponseBuilder() creates a CipConnectionManagerResponseBuilder

type CipIdentity

type CipIdentity interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CommandSpecificDataItem
	// GetEncapsulationProtocolVersion returns EncapsulationProtocolVersion (property field)
	GetEncapsulationProtocolVersion() uint16
	// GetSocketAddressFamily returns SocketAddressFamily (property field)
	GetSocketAddressFamily() uint16
	// GetSocketAddressPort returns SocketAddressPort (property field)
	GetSocketAddressPort() uint16
	// GetSocketAddressAddress returns SocketAddressAddress (property field)
	GetSocketAddressAddress() []uint8
	// GetVendorId returns VendorId (property field)
	GetVendorId() uint16
	// GetDeviceType returns DeviceType (property field)
	GetDeviceType() uint16
	// GetProductCode returns ProductCode (property field)
	GetProductCode() uint16
	// GetRevisionMajor returns RevisionMajor (property field)
	GetRevisionMajor() uint8
	// GetRevisionMinor returns RevisionMinor (property field)
	GetRevisionMinor() uint8
	// GetStatus returns Status (property field)
	GetStatus() uint16
	// GetSerialNumber returns SerialNumber (property field)
	GetSerialNumber() uint32
	// GetProductName returns ProductName (property field)
	GetProductName() string
	// GetState returns State (property field)
	GetState() uint8
	// IsCipIdentity is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipIdentity()
	// CreateBuilder creates a CipIdentityBuilder
	CreateCipIdentityBuilder() CipIdentityBuilder
}

CipIdentity is the corresponding interface of CipIdentity

func CastCipIdentity deprecated

func CastCipIdentity(structType any) CipIdentity

Deprecated: use the interface for direct cast

type CipIdentityBuilder

type CipIdentityBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(encapsulationProtocolVersion uint16, socketAddressFamily uint16, socketAddressPort uint16, socketAddressAddress []uint8, vendorId uint16, deviceType uint16, productCode uint16, revisionMajor uint8, revisionMinor uint8, status uint16, serialNumber uint32, productName string, state uint8) CipIdentityBuilder
	// WithEncapsulationProtocolVersion adds EncapsulationProtocolVersion (property field)
	WithEncapsulationProtocolVersion(uint16) CipIdentityBuilder
	// WithSocketAddressFamily adds SocketAddressFamily (property field)
	WithSocketAddressFamily(uint16) CipIdentityBuilder
	// WithSocketAddressPort adds SocketAddressPort (property field)
	WithSocketAddressPort(uint16) CipIdentityBuilder
	// WithSocketAddressAddress adds SocketAddressAddress (property field)
	WithSocketAddressAddress(...uint8) CipIdentityBuilder
	// WithVendorId adds VendorId (property field)
	WithVendorId(uint16) CipIdentityBuilder
	// WithDeviceType adds DeviceType (property field)
	WithDeviceType(uint16) CipIdentityBuilder
	// WithProductCode adds ProductCode (property field)
	WithProductCode(uint16) CipIdentityBuilder
	// WithRevisionMajor adds RevisionMajor (property field)
	WithRevisionMajor(uint8) CipIdentityBuilder
	// WithRevisionMinor adds RevisionMinor (property field)
	WithRevisionMinor(uint8) CipIdentityBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint16) CipIdentityBuilder
	// WithSerialNumber adds SerialNumber (property field)
	WithSerialNumber(uint32) CipIdentityBuilder
	// WithProductName adds ProductName (property field)
	WithProductName(string) CipIdentityBuilder
	// WithState adds State (property field)
	WithState(uint8) CipIdentityBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CommandSpecificDataItemBuilder
	// Build builds the CipIdentity or returns an error if something is wrong
	Build() (CipIdentity, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipIdentity
}

CipIdentityBuilder is a builder for CipIdentity

func NewCipIdentityBuilder

func NewCipIdentityBuilder() CipIdentityBuilder

NewCipIdentityBuilder() creates a CipIdentityBuilder

type CipRRData

type CipRRData interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// GetInterfaceHandle returns InterfaceHandle (property field)
	GetInterfaceHandle() uint32
	// GetTimeout returns Timeout (property field)
	GetTimeout() uint16
	// GetTypeIds returns TypeIds (property field)
	GetTypeIds() []TypeId
	// IsCipRRData is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipRRData()
	// CreateBuilder creates a CipRRDataBuilder
	CreateCipRRDataBuilder() CipRRDataBuilder
}

CipRRData is the corresponding interface of CipRRData

func CastCipRRData deprecated

func CastCipRRData(structType any) CipRRData

Deprecated: use the interface for direct cast

type CipRRDataBuilder

type CipRRDataBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(interfaceHandle uint32, timeout uint16, typeIds []TypeId) CipRRDataBuilder
	// WithInterfaceHandle adds InterfaceHandle (property field)
	WithInterfaceHandle(uint32) CipRRDataBuilder
	// WithTimeout adds Timeout (property field)
	WithTimeout(uint16) CipRRDataBuilder
	// WithTypeIds adds TypeIds (property field)
	WithTypeIds(...TypeId) CipRRDataBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the CipRRData or returns an error if something is wrong
	Build() (CipRRData, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipRRData
}

CipRRDataBuilder is a builder for CipRRData

func NewCipRRDataBuilder

func NewCipRRDataBuilder() CipRRDataBuilder

NewCipRRDataBuilder() creates a CipRRDataBuilder

type CipReadRequest

type CipReadRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetTag returns Tag (property field)
	GetTag() []byte
	// GetElementNb returns ElementNb (property field)
	GetElementNb() uint16
	// IsCipReadRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipReadRequest()
	// CreateBuilder creates a CipReadRequestBuilder
	CreateCipReadRequestBuilder() CipReadRequestBuilder
}

CipReadRequest is the corresponding interface of CipReadRequest

func CastCipReadRequest deprecated

func CastCipReadRequest(structType any) CipReadRequest

Deprecated: use the interface for direct cast

type CipReadRequestBuilder

type CipReadRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(tag []byte, elementNb uint16) CipReadRequestBuilder
	// WithTag adds Tag (property field)
	WithTag(...byte) CipReadRequestBuilder
	// WithElementNb adds ElementNb (property field)
	WithElementNb(uint16) CipReadRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipReadRequest or returns an error if something is wrong
	Build() (CipReadRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipReadRequest
}

CipReadRequestBuilder is a builder for CipReadRequest

func NewCipReadRequestBuilder

func NewCipReadRequestBuilder() CipReadRequestBuilder

NewCipReadRequestBuilder() creates a CipReadRequestBuilder

type CipReadResponse

type CipReadResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetStatus returns Status (property field)
	GetStatus() uint8
	// GetExtStatus returns ExtStatus (property field)
	GetExtStatus() uint8
	// GetData returns Data (property field)
	GetData() CIPData
	// IsCipReadResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipReadResponse()
	// CreateBuilder creates a CipReadResponseBuilder
	CreateCipReadResponseBuilder() CipReadResponseBuilder
}

CipReadResponse is the corresponding interface of CipReadResponse

func CastCipReadResponse deprecated

func CastCipReadResponse(structType any) CipReadResponse

Deprecated: use the interface for direct cast

type CipReadResponseBuilder

type CipReadResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(status uint8, extStatus uint8) CipReadResponseBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint8) CipReadResponseBuilder
	// WithExtStatus adds ExtStatus (property field)
	WithExtStatus(uint8) CipReadResponseBuilder
	// WithData adds Data (property field)
	WithOptionalData(CIPData) CipReadResponseBuilder
	// WithOptionalDataBuilder adds Data (property field) which is build by the builder
	WithOptionalDataBuilder(func(CIPDataBuilder) CIPDataBuilder) CipReadResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipReadResponse or returns an error if something is wrong
	Build() (CipReadResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipReadResponse
}

CipReadResponseBuilder is a builder for CipReadResponse

func NewCipReadResponseBuilder

func NewCipReadResponseBuilder() CipReadResponseBuilder

NewCipReadResponseBuilder() creates a CipReadResponseBuilder

type CipSecurityInformation

type CipSecurityInformation interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CommandSpecificDataItem
	// GetTodoImplement returns TodoImplement (property field)
	GetTodoImplement() []uint8
	// IsCipSecurityInformation is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipSecurityInformation()
	// CreateBuilder creates a CipSecurityInformationBuilder
	CreateCipSecurityInformationBuilder() CipSecurityInformationBuilder
}

CipSecurityInformation is the corresponding interface of CipSecurityInformation

func CastCipSecurityInformation deprecated

func CastCipSecurityInformation(structType any) CipSecurityInformation

Deprecated: use the interface for direct cast

type CipSecurityInformationBuilder

type CipSecurityInformationBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(todoImplement []uint8) CipSecurityInformationBuilder
	// WithTodoImplement adds TodoImplement (property field)
	WithTodoImplement(...uint8) CipSecurityInformationBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CommandSpecificDataItemBuilder
	// Build builds the CipSecurityInformation or returns an error if something is wrong
	Build() (CipSecurityInformation, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipSecurityInformation
}

CipSecurityInformationBuilder is a builder for CipSecurityInformation

func NewCipSecurityInformationBuilder

func NewCipSecurityInformationBuilder() CipSecurityInformationBuilder

NewCipSecurityInformationBuilder() creates a CipSecurityInformationBuilder

type CipService

type CipService interface {
	CipServiceContract
	CipServiceRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsCipService is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipService()
	// CreateBuilder creates a CipServiceBuilder
	CreateCipServiceBuilder() CipServiceBuilder
}

CipService is the corresponding interface of CipService

func CastCipService deprecated

func CastCipService(structType any) CipService

Deprecated: use the interface for direct cast

type CipServiceBuilder

type CipServiceBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() CipServiceBuilder
	// WithArgServiceLen sets a parser argument
	WithArgServiceLen(uint16) CipServiceBuilder
	// AsGetAttributeAllRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsGetAttributeAllRequest() GetAttributeAllRequestBuilder
	// AsGetAttributeAllResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsGetAttributeAllResponse() GetAttributeAllResponseBuilder
	// AsSetAttributeAllRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsSetAttributeAllRequest() SetAttributeAllRequestBuilder
	// AsSetAttributeAllResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsSetAttributeAllResponse() SetAttributeAllResponseBuilder
	// AsGetAttributeListRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsGetAttributeListRequest() GetAttributeListRequestBuilder
	// AsGetAttributeListResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsGetAttributeListResponse() GetAttributeListResponseBuilder
	// AsSetAttributeListRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsSetAttributeListRequest() SetAttributeListRequestBuilder
	// AsSetAttributeListResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsSetAttributeListResponse() SetAttributeListResponseBuilder
	// AsMultipleServiceRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsMultipleServiceRequest() MultipleServiceRequestBuilder
	// AsMultipleServiceResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsMultipleServiceResponse() MultipleServiceResponseBuilder
	// AsGetAttributeSingleRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsGetAttributeSingleRequest() GetAttributeSingleRequestBuilder
	// AsGetAttributeSingleResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsGetAttributeSingleResponse() GetAttributeSingleResponseBuilder
	// AsSetAttributeSingleRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsSetAttributeSingleRequest() SetAttributeSingleRequestBuilder
	// AsSetAttributeSingleResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsSetAttributeSingleResponse() SetAttributeSingleResponseBuilder
	// AsCipReadRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipReadRequest() CipReadRequestBuilder
	// AsCipReadResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipReadResponse() CipReadResponseBuilder
	// AsCipWriteRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipWriteRequest() CipWriteRequestBuilder
	// AsCipWriteResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipWriteResponse() CipWriteResponseBuilder
	// AsCipConnectionManagerCloseRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipConnectionManagerCloseRequest() CipConnectionManagerCloseRequestBuilder
	// AsCipConnectionManagerCloseResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipConnectionManagerCloseResponse() CipConnectionManagerCloseResponseBuilder
	// AsCipUnconnectedRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipUnconnectedRequest() CipUnconnectedRequestBuilder
	// AsCipConnectedRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipConnectedRequest() CipConnectedRequestBuilder
	// AsCipConnectedResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipConnectedResponse() CipConnectedResponseBuilder
	// AsCipConnectionManagerRequest converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipConnectionManagerRequest() CipConnectionManagerRequestBuilder
	// AsCipConnectionManagerResponse converts this build to a subType of CipService. It is always possible to return to current builder using Done()
	AsCipConnectionManagerResponse() CipConnectionManagerResponseBuilder
	// Build builds the CipService or returns an error if something is wrong
	PartialBuild() (CipServiceContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() CipServiceContract
	// Build builds the CipService or returns an error if something is wrong
	Build() (CipService, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipService
}

CipServiceBuilder is a builder for CipService

func NewCipServiceBuilder

func NewCipServiceBuilder() CipServiceBuilder

NewCipServiceBuilder() creates a CipServiceBuilder

type CipServiceContract

type CipServiceContract interface {
	// GetServiceLen() returns a parser argument
	GetServiceLen() uint16
	// IsCipService is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipService()
	// CreateBuilder creates a CipServiceBuilder
	CreateCipServiceBuilder() CipServiceBuilder
}

CipServiceContract provides a set of functions which can be overwritten by a sub struct

type CipServiceRequirements

type CipServiceRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetConnected returns Connected (discriminator field)
	GetConnected() bool
	// GetResponse returns Response (discriminator field)
	GetResponse() bool
	// GetService returns Service (discriminator field)
	GetService() uint8
}

CipServiceRequirements provides a set of functions which need to be implemented by a sub struct

type CipUnconnectedRequest

type CipUnconnectedRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetClassSegment returns ClassSegment (property field)
	GetClassSegment() PathSegment
	// GetInstanceSegment returns InstanceSegment (property field)
	GetInstanceSegment() PathSegment
	// GetUnconnectedService returns UnconnectedService (property field)
	GetUnconnectedService() CipService
	// GetBackPlane returns BackPlane (property field)
	GetBackPlane() int8
	// GetSlot returns Slot (property field)
	GetSlot() int8
	// IsCipUnconnectedRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipUnconnectedRequest()
	// CreateBuilder creates a CipUnconnectedRequestBuilder
	CreateCipUnconnectedRequestBuilder() CipUnconnectedRequestBuilder
}

CipUnconnectedRequest is the corresponding interface of CipUnconnectedRequest

func CastCipUnconnectedRequest deprecated

func CastCipUnconnectedRequest(structType any) CipUnconnectedRequest

Deprecated: use the interface for direct cast

type CipUnconnectedRequestBuilder

type CipUnconnectedRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(classSegment PathSegment, instanceSegment PathSegment, unconnectedService CipService, backPlane int8, slot int8) CipUnconnectedRequestBuilder
	// WithClassSegment adds ClassSegment (property field)
	WithClassSegment(PathSegment) CipUnconnectedRequestBuilder
	// WithClassSegmentBuilder adds ClassSegment (property field) which is build by the builder
	WithClassSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) CipUnconnectedRequestBuilder
	// WithInstanceSegment adds InstanceSegment (property field)
	WithInstanceSegment(PathSegment) CipUnconnectedRequestBuilder
	// WithInstanceSegmentBuilder adds InstanceSegment (property field) which is build by the builder
	WithInstanceSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) CipUnconnectedRequestBuilder
	// WithUnconnectedService adds UnconnectedService (property field)
	WithUnconnectedService(CipService) CipUnconnectedRequestBuilder
	// WithUnconnectedServiceBuilder adds UnconnectedService (property field) which is build by the builder
	WithUnconnectedServiceBuilder(func(CipServiceBuilder) CipServiceBuilder) CipUnconnectedRequestBuilder
	// WithBackPlane adds BackPlane (property field)
	WithBackPlane(int8) CipUnconnectedRequestBuilder
	// WithSlot adds Slot (property field)
	WithSlot(int8) CipUnconnectedRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipUnconnectedRequest or returns an error if something is wrong
	Build() (CipUnconnectedRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipUnconnectedRequest
}

CipUnconnectedRequestBuilder is a builder for CipUnconnectedRequest

func NewCipUnconnectedRequestBuilder

func NewCipUnconnectedRequestBuilder() CipUnconnectedRequestBuilder

NewCipUnconnectedRequestBuilder() creates a CipUnconnectedRequestBuilder

type CipWriteRequest

type CipWriteRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetTag returns Tag (property field)
	GetTag() []byte
	// GetDataType returns DataType (property field)
	GetDataType() CIPDataTypeCode
	// GetElementNb returns ElementNb (property field)
	GetElementNb() uint16
	// GetData returns Data (property field)
	GetData() []byte
	// IsCipWriteRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipWriteRequest()
	// CreateBuilder creates a CipWriteRequestBuilder
	CreateCipWriteRequestBuilder() CipWriteRequestBuilder
}

CipWriteRequest is the corresponding interface of CipWriteRequest

func CastCipWriteRequest deprecated

func CastCipWriteRequest(structType any) CipWriteRequest

Deprecated: use the interface for direct cast

type CipWriteRequestBuilder

type CipWriteRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(tag []byte, dataType CIPDataTypeCode, elementNb uint16, data []byte) CipWriteRequestBuilder
	// WithTag adds Tag (property field)
	WithTag(...byte) CipWriteRequestBuilder
	// WithDataType adds DataType (property field)
	WithDataType(CIPDataTypeCode) CipWriteRequestBuilder
	// WithElementNb adds ElementNb (property field)
	WithElementNb(uint16) CipWriteRequestBuilder
	// WithData adds Data (property field)
	WithData(...byte) CipWriteRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipWriteRequest or returns an error if something is wrong
	Build() (CipWriteRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipWriteRequest
}

CipWriteRequestBuilder is a builder for CipWriteRequest

func NewCipWriteRequestBuilder

func NewCipWriteRequestBuilder() CipWriteRequestBuilder

NewCipWriteRequestBuilder() creates a CipWriteRequestBuilder

type CipWriteResponse

type CipWriteResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetStatus returns Status (property field)
	GetStatus() uint8
	// GetExtStatus returns ExtStatus (property field)
	GetExtStatus() uint8
	// IsCipWriteResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCipWriteResponse()
	// CreateBuilder creates a CipWriteResponseBuilder
	CreateCipWriteResponseBuilder() CipWriteResponseBuilder
}

CipWriteResponse is the corresponding interface of CipWriteResponse

func CastCipWriteResponse deprecated

func CastCipWriteResponse(structType any) CipWriteResponse

Deprecated: use the interface for direct cast

type CipWriteResponseBuilder

type CipWriteResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(status uint8, extStatus uint8) CipWriteResponseBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint8) CipWriteResponseBuilder
	// WithExtStatus adds ExtStatus (property field)
	WithExtStatus(uint8) CipWriteResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the CipWriteResponse or returns an error if something is wrong
	Build() (CipWriteResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CipWriteResponse
}

CipWriteResponseBuilder is a builder for CipWriteResponse

func NewCipWriteResponseBuilder

func NewCipWriteResponseBuilder() CipWriteResponseBuilder

NewCipWriteResponseBuilder() creates a CipWriteResponseBuilder

type ClassID

type ClassID interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	LogicalSegmentType
	// GetFormat returns Format (property field)
	GetFormat() uint8
	// GetSegmentClass returns SegmentClass (property field)
	GetSegmentClass() uint8
	// IsClassID is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsClassID()
	// CreateBuilder creates a ClassIDBuilder
	CreateClassIDBuilder() ClassIDBuilder
}

ClassID is the corresponding interface of ClassID

func CastClassID deprecated

func CastClassID(structType any) ClassID

Deprecated: use the interface for direct cast

type ClassIDBuilder

type ClassIDBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(format uint8, segmentClass uint8) ClassIDBuilder
	// WithFormat adds Format (property field)
	WithFormat(uint8) ClassIDBuilder
	// WithSegmentClass adds SegmentClass (property field)
	WithSegmentClass(uint8) ClassIDBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() LogicalSegmentTypeBuilder
	// Build builds the ClassID or returns an error if something is wrong
	Build() (ClassID, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ClassID
}

ClassIDBuilder is a builder for ClassID

func NewClassIDBuilder

func NewClassIDBuilder() ClassIDBuilder

NewClassIDBuilder() creates a ClassIDBuilder

type ClassSegment

type ClassSegment interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetPathSegmentType returns PathSegmentType (property field)
	GetPathSegmentType() uint8
	// GetLogicalSegmentType returns LogicalSegmentType (property field)
	GetLogicalSegmentType() uint8
	// GetLogicalSegmentFormat returns LogicalSegmentFormat (property field)
	GetLogicalSegmentFormat() uint8
	// GetClassSegment returns ClassSegment (property field)
	GetClassSegment() uint8
	// IsClassSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsClassSegment()
	// CreateBuilder creates a ClassSegmentBuilder
	CreateClassSegmentBuilder() ClassSegmentBuilder
}

ClassSegment is the corresponding interface of ClassSegment

func CastClassSegment deprecated

func CastClassSegment(structType any) ClassSegment

Deprecated: use the interface for direct cast

func ClassSegmentParse

func ClassSegmentParse(ctx context.Context, theBytes []byte) (ClassSegment, error)

func ClassSegmentParseWithBuffer

func ClassSegmentParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ClassSegment, error)

type ClassSegmentBuilder

type ClassSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(pathSegmentType uint8, logicalSegmentType uint8, logicalSegmentFormat uint8, classSegment uint8) ClassSegmentBuilder
	// WithPathSegmentType adds PathSegmentType (property field)
	WithPathSegmentType(uint8) ClassSegmentBuilder
	// WithLogicalSegmentType adds LogicalSegmentType (property field)
	WithLogicalSegmentType(uint8) ClassSegmentBuilder
	// WithLogicalSegmentFormat adds LogicalSegmentFormat (property field)
	WithLogicalSegmentFormat(uint8) ClassSegmentBuilder
	// WithClassSegment adds ClassSegment (property field)
	WithClassSegment(uint8) ClassSegmentBuilder
	// Build builds the ClassSegment or returns an error if something is wrong
	Build() (ClassSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ClassSegment
}

ClassSegmentBuilder is a builder for ClassSegment

func NewClassSegmentBuilder

func NewClassSegmentBuilder() ClassSegmentBuilder

NewClassSegmentBuilder() creates a ClassSegmentBuilder

type CommandSpecificDataItem

type CommandSpecificDataItem interface {
	CommandSpecificDataItemContract
	CommandSpecificDataItemRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsCommandSpecificDataItem is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCommandSpecificDataItem()
	// CreateBuilder creates a CommandSpecificDataItemBuilder
	CreateCommandSpecificDataItemBuilder() CommandSpecificDataItemBuilder
}

CommandSpecificDataItem is the corresponding interface of CommandSpecificDataItem

func CastCommandSpecificDataItem deprecated

func CastCommandSpecificDataItem(structType any) CommandSpecificDataItem

Deprecated: use the interface for direct cast

type CommandSpecificDataItemBuilder

type CommandSpecificDataItemBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() CommandSpecificDataItemBuilder
	// AsCipIdentity converts this build to a subType of CommandSpecificDataItem. It is always possible to return to current builder using Done()
	AsCipIdentity() CipIdentityBuilder
	// AsCipSecurityInformation converts this build to a subType of CommandSpecificDataItem. It is always possible to return to current builder using Done()
	AsCipSecurityInformation() CipSecurityInformationBuilder
	// Build builds the CommandSpecificDataItem or returns an error if something is wrong
	PartialBuild() (CommandSpecificDataItemContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() CommandSpecificDataItemContract
	// Build builds the CommandSpecificDataItem or returns an error if something is wrong
	Build() (CommandSpecificDataItem, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() CommandSpecificDataItem
}

CommandSpecificDataItemBuilder is a builder for CommandSpecificDataItem

func NewCommandSpecificDataItemBuilder

func NewCommandSpecificDataItemBuilder() CommandSpecificDataItemBuilder

NewCommandSpecificDataItemBuilder() creates a CommandSpecificDataItemBuilder

type CommandSpecificDataItemContract

type CommandSpecificDataItemContract interface {
	// IsCommandSpecificDataItem is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsCommandSpecificDataItem()
	// CreateBuilder creates a CommandSpecificDataItemBuilder
	CreateCommandSpecificDataItemBuilder() CommandSpecificDataItemBuilder
}

CommandSpecificDataItemContract provides a set of functions which can be overwritten by a sub struct

type CommandSpecificDataItemRequirements

type CommandSpecificDataItemRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetItemType returns ItemType (discriminator field)
	GetItemType() uint16
}

CommandSpecificDataItemRequirements provides a set of functions which need to be implemented by a sub struct

type ConnectedAddressItem

type ConnectedAddressItem interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	TypeId
	// GetConnectionId returns ConnectionId (property field)
	GetConnectionId() uint32
	// IsConnectedAddressItem is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsConnectedAddressItem()
	// CreateBuilder creates a ConnectedAddressItemBuilder
	CreateConnectedAddressItemBuilder() ConnectedAddressItemBuilder
}

ConnectedAddressItem is the corresponding interface of ConnectedAddressItem

func CastConnectedAddressItem deprecated

func CastConnectedAddressItem(structType any) ConnectedAddressItem

Deprecated: use the interface for direct cast

type ConnectedAddressItemBuilder

type ConnectedAddressItemBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(connectionId uint32) ConnectedAddressItemBuilder
	// WithConnectionId adds ConnectionId (property field)
	WithConnectionId(uint32) ConnectedAddressItemBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() TypeIdBuilder
	// Build builds the ConnectedAddressItem or returns an error if something is wrong
	Build() (ConnectedAddressItem, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ConnectedAddressItem
}

ConnectedAddressItemBuilder is a builder for ConnectedAddressItem

func NewConnectedAddressItemBuilder

func NewConnectedAddressItemBuilder() ConnectedAddressItemBuilder

NewConnectedAddressItemBuilder() creates a ConnectedAddressItemBuilder

type ConnectedDataItem

type ConnectedDataItem interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	TypeId
	// GetSequenceCount returns SequenceCount (property field)
	GetSequenceCount() uint16
	// GetService returns Service (property field)
	GetService() CipService
	// IsConnectedDataItem is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsConnectedDataItem()
	// CreateBuilder creates a ConnectedDataItemBuilder
	CreateConnectedDataItemBuilder() ConnectedDataItemBuilder
}

ConnectedDataItem is the corresponding interface of ConnectedDataItem

func CastConnectedDataItem deprecated

func CastConnectedDataItem(structType any) ConnectedDataItem

Deprecated: use the interface for direct cast

type ConnectedDataItemBuilder

type ConnectedDataItemBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(sequenceCount uint16, service CipService) ConnectedDataItemBuilder
	// WithSequenceCount adds SequenceCount (property field)
	WithSequenceCount(uint16) ConnectedDataItemBuilder
	// WithService adds Service (property field)
	WithService(CipService) ConnectedDataItemBuilder
	// WithServiceBuilder adds Service (property field) which is build by the builder
	WithServiceBuilder(func(CipServiceBuilder) CipServiceBuilder) ConnectedDataItemBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() TypeIdBuilder
	// Build builds the ConnectedDataItem or returns an error if something is wrong
	Build() (ConnectedDataItem, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ConnectedDataItem
}

ConnectedDataItemBuilder is a builder for ConnectedDataItem

func NewConnectedDataItemBuilder

func NewConnectedDataItemBuilder() ConnectedDataItemBuilder

NewConnectedDataItemBuilder() creates a ConnectedDataItemBuilder

type DataSegment

type DataSegment interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	PathSegment
	// GetSegmentType returns SegmentType (property field)
	GetSegmentType() DataSegmentType
	// IsDataSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsDataSegment()
	// CreateBuilder creates a DataSegmentBuilder
	CreateDataSegmentBuilder() DataSegmentBuilder
}

DataSegment is the corresponding interface of DataSegment

func CastDataSegment deprecated

func CastDataSegment(structType any) DataSegment

Deprecated: use the interface for direct cast

type DataSegmentBuilder

type DataSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(segmentType DataSegmentType) DataSegmentBuilder
	// WithSegmentType adds SegmentType (property field)
	WithSegmentType(DataSegmentType) DataSegmentBuilder
	// WithSegmentTypeBuilder adds SegmentType (property field) which is build by the builder
	WithSegmentTypeBuilder(func(DataSegmentTypeBuilder) DataSegmentTypeBuilder) DataSegmentBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() PathSegmentBuilder
	// Build builds the DataSegment or returns an error if something is wrong
	Build() (DataSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() DataSegment
}

DataSegmentBuilder is a builder for DataSegment

func NewDataSegmentBuilder

func NewDataSegmentBuilder() DataSegmentBuilder

NewDataSegmentBuilder() creates a DataSegmentBuilder

type DataSegmentType

type DataSegmentType interface {
	DataSegmentTypeContract
	DataSegmentTypeRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsDataSegmentType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsDataSegmentType()
	// CreateBuilder creates a DataSegmentTypeBuilder
	CreateDataSegmentTypeBuilder() DataSegmentTypeBuilder
}

DataSegmentType is the corresponding interface of DataSegmentType

func CastDataSegmentType deprecated

func CastDataSegmentType(structType any) DataSegmentType

Deprecated: use the interface for direct cast

type DataSegmentTypeBuilder

type DataSegmentTypeBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() DataSegmentTypeBuilder
	// AsAnsiExtendedSymbolSegment converts this build to a subType of DataSegmentType. It is always possible to return to current builder using Done()
	AsAnsiExtendedSymbolSegment() AnsiExtendedSymbolSegmentBuilder
	// Build builds the DataSegmentType or returns an error if something is wrong
	PartialBuild() (DataSegmentTypeContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() DataSegmentTypeContract
	// Build builds the DataSegmentType or returns an error if something is wrong
	Build() (DataSegmentType, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() DataSegmentType
}

DataSegmentTypeBuilder is a builder for DataSegmentType

func NewDataSegmentTypeBuilder

func NewDataSegmentTypeBuilder() DataSegmentTypeBuilder

NewDataSegmentTypeBuilder() creates a DataSegmentTypeBuilder

type DataSegmentTypeContract

type DataSegmentTypeContract interface {
	// IsDataSegmentType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsDataSegmentType()
	// CreateBuilder creates a DataSegmentTypeBuilder
	CreateDataSegmentTypeBuilder() DataSegmentTypeBuilder
}

DataSegmentTypeContract provides a set of functions which can be overwritten by a sub struct

type DataSegmentTypeRequirements

type DataSegmentTypeRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetDataSegmentType returns DataSegmentType (discriminator field)
	GetDataSegmentType() uint8
}

DataSegmentTypeRequirements provides a set of functions which need to be implemented by a sub struct

type EiPCommand

type EiPCommand uint16

EiPCommand is an enum

const (
	EiPCommand_RegisterSession   EiPCommand = 0x0065
	EiPCommand_UnregisterSession EiPCommand = 0x0066
	EiPCommand_SendRRData        EiPCommand = 0x006F
)

func CastEiPCommand

func CastEiPCommand(structType any) EiPCommand

func EiPCommandByName

func EiPCommandByName(value string) (enum EiPCommand, ok bool)

func EiPCommandByValue

func EiPCommandByValue(value uint16) (enum EiPCommand, ok bool)

func EiPCommandParse

func EiPCommandParse(ctx context.Context, theBytes []byte) (EiPCommand, error)

func EiPCommandParseWithBuffer

func EiPCommandParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (EiPCommand, error)

func (EiPCommand) GetLengthInBits

func (m EiPCommand) GetLengthInBits(ctx context.Context) uint16

func (EiPCommand) GetLengthInBytes

func (m EiPCommand) GetLengthInBytes(ctx context.Context) uint16

func (EiPCommand) GetValue

func (e EiPCommand) GetValue() uint16

func (EiPCommand) PLC4XEnumName

func (e EiPCommand) PLC4XEnumName() string

PLC4XEnumName returns the name that is used in code to identify this enum

func (EiPCommand) Serialize

func (e EiPCommand) Serialize() ([]byte, error)

func (EiPCommand) SerializeWithWriteBuffer

func (e EiPCommand) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.WriteBuffer) error

func (EiPCommand) String

func (e EiPCommand) String() string

type EipConnectionRequest

type EipConnectionRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsEipConnectionRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipConnectionRequest()
	// CreateBuilder creates a EipConnectionRequestBuilder
	CreateEipConnectionRequestBuilder() EipConnectionRequestBuilder
}

EipConnectionRequest is the corresponding interface of EipConnectionRequest

func CastEipConnectionRequest deprecated

func CastEipConnectionRequest(structType any) EipConnectionRequest

Deprecated: use the interface for direct cast

type EipConnectionRequestBuilder

type EipConnectionRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() EipConnectionRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the EipConnectionRequest or returns an error if something is wrong
	Build() (EipConnectionRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipConnectionRequest
}

EipConnectionRequestBuilder is a builder for EipConnectionRequest

func NewEipConnectionRequestBuilder

func NewEipConnectionRequestBuilder() EipConnectionRequestBuilder

NewEipConnectionRequestBuilder() creates a EipConnectionRequestBuilder

type EipConnectionResponse

type EipConnectionResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsEipConnectionResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipConnectionResponse()
	// CreateBuilder creates a EipConnectionResponseBuilder
	CreateEipConnectionResponseBuilder() EipConnectionResponseBuilder
}

EipConnectionResponse is the corresponding interface of EipConnectionResponse

func CastEipConnectionResponse deprecated

func CastEipConnectionResponse(structType any) EipConnectionResponse

Deprecated: use the interface for direct cast

type EipConnectionResponseBuilder

type EipConnectionResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() EipConnectionResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the EipConnectionResponse or returns an error if something is wrong
	Build() (EipConnectionResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipConnectionResponse
}

EipConnectionResponseBuilder is a builder for EipConnectionResponse

func NewEipConnectionResponseBuilder

func NewEipConnectionResponseBuilder() EipConnectionResponseBuilder

NewEipConnectionResponseBuilder() creates a EipConnectionResponseBuilder

type EipConstants

type EipConstants interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsEipConstants is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipConstants()
	// CreateBuilder creates a EipConstantsBuilder
	CreateEipConstantsBuilder() EipConstantsBuilder
}

EipConstants is the corresponding interface of EipConstants

func CastEipConstants deprecated

func CastEipConstants(structType any) EipConstants

Deprecated: use the interface for direct cast

func EipConstantsParse

func EipConstantsParse(ctx context.Context, theBytes []byte) (EipConstants, error)

func EipConstantsParseWithBuffer

func EipConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (EipConstants, error)

type EipConstantsBuilder

type EipConstantsBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() EipConstantsBuilder
	// Build builds the EipConstants or returns an error if something is wrong
	Build() (EipConstants, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipConstants
}

EipConstantsBuilder is a builder for EipConstants

func NewEipConstantsBuilder

func NewEipConstantsBuilder() EipConstantsBuilder

NewEipConstantsBuilder() creates a EipConstantsBuilder

type EipDisconnectRequest

type EipDisconnectRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsEipDisconnectRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipDisconnectRequest()
	// CreateBuilder creates a EipDisconnectRequestBuilder
	CreateEipDisconnectRequestBuilder() EipDisconnectRequestBuilder
}

EipDisconnectRequest is the corresponding interface of EipDisconnectRequest

func CastEipDisconnectRequest deprecated

func CastEipDisconnectRequest(structType any) EipDisconnectRequest

Deprecated: use the interface for direct cast

type EipDisconnectRequestBuilder

type EipDisconnectRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() EipDisconnectRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the EipDisconnectRequest or returns an error if something is wrong
	Build() (EipDisconnectRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipDisconnectRequest
}

EipDisconnectRequestBuilder is a builder for EipDisconnectRequest

func NewEipDisconnectRequestBuilder

func NewEipDisconnectRequestBuilder() EipDisconnectRequestBuilder

NewEipDisconnectRequestBuilder() creates a EipDisconnectRequestBuilder

type EipListIdentityRequest

type EipListIdentityRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsEipListIdentityRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipListIdentityRequest()
	// CreateBuilder creates a EipListIdentityRequestBuilder
	CreateEipListIdentityRequestBuilder() EipListIdentityRequestBuilder
}

EipListIdentityRequest is the corresponding interface of EipListIdentityRequest

func CastEipListIdentityRequest deprecated

func CastEipListIdentityRequest(structType any) EipListIdentityRequest

Deprecated: use the interface for direct cast

type EipListIdentityRequestBuilder

type EipListIdentityRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() EipListIdentityRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the EipListIdentityRequest or returns an error if something is wrong
	Build() (EipListIdentityRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipListIdentityRequest
}

EipListIdentityRequestBuilder is a builder for EipListIdentityRequest

func NewEipListIdentityRequestBuilder

func NewEipListIdentityRequestBuilder() EipListIdentityRequestBuilder

NewEipListIdentityRequestBuilder() creates a EipListIdentityRequestBuilder

type EipListIdentityResponse

type EipListIdentityResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// GetItems returns Items (property field)
	GetItems() []CommandSpecificDataItem
	// IsEipListIdentityResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipListIdentityResponse()
	// CreateBuilder creates a EipListIdentityResponseBuilder
	CreateEipListIdentityResponseBuilder() EipListIdentityResponseBuilder
}

EipListIdentityResponse is the corresponding interface of EipListIdentityResponse

func CastEipListIdentityResponse deprecated

func CastEipListIdentityResponse(structType any) EipListIdentityResponse

Deprecated: use the interface for direct cast

type EipListIdentityResponseBuilder

type EipListIdentityResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(items []CommandSpecificDataItem) EipListIdentityResponseBuilder
	// WithItems adds Items (property field)
	WithItems(...CommandSpecificDataItem) EipListIdentityResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the EipListIdentityResponse or returns an error if something is wrong
	Build() (EipListIdentityResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipListIdentityResponse
}

EipListIdentityResponseBuilder is a builder for EipListIdentityResponse

func NewEipListIdentityResponseBuilder

func NewEipListIdentityResponseBuilder() EipListIdentityResponseBuilder

NewEipListIdentityResponseBuilder() creates a EipListIdentityResponseBuilder

type EipPacket

type EipPacket interface {
	EipPacketContract
	EipPacketRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsEipPacket is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipPacket()
	// CreateBuilder creates a EipPacketBuilder
	CreateEipPacketBuilder() EipPacketBuilder
}

EipPacket is the corresponding interface of EipPacket

func CastEipPacket deprecated

func CastEipPacket(structType any) EipPacket

Deprecated: use the interface for direct cast

type EipPacketBuilder

type EipPacketBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(sessionHandle uint32, status uint32, senderContext []byte, options uint32) EipPacketBuilder
	// WithSessionHandle adds SessionHandle (property field)
	WithSessionHandle(uint32) EipPacketBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint32) EipPacketBuilder
	// WithSenderContext adds SenderContext (property field)
	WithSenderContext(...byte) EipPacketBuilder
	// WithOptions adds Options (property field)
	WithOptions(uint32) EipPacketBuilder
	// AsNullCommandRequest converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsNullCommandRequest() NullCommandRequestBuilder
	// AsNullCommandResponse converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsNullCommandResponse() NullCommandResponseBuilder
	// AsListServicesRequest converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsListServicesRequest() ListServicesRequestBuilder
	// AsNullListServicesResponse converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsNullListServicesResponse() NullListServicesResponseBuilder
	// AsListServicesResponse converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsListServicesResponse() ListServicesResponseBuilder
	// AsEipListIdentityRequest converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsEipListIdentityRequest() EipListIdentityRequestBuilder
	// AsEipListIdentityResponse converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsEipListIdentityResponse() EipListIdentityResponseBuilder
	// AsEipConnectionRequest converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsEipConnectionRequest() EipConnectionRequestBuilder
	// AsNullEipConnectionResponse converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsNullEipConnectionResponse() NullEipConnectionResponseBuilder
	// AsEipConnectionResponse converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsEipConnectionResponse() EipConnectionResponseBuilder
	// AsEipDisconnectRequest converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsEipDisconnectRequest() EipDisconnectRequestBuilder
	// AsCipRRData converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsCipRRData() CipRRDataBuilder
	// AsSendUnitData converts this build to a subType of EipPacket. It is always possible to return to current builder using Done()
	AsSendUnitData() SendUnitDataBuilder
	// Build builds the EipPacket or returns an error if something is wrong
	PartialBuild() (EipPacketContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() EipPacketContract
	// Build builds the EipPacket or returns an error if something is wrong
	Build() (EipPacket, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() EipPacket
}

EipPacketBuilder is a builder for EipPacket

func NewEipPacketBuilder

func NewEipPacketBuilder() EipPacketBuilder

NewEipPacketBuilder() creates a EipPacketBuilder

type EipPacketContract

type EipPacketContract interface {
	// GetSessionHandle returns SessionHandle (property field)
	GetSessionHandle() uint32
	// GetStatus returns Status (property field)
	GetStatus() uint32
	// GetSenderContext returns SenderContext (property field)
	GetSenderContext() []byte
	// GetOptions returns Options (property field)
	GetOptions() uint32
	// IsEipPacket is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsEipPacket()
	// CreateBuilder creates a EipPacketBuilder
	CreateEipPacketBuilder() EipPacketBuilder
}

EipPacketContract provides a set of functions which can be overwritten by a sub struct

type EipPacketRequirements

type EipPacketRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetCommand returns Command (discriminator field)
	GetCommand() uint16
	// GetPacketLength returns PacketLength (discriminator field)
	GetPacketLength() uint16
	// GetResponse returns Response (discriminator field)
	GetResponse() bool
}

EipPacketRequirements provides a set of functions which need to be implemented by a sub struct

type GetAttributeAllRequest

type GetAttributeAllRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetClassSegment returns ClassSegment (property field)
	GetClassSegment() PathSegment
	// GetInstanceSegment returns InstanceSegment (property field)
	GetInstanceSegment() PathSegment
	// IsGetAttributeAllRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsGetAttributeAllRequest()
	// CreateBuilder creates a GetAttributeAllRequestBuilder
	CreateGetAttributeAllRequestBuilder() GetAttributeAllRequestBuilder
}

GetAttributeAllRequest is the corresponding interface of GetAttributeAllRequest

func CastGetAttributeAllRequest deprecated

func CastGetAttributeAllRequest(structType any) GetAttributeAllRequest

Deprecated: use the interface for direct cast

type GetAttributeAllRequestBuilder

type GetAttributeAllRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(classSegment PathSegment, instanceSegment PathSegment) GetAttributeAllRequestBuilder
	// WithClassSegment adds ClassSegment (property field)
	WithClassSegment(PathSegment) GetAttributeAllRequestBuilder
	// WithClassSegmentBuilder adds ClassSegment (property field) which is build by the builder
	WithClassSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) GetAttributeAllRequestBuilder
	// WithInstanceSegment adds InstanceSegment (property field)
	WithInstanceSegment(PathSegment) GetAttributeAllRequestBuilder
	// WithInstanceSegmentBuilder adds InstanceSegment (property field) which is build by the builder
	WithInstanceSegmentBuilder(func(PathSegmentBuilder) PathSegmentBuilder) GetAttributeAllRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the GetAttributeAllRequest or returns an error if something is wrong
	Build() (GetAttributeAllRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() GetAttributeAllRequest
}

GetAttributeAllRequestBuilder is a builder for GetAttributeAllRequest

func NewGetAttributeAllRequestBuilder

func NewGetAttributeAllRequestBuilder() GetAttributeAllRequestBuilder

NewGetAttributeAllRequestBuilder() creates a GetAttributeAllRequestBuilder

type GetAttributeAllResponse

type GetAttributeAllResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetStatus returns Status (property field)
	GetStatus() uint8
	// GetExtStatus returns ExtStatus (property field)
	GetExtStatus() uint8
	// GetAttributes returns Attributes (property field)
	GetAttributes() CIPAttributes
	// IsGetAttributeAllResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsGetAttributeAllResponse()
	// CreateBuilder creates a GetAttributeAllResponseBuilder
	CreateGetAttributeAllResponseBuilder() GetAttributeAllResponseBuilder
}

GetAttributeAllResponse is the corresponding interface of GetAttributeAllResponse

func CastGetAttributeAllResponse deprecated

func CastGetAttributeAllResponse(structType any) GetAttributeAllResponse

Deprecated: use the interface for direct cast

type GetAttributeAllResponseBuilder

type GetAttributeAllResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(status uint8, extStatus uint8) GetAttributeAllResponseBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint8) GetAttributeAllResponseBuilder
	// WithExtStatus adds ExtStatus (property field)
	WithExtStatus(uint8) GetAttributeAllResponseBuilder
	// WithAttributes adds Attributes (property field)
	WithOptionalAttributes(CIPAttributes) GetAttributeAllResponseBuilder
	// WithOptionalAttributesBuilder adds Attributes (property field) which is build by the builder
	WithOptionalAttributesBuilder(func(CIPAttributesBuilder) CIPAttributesBuilder) GetAttributeAllResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the GetAttributeAllResponse or returns an error if something is wrong
	Build() (GetAttributeAllResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() GetAttributeAllResponse
}

GetAttributeAllResponseBuilder is a builder for GetAttributeAllResponse

func NewGetAttributeAllResponseBuilder

func NewGetAttributeAllResponseBuilder() GetAttributeAllResponseBuilder

NewGetAttributeAllResponseBuilder() creates a GetAttributeAllResponseBuilder

type GetAttributeListRequest

type GetAttributeListRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsGetAttributeListRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsGetAttributeListRequest()
	// CreateBuilder creates a GetAttributeListRequestBuilder
	CreateGetAttributeListRequestBuilder() GetAttributeListRequestBuilder
}

GetAttributeListRequest is the corresponding interface of GetAttributeListRequest

func CastGetAttributeListRequest deprecated

func CastGetAttributeListRequest(structType any) GetAttributeListRequest

Deprecated: use the interface for direct cast

type GetAttributeListRequestBuilder

type GetAttributeListRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() GetAttributeListRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the GetAttributeListRequest or returns an error if something is wrong
	Build() (GetAttributeListRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() GetAttributeListRequest
}

GetAttributeListRequestBuilder is a builder for GetAttributeListRequest

func NewGetAttributeListRequestBuilder

func NewGetAttributeListRequestBuilder() GetAttributeListRequestBuilder

NewGetAttributeListRequestBuilder() creates a GetAttributeListRequestBuilder

type GetAttributeListResponse

type GetAttributeListResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsGetAttributeListResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsGetAttributeListResponse()
	// CreateBuilder creates a GetAttributeListResponseBuilder
	CreateGetAttributeListResponseBuilder() GetAttributeListResponseBuilder
}

GetAttributeListResponse is the corresponding interface of GetAttributeListResponse

func CastGetAttributeListResponse deprecated

func CastGetAttributeListResponse(structType any) GetAttributeListResponse

Deprecated: use the interface for direct cast

type GetAttributeListResponseBuilder

type GetAttributeListResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() GetAttributeListResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the GetAttributeListResponse or returns an error if something is wrong
	Build() (GetAttributeListResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() GetAttributeListResponse
}

GetAttributeListResponseBuilder is a builder for GetAttributeListResponse

func NewGetAttributeListResponseBuilder

func NewGetAttributeListResponseBuilder() GetAttributeListResponseBuilder

NewGetAttributeListResponseBuilder() creates a GetAttributeListResponseBuilder

type GetAttributeSingleRequest

type GetAttributeSingleRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsGetAttributeSingleRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsGetAttributeSingleRequest()
	// CreateBuilder creates a GetAttributeSingleRequestBuilder
	CreateGetAttributeSingleRequestBuilder() GetAttributeSingleRequestBuilder
}

GetAttributeSingleRequest is the corresponding interface of GetAttributeSingleRequest

func CastGetAttributeSingleRequest deprecated

func CastGetAttributeSingleRequest(structType any) GetAttributeSingleRequest

Deprecated: use the interface for direct cast

type GetAttributeSingleRequestBuilder

type GetAttributeSingleRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() GetAttributeSingleRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the GetAttributeSingleRequest or returns an error if something is wrong
	Build() (GetAttributeSingleRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() GetAttributeSingleRequest
}

GetAttributeSingleRequestBuilder is a builder for GetAttributeSingleRequest

func NewGetAttributeSingleRequestBuilder

func NewGetAttributeSingleRequestBuilder() GetAttributeSingleRequestBuilder

NewGetAttributeSingleRequestBuilder() creates a GetAttributeSingleRequestBuilder

type GetAttributeSingleResponse

type GetAttributeSingleResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsGetAttributeSingleResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsGetAttributeSingleResponse()
	// CreateBuilder creates a GetAttributeSingleResponseBuilder
	CreateGetAttributeSingleResponseBuilder() GetAttributeSingleResponseBuilder
}

GetAttributeSingleResponse is the corresponding interface of GetAttributeSingleResponse

func CastGetAttributeSingleResponse deprecated

func CastGetAttributeSingleResponse(structType any) GetAttributeSingleResponse

Deprecated: use the interface for direct cast

type GetAttributeSingleResponseBuilder

type GetAttributeSingleResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() GetAttributeSingleResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the GetAttributeSingleResponse or returns an error if something is wrong
	Build() (GetAttributeSingleResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() GetAttributeSingleResponse
}

GetAttributeSingleResponseBuilder is a builder for GetAttributeSingleResponse

func NewGetAttributeSingleResponseBuilder

func NewGetAttributeSingleResponseBuilder() GetAttributeSingleResponseBuilder

NewGetAttributeSingleResponseBuilder() creates a GetAttributeSingleResponseBuilder

type ICIPClassID

type ICIPClassID interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
}

type ICIPDataTypeCode

type ICIPDataTypeCode interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	Size() uint8
}

type ICIPStatus

type ICIPStatus interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
}

type ICIPStructTypeCode

type ICIPStructTypeCode interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
}

type IEiPCommand

type IEiPCommand interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
}

type InstanceID

type InstanceID interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	LogicalSegmentType
	// GetFormat returns Format (property field)
	GetFormat() uint8
	// GetInstance returns Instance (property field)
	GetInstance() uint8
	// IsInstanceID is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsInstanceID()
	// CreateBuilder creates a InstanceIDBuilder
	CreateInstanceIDBuilder() InstanceIDBuilder
}

InstanceID is the corresponding interface of InstanceID

func CastInstanceID deprecated

func CastInstanceID(structType any) InstanceID

Deprecated: use the interface for direct cast

type InstanceIDBuilder

type InstanceIDBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(format uint8, instance uint8) InstanceIDBuilder
	// WithFormat adds Format (property field)
	WithFormat(uint8) InstanceIDBuilder
	// WithInstance adds Instance (property field)
	WithInstance(uint8) InstanceIDBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() LogicalSegmentTypeBuilder
	// Build builds the InstanceID or returns an error if something is wrong
	Build() (InstanceID, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() InstanceID
}

InstanceIDBuilder is a builder for InstanceID

func NewInstanceIDBuilder

func NewInstanceIDBuilder() InstanceIDBuilder

NewInstanceIDBuilder() creates a InstanceIDBuilder

type InstanceSegment

type InstanceSegment interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetPathSegmentType returns PathSegmentType (property field)
	GetPathSegmentType() uint8
	// GetLogicalSegmentType returns LogicalSegmentType (property field)
	GetLogicalSegmentType() uint8
	// GetLogicalSegmentFormat returns LogicalSegmentFormat (property field)
	GetLogicalSegmentFormat() uint8
	// GetInstance returns Instance (property field)
	GetInstance() uint8
	// IsInstanceSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsInstanceSegment()
	// CreateBuilder creates a InstanceSegmentBuilder
	CreateInstanceSegmentBuilder() InstanceSegmentBuilder
}

InstanceSegment is the corresponding interface of InstanceSegment

func CastInstanceSegment deprecated

func CastInstanceSegment(structType any) InstanceSegment

Deprecated: use the interface for direct cast

func InstanceSegmentParse

func InstanceSegmentParse(ctx context.Context, theBytes []byte) (InstanceSegment, error)

func InstanceSegmentParseWithBuffer

func InstanceSegmentParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (InstanceSegment, error)

type InstanceSegmentBuilder

type InstanceSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(pathSegmentType uint8, logicalSegmentType uint8, logicalSegmentFormat uint8, instance uint8) InstanceSegmentBuilder
	// WithPathSegmentType adds PathSegmentType (property field)
	WithPathSegmentType(uint8) InstanceSegmentBuilder
	// WithLogicalSegmentType adds LogicalSegmentType (property field)
	WithLogicalSegmentType(uint8) InstanceSegmentBuilder
	// WithLogicalSegmentFormat adds LogicalSegmentFormat (property field)
	WithLogicalSegmentFormat(uint8) InstanceSegmentBuilder
	// WithInstance adds Instance (property field)
	WithInstance(uint8) InstanceSegmentBuilder
	// Build builds the InstanceSegment or returns an error if something is wrong
	Build() (InstanceSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() InstanceSegment
}

InstanceSegmentBuilder is a builder for InstanceSegment

func NewInstanceSegmentBuilder

func NewInstanceSegmentBuilder() InstanceSegmentBuilder

NewInstanceSegmentBuilder() creates a InstanceSegmentBuilder

type ListServicesRequest

type ListServicesRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsListServicesRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsListServicesRequest()
	// CreateBuilder creates a ListServicesRequestBuilder
	CreateListServicesRequestBuilder() ListServicesRequestBuilder
}

ListServicesRequest is the corresponding interface of ListServicesRequest

func CastListServicesRequest deprecated

func CastListServicesRequest(structType any) ListServicesRequest

Deprecated: use the interface for direct cast

type ListServicesRequestBuilder

type ListServicesRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() ListServicesRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the ListServicesRequest or returns an error if something is wrong
	Build() (ListServicesRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ListServicesRequest
}

ListServicesRequestBuilder is a builder for ListServicesRequest

func NewListServicesRequestBuilder

func NewListServicesRequestBuilder() ListServicesRequestBuilder

NewListServicesRequestBuilder() creates a ListServicesRequestBuilder

type ListServicesResponse

type ListServicesResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// GetTypeIds returns TypeIds (property field)
	GetTypeIds() []TypeId
	// IsListServicesResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsListServicesResponse()
	// CreateBuilder creates a ListServicesResponseBuilder
	CreateListServicesResponseBuilder() ListServicesResponseBuilder
}

ListServicesResponse is the corresponding interface of ListServicesResponse

func CastListServicesResponse deprecated

func CastListServicesResponse(structType any) ListServicesResponse

Deprecated: use the interface for direct cast

type ListServicesResponseBuilder

type ListServicesResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(typeIds []TypeId) ListServicesResponseBuilder
	// WithTypeIds adds TypeIds (property field)
	WithTypeIds(...TypeId) ListServicesResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the ListServicesResponse or returns an error if something is wrong
	Build() (ListServicesResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ListServicesResponse
}

ListServicesResponseBuilder is a builder for ListServicesResponse

func NewListServicesResponseBuilder

func NewListServicesResponseBuilder() ListServicesResponseBuilder

NewListServicesResponseBuilder() creates a ListServicesResponseBuilder

type LogicalSegment

type LogicalSegment interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	PathSegment
	// GetSegmentType returns SegmentType (property field)
	GetSegmentType() LogicalSegmentType
	// IsLogicalSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsLogicalSegment()
	// CreateBuilder creates a LogicalSegmentBuilder
	CreateLogicalSegmentBuilder() LogicalSegmentBuilder
}

LogicalSegment is the corresponding interface of LogicalSegment

func CastLogicalSegment deprecated

func CastLogicalSegment(structType any) LogicalSegment

Deprecated: use the interface for direct cast

type LogicalSegmentBuilder

type LogicalSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(segmentType LogicalSegmentType) LogicalSegmentBuilder
	// WithSegmentType adds SegmentType (property field)
	WithSegmentType(LogicalSegmentType) LogicalSegmentBuilder
	// WithSegmentTypeBuilder adds SegmentType (property field) which is build by the builder
	WithSegmentTypeBuilder(func(LogicalSegmentTypeBuilder) LogicalSegmentTypeBuilder) LogicalSegmentBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() PathSegmentBuilder
	// Build builds the LogicalSegment or returns an error if something is wrong
	Build() (LogicalSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() LogicalSegment
}

LogicalSegmentBuilder is a builder for LogicalSegment

func NewLogicalSegmentBuilder

func NewLogicalSegmentBuilder() LogicalSegmentBuilder

NewLogicalSegmentBuilder() creates a LogicalSegmentBuilder

type LogicalSegmentType

type LogicalSegmentType interface {
	LogicalSegmentTypeContract
	LogicalSegmentTypeRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsLogicalSegmentType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsLogicalSegmentType()
	// CreateBuilder creates a LogicalSegmentTypeBuilder
	CreateLogicalSegmentTypeBuilder() LogicalSegmentTypeBuilder
}

LogicalSegmentType is the corresponding interface of LogicalSegmentType

func CastLogicalSegmentType deprecated

func CastLogicalSegmentType(structType any) LogicalSegmentType

Deprecated: use the interface for direct cast

type LogicalSegmentTypeBuilder

type LogicalSegmentTypeBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() LogicalSegmentTypeBuilder
	// AsClassID converts this build to a subType of LogicalSegmentType. It is always possible to return to current builder using Done()
	AsClassID() ClassIDBuilder
	// AsInstanceID converts this build to a subType of LogicalSegmentType. It is always possible to return to current builder using Done()
	AsInstanceID() InstanceIDBuilder
	// AsMemberID converts this build to a subType of LogicalSegmentType. It is always possible to return to current builder using Done()
	AsMemberID() MemberIDBuilder
	// Build builds the LogicalSegmentType or returns an error if something is wrong
	PartialBuild() (LogicalSegmentTypeContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() LogicalSegmentTypeContract
	// Build builds the LogicalSegmentType or returns an error if something is wrong
	Build() (LogicalSegmentType, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() LogicalSegmentType
}

LogicalSegmentTypeBuilder is a builder for LogicalSegmentType

func NewLogicalSegmentTypeBuilder

func NewLogicalSegmentTypeBuilder() LogicalSegmentTypeBuilder

NewLogicalSegmentTypeBuilder() creates a LogicalSegmentTypeBuilder

type LogicalSegmentTypeContract

type LogicalSegmentTypeContract interface {
	// IsLogicalSegmentType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsLogicalSegmentType()
	// CreateBuilder creates a LogicalSegmentTypeBuilder
	CreateLogicalSegmentTypeBuilder() LogicalSegmentTypeBuilder
}

LogicalSegmentTypeContract provides a set of functions which can be overwritten by a sub struct

type LogicalSegmentTypeRequirements

type LogicalSegmentTypeRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetLogicalSegmentType returns LogicalSegmentType (discriminator field)
	GetLogicalSegmentType() uint8
}

LogicalSegmentTypeRequirements provides a set of functions which need to be implemented by a sub struct

type MemberID

type MemberID interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	LogicalSegmentType
	// GetFormat returns Format (property field)
	GetFormat() uint8
	// GetInstance returns Instance (property field)
	GetInstance() uint8
	// IsMemberID is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsMemberID()
	// CreateBuilder creates a MemberIDBuilder
	CreateMemberIDBuilder() MemberIDBuilder
}

MemberID is the corresponding interface of MemberID

func CastMemberID deprecated

func CastMemberID(structType any) MemberID

Deprecated: use the interface for direct cast

type MemberIDBuilder

type MemberIDBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(format uint8, instance uint8) MemberIDBuilder
	// WithFormat adds Format (property field)
	WithFormat(uint8) MemberIDBuilder
	// WithInstance adds Instance (property field)
	WithInstance(uint8) MemberIDBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() LogicalSegmentTypeBuilder
	// Build builds the MemberID or returns an error if something is wrong
	Build() (MemberID, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() MemberID
}

MemberIDBuilder is a builder for MemberID

func NewMemberIDBuilder

func NewMemberIDBuilder() MemberIDBuilder

NewMemberIDBuilder() creates a MemberIDBuilder

type MultipleServiceRequest

type MultipleServiceRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetData returns Data (property field)
	GetData() Services
	// IsMultipleServiceRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsMultipleServiceRequest()
	// CreateBuilder creates a MultipleServiceRequestBuilder
	CreateMultipleServiceRequestBuilder() MultipleServiceRequestBuilder
}

MultipleServiceRequest is the corresponding interface of MultipleServiceRequest

func CastMultipleServiceRequest deprecated

func CastMultipleServiceRequest(structType any) MultipleServiceRequest

Deprecated: use the interface for direct cast

type MultipleServiceRequestBuilder

type MultipleServiceRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(data Services) MultipleServiceRequestBuilder
	// WithData adds Data (property field)
	WithData(Services) MultipleServiceRequestBuilder
	// WithDataBuilder adds Data (property field) which is build by the builder
	WithDataBuilder(func(ServicesBuilder) ServicesBuilder) MultipleServiceRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the MultipleServiceRequest or returns an error if something is wrong
	Build() (MultipleServiceRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() MultipleServiceRequest
}

MultipleServiceRequestBuilder is a builder for MultipleServiceRequest

func NewMultipleServiceRequestBuilder

func NewMultipleServiceRequestBuilder() MultipleServiceRequestBuilder

NewMultipleServiceRequestBuilder() creates a MultipleServiceRequestBuilder

type MultipleServiceResponse

type MultipleServiceResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// GetStatus returns Status (property field)
	GetStatus() uint8
	// GetExtStatus returns ExtStatus (property field)
	GetExtStatus() uint8
	// GetServiceNb returns ServiceNb (property field)
	GetServiceNb() uint16
	// GetOffsets returns Offsets (property field)
	GetOffsets() []uint16
	// GetServicesData returns ServicesData (property field)
	GetServicesData() []byte
	// IsMultipleServiceResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsMultipleServiceResponse()
	// CreateBuilder creates a MultipleServiceResponseBuilder
	CreateMultipleServiceResponseBuilder() MultipleServiceResponseBuilder
}

MultipleServiceResponse is the corresponding interface of MultipleServiceResponse

func CastMultipleServiceResponse deprecated

func CastMultipleServiceResponse(structType any) MultipleServiceResponse

Deprecated: use the interface for direct cast

type MultipleServiceResponseBuilder

type MultipleServiceResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(status uint8, extStatus uint8, serviceNb uint16, offsets []uint16, servicesData []byte) MultipleServiceResponseBuilder
	// WithStatus adds Status (property field)
	WithStatus(uint8) MultipleServiceResponseBuilder
	// WithExtStatus adds ExtStatus (property field)
	WithExtStatus(uint8) MultipleServiceResponseBuilder
	// WithServiceNb adds ServiceNb (property field)
	WithServiceNb(uint16) MultipleServiceResponseBuilder
	// WithOffsets adds Offsets (property field)
	WithOffsets(...uint16) MultipleServiceResponseBuilder
	// WithServicesData adds ServicesData (property field)
	WithServicesData(...byte) MultipleServiceResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the MultipleServiceResponse or returns an error if something is wrong
	Build() (MultipleServiceResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() MultipleServiceResponse
}

MultipleServiceResponseBuilder is a builder for MultipleServiceResponse

func NewMultipleServiceResponseBuilder

func NewMultipleServiceResponseBuilder() MultipleServiceResponseBuilder

NewMultipleServiceResponseBuilder() creates a MultipleServiceResponseBuilder

type NetworkConnectionParameters

type NetworkConnectionParameters interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetConnectionSize returns ConnectionSize (property field)
	GetConnectionSize() uint16
	// GetOwner returns Owner (property field)
	GetOwner() bool
	// GetConnectionType returns ConnectionType (property field)
	GetConnectionType() uint8
	// GetPriority returns Priority (property field)
	GetPriority() uint8
	// GetConnectionSizeType returns ConnectionSizeType (property field)
	GetConnectionSizeType() bool
	// IsNetworkConnectionParameters is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsNetworkConnectionParameters()
	// CreateBuilder creates a NetworkConnectionParametersBuilder
	CreateNetworkConnectionParametersBuilder() NetworkConnectionParametersBuilder
}

NetworkConnectionParameters is the corresponding interface of NetworkConnectionParameters

func CastNetworkConnectionParameters deprecated

func CastNetworkConnectionParameters(structType any) NetworkConnectionParameters

Deprecated: use the interface for direct cast

func NetworkConnectionParametersParse

func NetworkConnectionParametersParse(ctx context.Context, theBytes []byte) (NetworkConnectionParameters, error)

func NetworkConnectionParametersParseWithBuffer

func NetworkConnectionParametersParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NetworkConnectionParameters, error)

type NetworkConnectionParametersBuilder

type NetworkConnectionParametersBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(connectionSize uint16, owner bool, connectionType uint8, priority uint8, connectionSizeType bool) NetworkConnectionParametersBuilder
	// WithConnectionSize adds ConnectionSize (property field)
	WithConnectionSize(uint16) NetworkConnectionParametersBuilder
	// WithOwner adds Owner (property field)
	WithOwner(bool) NetworkConnectionParametersBuilder
	// WithConnectionType adds ConnectionType (property field)
	WithConnectionType(uint8) NetworkConnectionParametersBuilder
	// WithPriority adds Priority (property field)
	WithPriority(uint8) NetworkConnectionParametersBuilder
	// WithConnectionSizeType adds ConnectionSizeType (property field)
	WithConnectionSizeType(bool) NetworkConnectionParametersBuilder
	// Build builds the NetworkConnectionParameters or returns an error if something is wrong
	Build() (NetworkConnectionParameters, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() NetworkConnectionParameters
}

NetworkConnectionParametersBuilder is a builder for NetworkConnectionParameters

func NewNetworkConnectionParametersBuilder

func NewNetworkConnectionParametersBuilder() NetworkConnectionParametersBuilder

NewNetworkConnectionParametersBuilder() creates a NetworkConnectionParametersBuilder

type NullAddressItem

type NullAddressItem interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	TypeId
	// IsNullAddressItem is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsNullAddressItem()
	// CreateBuilder creates a NullAddressItemBuilder
	CreateNullAddressItemBuilder() NullAddressItemBuilder
}

NullAddressItem is the corresponding interface of NullAddressItem

func CastNullAddressItem deprecated

func CastNullAddressItem(structType any) NullAddressItem

Deprecated: use the interface for direct cast

type NullAddressItemBuilder

type NullAddressItemBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() NullAddressItemBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() TypeIdBuilder
	// Build builds the NullAddressItem or returns an error if something is wrong
	Build() (NullAddressItem, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() NullAddressItem
}

NullAddressItemBuilder is a builder for NullAddressItem

func NewNullAddressItemBuilder

func NewNullAddressItemBuilder() NullAddressItemBuilder

NewNullAddressItemBuilder() creates a NullAddressItemBuilder

type NullCommandRequest

type NullCommandRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsNullCommandRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsNullCommandRequest()
	// CreateBuilder creates a NullCommandRequestBuilder
	CreateNullCommandRequestBuilder() NullCommandRequestBuilder
}

NullCommandRequest is the corresponding interface of NullCommandRequest

func CastNullCommandRequest deprecated

func CastNullCommandRequest(structType any) NullCommandRequest

Deprecated: use the interface for direct cast

type NullCommandRequestBuilder

type NullCommandRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() NullCommandRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the NullCommandRequest or returns an error if something is wrong
	Build() (NullCommandRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() NullCommandRequest
}

NullCommandRequestBuilder is a builder for NullCommandRequest

func NewNullCommandRequestBuilder

func NewNullCommandRequestBuilder() NullCommandRequestBuilder

NewNullCommandRequestBuilder() creates a NullCommandRequestBuilder

type NullCommandResponse

type NullCommandResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsNullCommandResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsNullCommandResponse()
	// CreateBuilder creates a NullCommandResponseBuilder
	CreateNullCommandResponseBuilder() NullCommandResponseBuilder
}

NullCommandResponse is the corresponding interface of NullCommandResponse

func CastNullCommandResponse deprecated

func CastNullCommandResponse(structType any) NullCommandResponse

Deprecated: use the interface for direct cast

type NullCommandResponseBuilder

type NullCommandResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() NullCommandResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the NullCommandResponse or returns an error if something is wrong
	Build() (NullCommandResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() NullCommandResponse
}

NullCommandResponseBuilder is a builder for NullCommandResponse

func NewNullCommandResponseBuilder

func NewNullCommandResponseBuilder() NullCommandResponseBuilder

NewNullCommandResponseBuilder() creates a NullCommandResponseBuilder

type NullEipConnectionResponse

type NullEipConnectionResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsNullEipConnectionResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsNullEipConnectionResponse()
	// CreateBuilder creates a NullEipConnectionResponseBuilder
	CreateNullEipConnectionResponseBuilder() NullEipConnectionResponseBuilder
}

NullEipConnectionResponse is the corresponding interface of NullEipConnectionResponse

func CastNullEipConnectionResponse deprecated

func CastNullEipConnectionResponse(structType any) NullEipConnectionResponse

Deprecated: use the interface for direct cast

type NullEipConnectionResponseBuilder

type NullEipConnectionResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() NullEipConnectionResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the NullEipConnectionResponse or returns an error if something is wrong
	Build() (NullEipConnectionResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() NullEipConnectionResponse
}

NullEipConnectionResponseBuilder is a builder for NullEipConnectionResponse

func NewNullEipConnectionResponseBuilder

func NewNullEipConnectionResponseBuilder() NullEipConnectionResponseBuilder

NewNullEipConnectionResponseBuilder() creates a NullEipConnectionResponseBuilder

type NullListServicesResponse

type NullListServicesResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// IsNullListServicesResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsNullListServicesResponse()
	// CreateBuilder creates a NullListServicesResponseBuilder
	CreateNullListServicesResponseBuilder() NullListServicesResponseBuilder
}

NullListServicesResponse is the corresponding interface of NullListServicesResponse

func CastNullListServicesResponse deprecated

func CastNullListServicesResponse(structType any) NullListServicesResponse

Deprecated: use the interface for direct cast

type NullListServicesResponseBuilder

type NullListServicesResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() NullListServicesResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the NullListServicesResponse or returns an error if something is wrong
	Build() (NullListServicesResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() NullListServicesResponse
}

NullListServicesResponseBuilder is a builder for NullListServicesResponse

func NewNullListServicesResponseBuilder

func NewNullListServicesResponseBuilder() NullListServicesResponseBuilder

NewNullListServicesResponseBuilder() creates a NullListServicesResponseBuilder

type PathSegment

type PathSegment interface {
	PathSegmentContract
	PathSegmentRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsPathSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPathSegment()
	// CreateBuilder creates a PathSegmentBuilder
	CreatePathSegmentBuilder() PathSegmentBuilder
}

PathSegment is the corresponding interface of PathSegment

func CastPathSegment deprecated

func CastPathSegment(structType any) PathSegment

Deprecated: use the interface for direct cast

type PathSegmentBuilder

type PathSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() PathSegmentBuilder
	// AsPortSegment converts this build to a subType of PathSegment. It is always possible to return to current builder using Done()
	AsPortSegment() PortSegmentBuilder
	// AsLogicalSegment converts this build to a subType of PathSegment. It is always possible to return to current builder using Done()
	AsLogicalSegment() LogicalSegmentBuilder
	// AsDataSegment converts this build to a subType of PathSegment. It is always possible to return to current builder using Done()
	AsDataSegment() DataSegmentBuilder
	// Build builds the PathSegment or returns an error if something is wrong
	PartialBuild() (PathSegmentContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() PathSegmentContract
	// Build builds the PathSegment or returns an error if something is wrong
	Build() (PathSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() PathSegment
}

PathSegmentBuilder is a builder for PathSegment

func NewPathSegmentBuilder

func NewPathSegmentBuilder() PathSegmentBuilder

NewPathSegmentBuilder() creates a PathSegmentBuilder

type PathSegmentContract

type PathSegmentContract interface {
	// IsPathSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPathSegment()
	// CreateBuilder creates a PathSegmentBuilder
	CreatePathSegmentBuilder() PathSegmentBuilder
}

PathSegmentContract provides a set of functions which can be overwritten by a sub struct

type PathSegmentRequirements

type PathSegmentRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetPathSegment returns PathSegment (discriminator field)
	GetPathSegment() uint8
}

PathSegmentRequirements provides a set of functions which need to be implemented by a sub struct

type PortSegment

type PortSegment interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	PathSegment
	// GetSegmentType returns SegmentType (property field)
	GetSegmentType() PortSegmentType
	// IsPortSegment is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPortSegment()
	// CreateBuilder creates a PortSegmentBuilder
	CreatePortSegmentBuilder() PortSegmentBuilder
}

PortSegment is the corresponding interface of PortSegment

func CastPortSegment deprecated

func CastPortSegment(structType any) PortSegment

Deprecated: use the interface for direct cast

type PortSegmentBuilder

type PortSegmentBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(segmentType PortSegmentType) PortSegmentBuilder
	// WithSegmentType adds SegmentType (property field)
	WithSegmentType(PortSegmentType) PortSegmentBuilder
	// WithSegmentTypeBuilder adds SegmentType (property field) which is build by the builder
	WithSegmentTypeBuilder(func(PortSegmentTypeBuilder) PortSegmentTypeBuilder) PortSegmentBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() PathSegmentBuilder
	// Build builds the PortSegment or returns an error if something is wrong
	Build() (PortSegment, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() PortSegment
}

PortSegmentBuilder is a builder for PortSegment

func NewPortSegmentBuilder

func NewPortSegmentBuilder() PortSegmentBuilder

NewPortSegmentBuilder() creates a PortSegmentBuilder

type PortSegmentExtended

type PortSegmentExtended interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	PortSegmentType
	// GetPort returns Port (property field)
	GetPort() uint8
	// GetLinkAddressSize returns LinkAddressSize (property field)
	GetLinkAddressSize() uint8
	// GetAddress returns Address (property field)
	GetAddress() string
	// GetPaddingByte returns PaddingByte (virtual field)
	GetPaddingByte() uint8
	// IsPortSegmentExtended is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPortSegmentExtended()
	// CreateBuilder creates a PortSegmentExtendedBuilder
	CreatePortSegmentExtendedBuilder() PortSegmentExtendedBuilder
}

PortSegmentExtended is the corresponding interface of PortSegmentExtended

func CastPortSegmentExtended deprecated

func CastPortSegmentExtended(structType any) PortSegmentExtended

Deprecated: use the interface for direct cast

type PortSegmentExtendedBuilder

type PortSegmentExtendedBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(port uint8, linkAddressSize uint8, address string) PortSegmentExtendedBuilder
	// WithPort adds Port (property field)
	WithPort(uint8) PortSegmentExtendedBuilder
	// WithLinkAddressSize adds LinkAddressSize (property field)
	WithLinkAddressSize(uint8) PortSegmentExtendedBuilder
	// WithAddress adds Address (property field)
	WithAddress(string) PortSegmentExtendedBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() PortSegmentTypeBuilder
	// Build builds the PortSegmentExtended or returns an error if something is wrong
	Build() (PortSegmentExtended, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() PortSegmentExtended
}

PortSegmentExtendedBuilder is a builder for PortSegmentExtended

func NewPortSegmentExtendedBuilder

func NewPortSegmentExtendedBuilder() PortSegmentExtendedBuilder

NewPortSegmentExtendedBuilder() creates a PortSegmentExtendedBuilder

type PortSegmentNormal

type PortSegmentNormal interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	PortSegmentType
	// GetPort returns Port (property field)
	GetPort() uint8
	// GetLinkAddress returns LinkAddress (property field)
	GetLinkAddress() uint8
	// IsPortSegmentNormal is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPortSegmentNormal()
	// CreateBuilder creates a PortSegmentNormalBuilder
	CreatePortSegmentNormalBuilder() PortSegmentNormalBuilder
}

PortSegmentNormal is the corresponding interface of PortSegmentNormal

func CastPortSegmentNormal deprecated

func CastPortSegmentNormal(structType any) PortSegmentNormal

Deprecated: use the interface for direct cast

type PortSegmentNormalBuilder

type PortSegmentNormalBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(port uint8, linkAddress uint8) PortSegmentNormalBuilder
	// WithPort adds Port (property field)
	WithPort(uint8) PortSegmentNormalBuilder
	// WithLinkAddress adds LinkAddress (property field)
	WithLinkAddress(uint8) PortSegmentNormalBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() PortSegmentTypeBuilder
	// Build builds the PortSegmentNormal or returns an error if something is wrong
	Build() (PortSegmentNormal, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() PortSegmentNormal
}

PortSegmentNormalBuilder is a builder for PortSegmentNormal

func NewPortSegmentNormalBuilder

func NewPortSegmentNormalBuilder() PortSegmentNormalBuilder

NewPortSegmentNormalBuilder() creates a PortSegmentNormalBuilder

type PortSegmentType

type PortSegmentType interface {
	PortSegmentTypeContract
	PortSegmentTypeRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsPortSegmentType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPortSegmentType()
	// CreateBuilder creates a PortSegmentTypeBuilder
	CreatePortSegmentTypeBuilder() PortSegmentTypeBuilder
}

PortSegmentType is the corresponding interface of PortSegmentType

func CastPortSegmentType deprecated

func CastPortSegmentType(structType any) PortSegmentType

Deprecated: use the interface for direct cast

type PortSegmentTypeBuilder

type PortSegmentTypeBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() PortSegmentTypeBuilder
	// AsPortSegmentNormal converts this build to a subType of PortSegmentType. It is always possible to return to current builder using Done()
	AsPortSegmentNormal() PortSegmentNormalBuilder
	// AsPortSegmentExtended converts this build to a subType of PortSegmentType. It is always possible to return to current builder using Done()
	AsPortSegmentExtended() PortSegmentExtendedBuilder
	// Build builds the PortSegmentType or returns an error if something is wrong
	PartialBuild() (PortSegmentTypeContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() PortSegmentTypeContract
	// Build builds the PortSegmentType or returns an error if something is wrong
	Build() (PortSegmentType, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() PortSegmentType
}

PortSegmentTypeBuilder is a builder for PortSegmentType

func NewPortSegmentTypeBuilder

func NewPortSegmentTypeBuilder() PortSegmentTypeBuilder

NewPortSegmentTypeBuilder() creates a PortSegmentTypeBuilder

type PortSegmentTypeContract

type PortSegmentTypeContract interface {
	// IsPortSegmentType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsPortSegmentType()
	// CreateBuilder creates a PortSegmentTypeBuilder
	CreatePortSegmentTypeBuilder() PortSegmentTypeBuilder
}

PortSegmentTypeContract provides a set of functions which can be overwritten by a sub struct

type PortSegmentTypeRequirements

type PortSegmentTypeRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetExtendedLinkAddress returns ExtendedLinkAddress (discriminator field)
	GetExtendedLinkAddress() bool
}

PortSegmentTypeRequirements provides a set of functions which need to be implemented by a sub struct

type SendUnitData

type SendUnitData interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	EipPacket
	// GetTimeout returns Timeout (property field)
	GetTimeout() uint16
	// GetTypeIds returns TypeIds (property field)
	GetTypeIds() []TypeId
	// IsSendUnitData is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSendUnitData()
	// CreateBuilder creates a SendUnitDataBuilder
	CreateSendUnitDataBuilder() SendUnitDataBuilder
}

SendUnitData is the corresponding interface of SendUnitData

func CastSendUnitData deprecated

func CastSendUnitData(structType any) SendUnitData

Deprecated: use the interface for direct cast

type SendUnitDataBuilder

type SendUnitDataBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(timeout uint16, typeIds []TypeId) SendUnitDataBuilder
	// WithTimeout adds Timeout (property field)
	WithTimeout(uint16) SendUnitDataBuilder
	// WithTypeIds adds TypeIds (property field)
	WithTypeIds(...TypeId) SendUnitDataBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() EipPacketBuilder
	// Build builds the SendUnitData or returns an error if something is wrong
	Build() (SendUnitData, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SendUnitData
}

SendUnitDataBuilder is a builder for SendUnitData

func NewSendUnitDataBuilder

func NewSendUnitDataBuilder() SendUnitDataBuilder

NewSendUnitDataBuilder() creates a SendUnitDataBuilder

type Services

type Services interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetOffsets returns Offsets (property field)
	GetOffsets() []uint16
	// GetServices returns Services (property field)
	GetServices() []CipService
	// IsServices is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsServices()
	// CreateBuilder creates a ServicesBuilder
	CreateServicesBuilder() ServicesBuilder
}

Services is the corresponding interface of Services

func CastServices deprecated

func CastServices(structType any) Services

Deprecated: use the interface for direct cast

func ServicesParse

func ServicesParse(ctx context.Context, theBytes []byte, servicesLen uint16) (Services, error)

func ServicesParseWithBuffer

func ServicesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, servicesLen uint16) (Services, error)

type ServicesBuilder

type ServicesBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(offsets []uint16, services []CipService) ServicesBuilder
	// WithOffsets adds Offsets (property field)
	WithOffsets(...uint16) ServicesBuilder
	// WithServices adds Services (property field)
	WithServices(...CipService) ServicesBuilder
	// WithArgServicesLen sets a parser argument
	WithArgServicesLen(uint16) ServicesBuilder
	// Build builds the Services or returns an error if something is wrong
	Build() (Services, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() Services
}

ServicesBuilder is a builder for Services

func NewServicesBuilder

func NewServicesBuilder() ServicesBuilder

NewServicesBuilder() creates a ServicesBuilder

type ServicesResponse

type ServicesResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	TypeId
	// GetEncapsulationProtocol returns EncapsulationProtocol (property field)
	GetEncapsulationProtocol() uint16
	// GetSupportsCIPEncapsulation returns SupportsCIPEncapsulation (property field)
	GetSupportsCIPEncapsulation() bool
	// GetSupportsUDP returns SupportsUDP (property field)
	GetSupportsUDP() bool
	// GetData returns Data (property field)
	GetData() []byte
	// IsServicesResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsServicesResponse()
	// CreateBuilder creates a ServicesResponseBuilder
	CreateServicesResponseBuilder() ServicesResponseBuilder
}

ServicesResponse is the corresponding interface of ServicesResponse

func CastServicesResponse deprecated

func CastServicesResponse(structType any) ServicesResponse

Deprecated: use the interface for direct cast

type ServicesResponseBuilder

type ServicesResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(encapsulationProtocol uint16, supportsCIPEncapsulation bool, supportsUDP bool, data []byte) ServicesResponseBuilder
	// WithEncapsulationProtocol adds EncapsulationProtocol (property field)
	WithEncapsulationProtocol(uint16) ServicesResponseBuilder
	// WithSupportsCIPEncapsulation adds SupportsCIPEncapsulation (property field)
	WithSupportsCIPEncapsulation(bool) ServicesResponseBuilder
	// WithSupportsUDP adds SupportsUDP (property field)
	WithSupportsUDP(bool) ServicesResponseBuilder
	// WithData adds Data (property field)
	WithData(...byte) ServicesResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() TypeIdBuilder
	// Build builds the ServicesResponse or returns an error if something is wrong
	Build() (ServicesResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() ServicesResponse
}

ServicesResponseBuilder is a builder for ServicesResponse

func NewServicesResponseBuilder

func NewServicesResponseBuilder() ServicesResponseBuilder

NewServicesResponseBuilder() creates a ServicesResponseBuilder

type SetAttributeAllRequest

type SetAttributeAllRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsSetAttributeAllRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSetAttributeAllRequest()
	// CreateBuilder creates a SetAttributeAllRequestBuilder
	CreateSetAttributeAllRequestBuilder() SetAttributeAllRequestBuilder
}

SetAttributeAllRequest is the corresponding interface of SetAttributeAllRequest

func CastSetAttributeAllRequest deprecated

func CastSetAttributeAllRequest(structType any) SetAttributeAllRequest

Deprecated: use the interface for direct cast

type SetAttributeAllRequestBuilder

type SetAttributeAllRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() SetAttributeAllRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the SetAttributeAllRequest or returns an error if something is wrong
	Build() (SetAttributeAllRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SetAttributeAllRequest
}

SetAttributeAllRequestBuilder is a builder for SetAttributeAllRequest

func NewSetAttributeAllRequestBuilder

func NewSetAttributeAllRequestBuilder() SetAttributeAllRequestBuilder

NewSetAttributeAllRequestBuilder() creates a SetAttributeAllRequestBuilder

type SetAttributeAllResponse

type SetAttributeAllResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsSetAttributeAllResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSetAttributeAllResponse()
	// CreateBuilder creates a SetAttributeAllResponseBuilder
	CreateSetAttributeAllResponseBuilder() SetAttributeAllResponseBuilder
}

SetAttributeAllResponse is the corresponding interface of SetAttributeAllResponse

func CastSetAttributeAllResponse deprecated

func CastSetAttributeAllResponse(structType any) SetAttributeAllResponse

Deprecated: use the interface for direct cast

type SetAttributeAllResponseBuilder

type SetAttributeAllResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() SetAttributeAllResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the SetAttributeAllResponse or returns an error if something is wrong
	Build() (SetAttributeAllResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SetAttributeAllResponse
}

SetAttributeAllResponseBuilder is a builder for SetAttributeAllResponse

func NewSetAttributeAllResponseBuilder

func NewSetAttributeAllResponseBuilder() SetAttributeAllResponseBuilder

NewSetAttributeAllResponseBuilder() creates a SetAttributeAllResponseBuilder

type SetAttributeListRequest

type SetAttributeListRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsSetAttributeListRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSetAttributeListRequest()
	// CreateBuilder creates a SetAttributeListRequestBuilder
	CreateSetAttributeListRequestBuilder() SetAttributeListRequestBuilder
}

SetAttributeListRequest is the corresponding interface of SetAttributeListRequest

func CastSetAttributeListRequest deprecated

func CastSetAttributeListRequest(structType any) SetAttributeListRequest

Deprecated: use the interface for direct cast

type SetAttributeListRequestBuilder

type SetAttributeListRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() SetAttributeListRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the SetAttributeListRequest or returns an error if something is wrong
	Build() (SetAttributeListRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SetAttributeListRequest
}

SetAttributeListRequestBuilder is a builder for SetAttributeListRequest

func NewSetAttributeListRequestBuilder

func NewSetAttributeListRequestBuilder() SetAttributeListRequestBuilder

NewSetAttributeListRequestBuilder() creates a SetAttributeListRequestBuilder

type SetAttributeListResponse

type SetAttributeListResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsSetAttributeListResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSetAttributeListResponse()
	// CreateBuilder creates a SetAttributeListResponseBuilder
	CreateSetAttributeListResponseBuilder() SetAttributeListResponseBuilder
}

SetAttributeListResponse is the corresponding interface of SetAttributeListResponse

func CastSetAttributeListResponse deprecated

func CastSetAttributeListResponse(structType any) SetAttributeListResponse

Deprecated: use the interface for direct cast

type SetAttributeListResponseBuilder

type SetAttributeListResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() SetAttributeListResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the SetAttributeListResponse or returns an error if something is wrong
	Build() (SetAttributeListResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SetAttributeListResponse
}

SetAttributeListResponseBuilder is a builder for SetAttributeListResponse

func NewSetAttributeListResponseBuilder

func NewSetAttributeListResponseBuilder() SetAttributeListResponseBuilder

NewSetAttributeListResponseBuilder() creates a SetAttributeListResponseBuilder

type SetAttributeSingleRequest

type SetAttributeSingleRequest interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsSetAttributeSingleRequest is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSetAttributeSingleRequest()
	// CreateBuilder creates a SetAttributeSingleRequestBuilder
	CreateSetAttributeSingleRequestBuilder() SetAttributeSingleRequestBuilder
}

SetAttributeSingleRequest is the corresponding interface of SetAttributeSingleRequest

func CastSetAttributeSingleRequest deprecated

func CastSetAttributeSingleRequest(structType any) SetAttributeSingleRequest

Deprecated: use the interface for direct cast

type SetAttributeSingleRequestBuilder

type SetAttributeSingleRequestBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() SetAttributeSingleRequestBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the SetAttributeSingleRequest or returns an error if something is wrong
	Build() (SetAttributeSingleRequest, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SetAttributeSingleRequest
}

SetAttributeSingleRequestBuilder is a builder for SetAttributeSingleRequest

func NewSetAttributeSingleRequestBuilder

func NewSetAttributeSingleRequestBuilder() SetAttributeSingleRequestBuilder

NewSetAttributeSingleRequestBuilder() creates a SetAttributeSingleRequestBuilder

type SetAttributeSingleResponse

type SetAttributeSingleResponse interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	CipService
	// IsSetAttributeSingleResponse is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsSetAttributeSingleResponse()
	// CreateBuilder creates a SetAttributeSingleResponseBuilder
	CreateSetAttributeSingleResponseBuilder() SetAttributeSingleResponseBuilder
}

SetAttributeSingleResponse is the corresponding interface of SetAttributeSingleResponse

func CastSetAttributeSingleResponse deprecated

func CastSetAttributeSingleResponse(structType any) SetAttributeSingleResponse

Deprecated: use the interface for direct cast

type SetAttributeSingleResponseBuilder

type SetAttributeSingleResponseBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() SetAttributeSingleResponseBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() CipServiceBuilder
	// Build builds the SetAttributeSingleResponse or returns an error if something is wrong
	Build() (SetAttributeSingleResponse, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() SetAttributeSingleResponse
}

SetAttributeSingleResponseBuilder is a builder for SetAttributeSingleResponse

func NewSetAttributeSingleResponseBuilder

func NewSetAttributeSingleResponseBuilder() SetAttributeSingleResponseBuilder

NewSetAttributeSingleResponseBuilder() creates a SetAttributeSingleResponseBuilder

type TransportType

type TransportType interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// GetDirection returns Direction (property field)
	GetDirection() bool
	// GetTrigger returns Trigger (property field)
	GetTrigger() uint8
	// GetClassTransport returns ClassTransport (property field)
	GetClassTransport() uint8
	// IsTransportType is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsTransportType()
	// CreateBuilder creates a TransportTypeBuilder
	CreateTransportTypeBuilder() TransportTypeBuilder
}

TransportType is the corresponding interface of TransportType

func CastTransportType deprecated

func CastTransportType(structType any) TransportType

Deprecated: use the interface for direct cast

func TransportTypeParse

func TransportTypeParse(ctx context.Context, theBytes []byte) (TransportType, error)

func TransportTypeParseWithBuffer

func TransportTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TransportType, error)

type TransportTypeBuilder

type TransportTypeBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(direction bool, trigger uint8, classTransport uint8) TransportTypeBuilder
	// WithDirection adds Direction (property field)
	WithDirection(bool) TransportTypeBuilder
	// WithTrigger adds Trigger (property field)
	WithTrigger(uint8) TransportTypeBuilder
	// WithClassTransport adds ClassTransport (property field)
	WithClassTransport(uint8) TransportTypeBuilder
	// Build builds the TransportType or returns an error if something is wrong
	Build() (TransportType, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() TransportType
}

TransportTypeBuilder is a builder for TransportType

func NewTransportTypeBuilder

func NewTransportTypeBuilder() TransportTypeBuilder

NewTransportTypeBuilder() creates a TransportTypeBuilder

type TypeId

type TypeId interface {
	TypeIdContract
	TypeIdRequirements
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	// IsTypeId is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsTypeId()
	// CreateBuilder creates a TypeIdBuilder
	CreateTypeIdBuilder() TypeIdBuilder
}

TypeId is the corresponding interface of TypeId

func CastTypeId deprecated

func CastTypeId(structType any) TypeId

Deprecated: use the interface for direct cast

type TypeIdBuilder

type TypeIdBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields() TypeIdBuilder
	// AsNullAddressItem converts this build to a subType of TypeId. It is always possible to return to current builder using Done()
	AsNullAddressItem() NullAddressItemBuilder
	// AsServicesResponse converts this build to a subType of TypeId. It is always possible to return to current builder using Done()
	AsServicesResponse() ServicesResponseBuilder
	// AsConnectedAddressItem converts this build to a subType of TypeId. It is always possible to return to current builder using Done()
	AsConnectedAddressItem() ConnectedAddressItemBuilder
	// AsConnectedDataItem converts this build to a subType of TypeId. It is always possible to return to current builder using Done()
	AsConnectedDataItem() ConnectedDataItemBuilder
	// AsUnConnectedDataItem converts this build to a subType of TypeId. It is always possible to return to current builder using Done()
	AsUnConnectedDataItem() UnConnectedDataItemBuilder
	// Build builds the TypeId or returns an error if something is wrong
	PartialBuild() (TypeIdContract, error)
	// MustBuild does the same as Build but panics on error
	PartialMustBuild() TypeIdContract
	// Build builds the TypeId or returns an error if something is wrong
	Build() (TypeId, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() TypeId
}

TypeIdBuilder is a builder for TypeId

func NewTypeIdBuilder

func NewTypeIdBuilder() TypeIdBuilder

NewTypeIdBuilder() creates a TypeIdBuilder

type TypeIdContract

type TypeIdContract interface {
	// IsTypeId is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsTypeId()
	// CreateBuilder creates a TypeIdBuilder
	CreateTypeIdBuilder() TypeIdBuilder
}

TypeIdContract provides a set of functions which can be overwritten by a sub struct

type TypeIdRequirements

type TypeIdRequirements interface {
	GetLengthInBits(ctx context.Context) uint16
	GetLengthInBytes(ctx context.Context) uint16
	// GetId returns Id (discriminator field)
	GetId() uint16
}

TypeIdRequirements provides a set of functions which need to be implemented by a sub struct

type UnConnectedDataItem

type UnConnectedDataItem interface {
	fmt.Stringer
	utils.LengthAware
	utils.Serializable
	utils.Copyable
	TypeId
	// GetService returns Service (property field)
	GetService() CipService
	// IsUnConnectedDataItem is a marker method to prevent unintentional type checks (interfaces of same signature)
	IsUnConnectedDataItem()
	// CreateBuilder creates a UnConnectedDataItemBuilder
	CreateUnConnectedDataItemBuilder() UnConnectedDataItemBuilder
}

UnConnectedDataItem is the corresponding interface of UnConnectedDataItem

func CastUnConnectedDataItem deprecated

func CastUnConnectedDataItem(structType any) UnConnectedDataItem

Deprecated: use the interface for direct cast

type UnConnectedDataItemBuilder

type UnConnectedDataItemBuilder interface {
	utils.Copyable
	// WithMandatoryFields adds all mandatory fields (convenience for using multiple builder calls)
	WithMandatoryFields(service CipService) UnConnectedDataItemBuilder
	// WithService adds Service (property field)
	WithService(CipService) UnConnectedDataItemBuilder
	// WithServiceBuilder adds Service (property field) which is build by the builder
	WithServiceBuilder(func(CipServiceBuilder) CipServiceBuilder) UnConnectedDataItemBuilder
	// Done is used to finish work on this child and return (or create one if none) to the parent builder
	Done() TypeIdBuilder
	// Build builds the UnConnectedDataItem or returns an error if something is wrong
	Build() (UnConnectedDataItem, error)
	// MustBuild does the same as Build but panics on error
	MustBuild() UnConnectedDataItem
}

UnConnectedDataItemBuilder is a builder for UnConnectedDataItem

func NewUnConnectedDataItemBuilder

func NewUnConnectedDataItemBuilder() UnConnectedDataItemBuilder

NewUnConnectedDataItemBuilder() creates a UnConnectedDataItemBuilder

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL