ua

package
v0.5.2 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2023 License: MIT Imports: 15 Imported by: 89

Documentation

Overview

Package ua defines the structures, decoders and encoder for built-in data types described in Part 6 Section 5 Data encoding and for services in OPC UA Binary Protocol.

Index

Constants

View Source
const (
	DataValueValue             = 0x1
	DataValueStatusCode        = 0x2
	DataValueSourceTimestamp   = 0x4
	DataValueServerTimestamp   = 0x8
	DataValueSourcePicoseconds = 0x10
	DataValueServerPicoseconds = 0x20
)

These flags define which fields of a DataValue are set. Bits are or'ed together if multiple fields are set.

View Source
const (
	LocalizedTextLocale = 0x1
	LocalizedTextText   = 0x2
)

These flags define which fields of a LocalizedText are set. Bits are or'ed together if multiple fields are set.

View Source
const (
	DiagnosticInfoSymbolicID          = 0x1
	DiagnosticInfoNamespaceURI        = 0x2
	DiagnosticInfoLocalizedText       = 0x4
	DiagnosticInfoLocale              = 0x8
	DiagnosticInfoAdditionalInfo      = 0x10
	DiagnosticInfoInnerStatusCode     = 0x20
	DiagnosticInfoInnerDiagnosticInfo = 0x40
)

These flags define which fields of a DiagnosticInfo are set. Bits are or'ed together if multiple fields are set.

View Source
const (
	SecurityPolicyURIPrefix              = "http://opcfoundation.org/UA/SecurityPolicy#"
	SecurityPolicyURINone                = "http://opcfoundation.org/UA/SecurityPolicy#None"
	SecurityPolicyURIBasic128Rsa15       = "http://opcfoundation.org/UA/SecurityPolicy#Basic128Rsa15"
	SecurityPolicyURIBasic256            = "http://opcfoundation.org/UA/SecurityPolicy#Basic256"
	SecurityPolicyURIBasic256Sha256      = "http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256"
	SecurityPolicyURIAes128Sha256RsaOaep = "http://opcfoundation.org/UA/SecurityPolicy#Aes128_Sha256_RsaOaep"
	SecurityPolicyURIAes256Sha256RsaPss  = "http://opcfoundation.org/UA/SecurityPolicy#Aes256_Sha256_RsaPss"
)
View Source
const (
	ExtensionObjectEmpty  = 0
	ExtensionObjectBinary = 1
	ExtensionObjectXML    = 2
)

These flags define the value type of an ExtensionObject. They cannot be combined.

View Source
const (
	ServiceLevelSymbolicID         = 0x1
	ServiceLevelLocalizedText      = 0x2
	ServiceLevelAdditionalInfo     = 0x4
	ServiceLevelInnerStatusCode    = 0x8
	ServiceLevelInnerDiagnostics   = 0x10
	OperationLevelSymbolicID       = 0x20
	OperationLevelLocalizedText    = 0x40
	OperationLevelAdditionalInfo   = 0x80
	OperationLevelInnerStatusCode  = 0x100
	OperationLevelInnerDiagnostics = 0x200

	ServiceLevelAll = ServiceLevelSymbolicID |
		ServiceLevelLocalizedText |
		ServiceLevelAdditionalInfo |
		ServiceLevelInnerStatusCode |
		ServiceLevelInnerDiagnostics

	OperationLevelAll = OperationLevelSymbolicID |
		OperationLevelLocalizedText |
		OperationLevelAdditionalInfo |
		OperationLevelInnerStatusCode |
		OperationLevelInnerDiagnostics

	ReturnDiagnosticsAll = ServiceLevelAll | OperationLevelAll
)

These flags define the options for the ReturnDiagnostics field of the RequestHeader. Bits are or'ed together if multiple fields are set.

View Source
const (
	// VariantArrayDimensions flags whether the array has more than one dimension
	VariantArrayDimensions = 0x40

	// VariantArrayValues flags whether the value is an array.
	VariantArrayValues = 0x80
)

Variables

View Source
var (
	// MaxVariantArrayLength sets a limit on the number of elements in array
	MaxVariantArrayLength = 0xffff
)
View Source
var SecurityPolicyURIs = map[string]string{
	"None":                SecurityPolicyURINone,
	"Basic128Rsa15":       SecurityPolicyURIBasic128Rsa15,
	"Basic256":            SecurityPolicyURIBasic256,
	"Basic256Sha256":      SecurityPolicyURIBasic256Sha256,
	"Aes128Sha256RsaOaep": SecurityPolicyURIAes128Sha256RsaOaep,
	"Aes256Sha256RsaPss":  SecurityPolicyURIAes256Sha256RsaPss,
}
View Source
var StatusCodes = map[StatusCode]StatusCodeDesc{}/* 267 elements not displayed */

StatusCodes maps status codes to the status code error types.

Functions

func Decode

func Decode(b []byte, v interface{}) (int, error)

func Encode

func Encode(v interface{}) ([]byte, error)

func FormatSecurityPolicyURI

func FormatSecurityPolicyURI(policy string) string

FormatSecurityPolicy converts a short name for a security policy into a canonical policy URI.

func RegisterExtensionObject added in v0.1.3

func RegisterExtensionObject(typeID *NodeID, v interface{})

RegisterExtensionObject registers a new extension object type. It panics if the type or the id is already registered.

func RegisterService added in v0.1.3

func RegisterService(typeID uint16, v interface{})

RegisterService registers a new service object type. It panics if the type or the id is already registered.

func ServiceTypeID

func ServiceTypeID(v interface{}) uint16

ServiceTypeID returns the id of the service object type as registered with RegisterService. If the service object is not known the function returns 0.

Types

type AccessLevelExType

type AccessLevelExType uint32
const (
	AccessLevelExTypeNone               AccessLevelExType = 0
	AccessLevelExTypeCurrentRead        AccessLevelExType = 1
	AccessLevelExTypeCurrentWrite       AccessLevelExType = 2
	AccessLevelExTypeHistoryRead        AccessLevelExType = 4
	AccessLevelExTypeHistoryWrite       AccessLevelExType = 8
	AccessLevelExTypeSemanticChange     AccessLevelExType = 16
	AccessLevelExTypeStatusWrite        AccessLevelExType = 32
	AccessLevelExTypeTimestampWrite     AccessLevelExType = 64
	AccessLevelExTypeNonatomicRead      AccessLevelExType = 256
	AccessLevelExTypeNonatomicWrite     AccessLevelExType = 512
	AccessLevelExTypeWriteFullArrayOnly AccessLevelExType = 1024
	AccessLevelExTypeNoSubDataTypes     AccessLevelExType = 2048
	AccessLevelExTypeNonVolatile        AccessLevelExType = 4096
	AccessLevelExTypeConstant           AccessLevelExType = 8192
)

func AccessLevelExTypeFromString

func AccessLevelExTypeFromString(s string) AccessLevelExType

func (AccessLevelExType) String

func (i AccessLevelExType) String() string

type AccessLevelType

type AccessLevelType uint8
const (
	AccessLevelTypeNone           AccessLevelType = 0
	AccessLevelTypeCurrentRead    AccessLevelType = 1
	AccessLevelTypeCurrentWrite   AccessLevelType = 2
	AccessLevelTypeHistoryRead    AccessLevelType = 4
	AccessLevelTypeHistoryWrite   AccessLevelType = 8
	AccessLevelTypeSemanticChange AccessLevelType = 16
	AccessLevelTypeStatusWrite    AccessLevelType = 32
	AccessLevelTypeTimestampWrite AccessLevelType = 64
)

func AccessLevelTypeFromString

func AccessLevelTypeFromString(s string) AccessLevelType

func (AccessLevelType) String

func (i AccessLevelType) String() string

type AccessRestrictionType added in v0.4.1

type AccessRestrictionType uint16
const (
	AccessRestrictionTypeNone                      AccessRestrictionType = 0
	AccessRestrictionTypeSigningRequired           AccessRestrictionType = 1
	AccessRestrictionTypeEncryptionRequired        AccessRestrictionType = 2
	AccessRestrictionTypeSessionRequired           AccessRestrictionType = 4
	AccessRestrictionTypeApplyRestrictionsToBrowse AccessRestrictionType = 8
)

func AccessRestrictionTypeFromString added in v0.4.1

func AccessRestrictionTypeFromString(s string) AccessRestrictionType

func (AccessRestrictionType) String added in v0.4.1

func (i AccessRestrictionType) String() string

type ActivateSessionRequest

type ActivateSessionRequest struct {
	RequestHeader              *RequestHeader
	ClientSignature            *SignatureData
	ClientSoftwareCertificates []*SignedSoftwareCertificate
	LocaleIDs                  []string
	UserIdentityToken          *ExtensionObject
	UserTokenSignature         *SignatureData
}

func (*ActivateSessionRequest) Header added in v0.1.6

func (*ActivateSessionRequest) SetHeader added in v0.1.6

func (t *ActivateSessionRequest) SetHeader(h *RequestHeader)

type ActivateSessionResponse

type ActivateSessionResponse struct {
	ResponseHeader  *ResponseHeader
	ServerNonce     []byte
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*ActivateSessionResponse) Header added in v0.1.6

func (*ActivateSessionResponse) SetHeader added in v0.1.6

func (t *ActivateSessionResponse) SetHeader(h *ResponseHeader)

type AddNodesItem

type AddNodesItem struct {
	ParentNodeID       *ExpandedNodeID
	ReferenceTypeID    *NodeID
	RequestedNewNodeID *ExpandedNodeID
	BrowseName         *QualifiedName
	NodeClass          NodeClass
	NodeAttributes     *ExtensionObject
	TypeDefinition     *ExpandedNodeID
}

type AddNodesRequest

type AddNodesRequest struct {
	RequestHeader *RequestHeader
	NodesToAdd    []*AddNodesItem
}

func (*AddNodesRequest) Header added in v0.1.6

func (t *AddNodesRequest) Header() *RequestHeader

func (*AddNodesRequest) SetHeader added in v0.1.6

func (t *AddNodesRequest) SetHeader(h *RequestHeader)

type AddNodesResponse

type AddNodesResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*AddNodesResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*AddNodesResponse) Header added in v0.1.6

func (t *AddNodesResponse) Header() *ResponseHeader

func (*AddNodesResponse) SetHeader added in v0.1.6

func (t *AddNodesResponse) SetHeader(h *ResponseHeader)

type AddNodesResult

type AddNodesResult struct {
	StatusCode  StatusCode
	AddedNodeID *NodeID
}

type AddReferencesItem

type AddReferencesItem struct {
	SourceNodeID    *NodeID
	ReferenceTypeID *NodeID
	IsForward       bool
	TargetServerURI string
	TargetNodeID    *ExpandedNodeID
	TargetNodeClass NodeClass
}

type AddReferencesRequest

type AddReferencesRequest struct {
	RequestHeader   *RequestHeader
	ReferencesToAdd []*AddReferencesItem
}

func (*AddReferencesRequest) Header added in v0.1.6

func (t *AddReferencesRequest) Header() *RequestHeader

func (*AddReferencesRequest) SetHeader added in v0.1.6

func (t *AddReferencesRequest) SetHeader(h *RequestHeader)

type AddReferencesResponse

type AddReferencesResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*AddReferencesResponse) Header added in v0.1.6

func (*AddReferencesResponse) SetHeader added in v0.1.6

func (t *AddReferencesResponse) SetHeader(h *ResponseHeader)

type AdditionalParametersType

type AdditionalParametersType struct {
	Parameters []*KeyValuePair
}

type AggregateConfiguration

type AggregateConfiguration struct {
	UseServerCapabilitiesDefaults bool
	TreatUncertainAsBad           bool
	PercentDataBad                uint8
	PercentDataGood               uint8
	UseSlopedExtrapolation        bool
}

type AggregateFilter

type AggregateFilter struct {
	StartTime              time.Time
	AggregateType          *NodeID
	ProcessingInterval     float64
	AggregateConfiguration *AggregateConfiguration
}

type AggregateFilterResult

type AggregateFilterResult struct {
	RevisedStartTime              time.Time
	RevisedProcessingInterval     float64
	RevisedAggregateConfiguration *AggregateConfiguration
}

type AlarmMask added in v0.4.1

type AlarmMask uint16
const (
	AlarmMaskNone           AlarmMask = 0
	AlarmMaskActive         AlarmMask = 1
	AlarmMaskUnacknowledged AlarmMask = 2
	AlarmMaskUnconfirmed    AlarmMask = 4
)

func AlarmMaskFromString added in v0.4.1

func AlarmMaskFromString(s string) AlarmMask

func (AlarmMask) String added in v0.4.1

func (i AlarmMask) String() string

type AliasNameDataType added in v0.4.1

type AliasNameDataType struct {
	AliasName       *QualifiedName
	ReferencedNodes []*ExpandedNodeID
}

type Annotation

type Annotation struct {
	Message        string
	UserName       string
	AnnotationTime time.Time
}

type AnonymousIdentityToken

type AnonymousIdentityToken struct {
	PolicyID string
}

type ApplicationDescription

type ApplicationDescription struct {
	ApplicationURI      string
	ProductURI          string
	ApplicationName     *LocalizedText
	ApplicationType     ApplicationType
	GatewayServerURI    string
	DiscoveryProfileURI string
	DiscoveryURLs       []string
}

type ApplicationType

type ApplicationType uint32
const (
	ApplicationTypeServer          ApplicationType = 0
	ApplicationTypeClient          ApplicationType = 1
	ApplicationTypeClientAndServer ApplicationType = 2
	ApplicationTypeDiscoveryServer ApplicationType = 3
)

func ApplicationTypeFromString

func ApplicationTypeFromString(s string) ApplicationType

func (ApplicationType) String

func (i ApplicationType) String() string

type Argument

type Argument struct {
	Name            string
	DataType        *NodeID
	ValueRank       int32
	ArrayDimensions []uint32
	Description     *LocalizedText
}

type AttributeID

type AttributeID uint32

Identifiers assigned to Attributes.

Specification: Part 6, A.1

const (
	AttributeIDInvalid                 AttributeID = 0
	AttributeIDNodeID                  AttributeID = 1
	AttributeIDNodeClass               AttributeID = 2
	AttributeIDBrowseName              AttributeID = 3
	AttributeIDDisplayName             AttributeID = 4
	AttributeIDDescription             AttributeID = 5
	AttributeIDWriteMask               AttributeID = 6
	AttributeIDUserWriteMask           AttributeID = 7
	AttributeIDIsAbstract              AttributeID = 8
	AttributeIDSymmetric               AttributeID = 9
	AttributeIDInverseName             AttributeID = 10
	AttributeIDContainsNoLoops         AttributeID = 11
	AttributeIDEventNotifier           AttributeID = 12
	AttributeIDValue                   AttributeID = 13
	AttributeIDDataType                AttributeID = 14
	AttributeIDValueRank               AttributeID = 15
	AttributeIDArrayDimensions         AttributeID = 16
	AttributeIDAccessLevel             AttributeID = 17
	AttributeIDUserAccessLevel         AttributeID = 18
	AttributeIDMinimumSamplingInterval AttributeID = 19
	AttributeIDHistorizing             AttributeID = 20
	AttributeIDExecutable              AttributeID = 21
	AttributeIDUserExecutable          AttributeID = 22
	AttributeIDDataTypeDefinition      AttributeID = 23
	AttributeIDRolePermissions         AttributeID = 24
	AttributeIDUserRolePermissions     AttributeID = 25
	AttributeIDAccessRestrictions      AttributeID = 26
	AttributeIDAccessLevelEx           AttributeID = 27
)

func (AttributeID) String

func (i AttributeID) String() string

type AttributeOperand

type AttributeOperand struct {
	NodeID      *NodeID
	Alias       string
	BrowsePath  *RelativePath
	AttributeID AttributeID
	IndexRange  string
}

type AttributeWriteMask

type AttributeWriteMask uint32
const (
	AttributeWriteMaskNone                    AttributeWriteMask = 0
	AttributeWriteMaskAccessLevel             AttributeWriteMask = 1
	AttributeWriteMaskArrayDimensions         AttributeWriteMask = 2
	AttributeWriteMaskBrowseName              AttributeWriteMask = 4
	AttributeWriteMaskContainsNoLoops         AttributeWriteMask = 8
	AttributeWriteMaskDataType                AttributeWriteMask = 16
	AttributeWriteMaskDescription             AttributeWriteMask = 32
	AttributeWriteMaskDisplayName             AttributeWriteMask = 64
	AttributeWriteMaskEventNotifier           AttributeWriteMask = 128
	AttributeWriteMaskExecutable              AttributeWriteMask = 256
	AttributeWriteMaskHistorizing             AttributeWriteMask = 512
	AttributeWriteMaskInverseName             AttributeWriteMask = 1024
	AttributeWriteMaskIsAbstract              AttributeWriteMask = 2048
	AttributeWriteMaskMinimumSamplingInterval AttributeWriteMask = 4096
	AttributeWriteMaskNodeClass               AttributeWriteMask = 8192
	AttributeWriteMaskNodeID                  AttributeWriteMask = 16384
	AttributeWriteMaskSymmetric               AttributeWriteMask = 32768
	AttributeWriteMaskUserAccessLevel         AttributeWriteMask = 65536
	AttributeWriteMaskUserExecutable          AttributeWriteMask = 131072
	AttributeWriteMaskUserWriteMask           AttributeWriteMask = 262144
	AttributeWriteMaskValueRank               AttributeWriteMask = 524288
	AttributeWriteMaskWriteMask               AttributeWriteMask = 1048576
	AttributeWriteMaskValueForVariableType    AttributeWriteMask = 2097152
	AttributeWriteMaskDataTypeDefinition      AttributeWriteMask = 4194304
	AttributeWriteMaskRolePermissions         AttributeWriteMask = 8388608
	AttributeWriteMaskAccessRestrictions      AttributeWriteMask = 16777216
	AttributeWriteMaskAccessLevelEx           AttributeWriteMask = 33554432
)

func AttributeWriteMaskFromString

func AttributeWriteMaskFromString(s string) AttributeWriteMask

func (AttributeWriteMask) String

func (i AttributeWriteMask) String() string

type AxisInformation

type AxisInformation struct {
	EngineeringUnits *EUInformation
	EURange          *Range
	Title            *LocalizedText
	AxisScaleType    AxisScaleEnumeration
	AxisSteps        []float64
}

type AxisScaleEnumeration

type AxisScaleEnumeration uint32
const (
	AxisScaleEnumerationLinear AxisScaleEnumeration = 0
	AxisScaleEnumerationLog    AxisScaleEnumeration = 1
	AxisScaleEnumerationLn     AxisScaleEnumeration = 2
)

func AxisScaleEnumerationFromString

func AxisScaleEnumerationFromString(s string) AxisScaleEnumeration

func (AxisScaleEnumeration) String

func (i AxisScaleEnumeration) String() string

type BinaryDecoder

type BinaryDecoder interface {
	Decode([]byte) (int, error)
}

type BinaryEncoder

type BinaryEncoder interface {
	Encode() ([]byte, error)
}

BinaryEncoder is the interface implemented by an object that can marshal itself into a binary OPC/UA representation.

type BrokerConnectionTransportDataType

type BrokerConnectionTransportDataType struct {
	ResourceURI              string
	AuthenticationProfileURI string
}

type BrokerDataSetReaderTransportDataType

type BrokerDataSetReaderTransportDataType struct {
	QueueName                  string
	ResourceURI                string
	AuthenticationProfileURI   string
	RequestedDeliveryGuarantee BrokerTransportQoS
	MetaDataQueueName          string
}

type BrokerDataSetWriterTransportDataType

type BrokerDataSetWriterTransportDataType struct {
	QueueName                  string
	ResourceURI                string
	AuthenticationProfileURI   string
	RequestedDeliveryGuarantee BrokerTransportQoS
	MetaDataQueueName          string
	MetaDataUpdateTime         float64
}

type BrokerTransportQoS

type BrokerTransportQoS uint32
const (
	BrokerTransportQoSNotSpecified BrokerTransportQoS = 0
	BrokerTransportQoSBestEffort   BrokerTransportQoS = 1
	BrokerTransportQoSAtLeastOnce  BrokerTransportQoS = 2
	BrokerTransportQoSAtMostOnce   BrokerTransportQoS = 3
	BrokerTransportQoSExactlyOnce  BrokerTransportQoS = 4
)

func BrokerTransportQoSFromString

func BrokerTransportQoSFromString(s string) BrokerTransportQoS

func (BrokerTransportQoS) String

func (i BrokerTransportQoS) String() string

type BrokerWriterGroupTransportDataType

type BrokerWriterGroupTransportDataType struct {
	QueueName                  string
	ResourceURI                string
	AuthenticationProfileURI   string
	RequestedDeliveryGuarantee BrokerTransportQoS
}

type BrowseDescription

type BrowseDescription struct {
	NodeID          *NodeID
	BrowseDirection BrowseDirection
	ReferenceTypeID *NodeID
	IncludeSubtypes bool
	NodeClassMask   uint32
	ResultMask      uint32
}

type BrowseDirection

type BrowseDirection uint32
const (
	BrowseDirectionForward BrowseDirection = 0
	BrowseDirectionInverse BrowseDirection = 1
	BrowseDirectionBoth    BrowseDirection = 2
	BrowseDirectionInvalid BrowseDirection = 3
)

func BrowseDirectionFromString

func BrowseDirectionFromString(s string) BrowseDirection

func (BrowseDirection) String

func (i BrowseDirection) String() string

type BrowseNextRequest

type BrowseNextRequest struct {
	RequestHeader             *RequestHeader
	ReleaseContinuationPoints bool
	ContinuationPoints        [][]byte
}

func (*BrowseNextRequest) Header added in v0.1.6

func (t *BrowseNextRequest) Header() *RequestHeader

func (*BrowseNextRequest) SetHeader added in v0.1.6

func (t *BrowseNextRequest) SetHeader(h *RequestHeader)

type BrowseNextResponse

type BrowseNextResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*BrowseResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*BrowseNextResponse) Header added in v0.1.6

func (t *BrowseNextResponse) Header() *ResponseHeader

func (*BrowseNextResponse) SetHeader added in v0.1.6

func (t *BrowseNextResponse) SetHeader(h *ResponseHeader)

type BrowsePath

type BrowsePath struct {
	StartingNode *NodeID
	RelativePath *RelativePath
}

type BrowsePathResult

type BrowsePathResult struct {
	StatusCode StatusCode
	Targets    []*BrowsePathTarget
}

type BrowsePathTarget

type BrowsePathTarget struct {
	TargetID           *ExpandedNodeID
	RemainingPathIndex uint32
}

type BrowseRequest

type BrowseRequest struct {
	RequestHeader                 *RequestHeader
	View                          *ViewDescription
	RequestedMaxReferencesPerNode uint32
	NodesToBrowse                 []*BrowseDescription
}

func (*BrowseRequest) Header added in v0.1.6

func (t *BrowseRequest) Header() *RequestHeader

func (*BrowseRequest) SetHeader added in v0.1.6

func (t *BrowseRequest) SetHeader(h *RequestHeader)

type BrowseResponse

type BrowseResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*BrowseResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*BrowseResponse) Header added in v0.1.6

func (t *BrowseResponse) Header() *ResponseHeader

func (*BrowseResponse) SetHeader added in v0.1.6

func (t *BrowseResponse) SetHeader(h *ResponseHeader)

type BrowseResult

type BrowseResult struct {
	StatusCode        StatusCode
	ContinuationPoint []byte
	References        []*ReferenceDescription
}

type BrowseResultMask

type BrowseResultMask uint32
const (
	BrowseResultMaskNone              BrowseResultMask = 0
	BrowseResultMaskReferenceTypeID   BrowseResultMask = 1
	BrowseResultMaskIsForward         BrowseResultMask = 2
	BrowseResultMaskNodeClass         BrowseResultMask = 4
	BrowseResultMaskBrowseName        BrowseResultMask = 8
	BrowseResultMaskDisplayName       BrowseResultMask = 16
	BrowseResultMaskTypeDefinition    BrowseResultMask = 32
	BrowseResultMaskAll               BrowseResultMask = 63
	BrowseResultMaskReferenceTypeInfo BrowseResultMask = 3
	BrowseResultMaskTargetInfo        BrowseResultMask = 60
)

func BrowseResultMaskFromString

func BrowseResultMaskFromString(s string) BrowseResultMask

func (BrowseResultMask) String

func (i BrowseResultMask) String() string

type Buffer

type Buffer struct {
	// contains filtered or unexported fields
}

func NewBuffer

func NewBuffer(b []byte) *Buffer

func (*Buffer) Bytes

func (b *Buffer) Bytes() []byte

func (*Buffer) Error

func (b *Buffer) Error() error

func (*Buffer) Len

func (b *Buffer) Len() int

func (*Buffer) Pos

func (b *Buffer) Pos() int

func (*Buffer) ReadBool

func (b *Buffer) ReadBool() bool

func (*Buffer) ReadByte

func (b *Buffer) ReadByte() byte

func (*Buffer) ReadBytes

func (b *Buffer) ReadBytes() []byte

func (*Buffer) ReadFloat32

func (b *Buffer) ReadFloat32() float32

func (*Buffer) ReadFloat64

func (b *Buffer) ReadFloat64() float64

func (*Buffer) ReadInt16

func (b *Buffer) ReadInt16() int16

func (*Buffer) ReadInt32

func (b *Buffer) ReadInt32() int32

func (*Buffer) ReadInt64

func (b *Buffer) ReadInt64() int64

func (*Buffer) ReadInt8

func (b *Buffer) ReadInt8() int8

func (*Buffer) ReadN

func (b *Buffer) ReadN(n int) []byte

func (*Buffer) ReadString

func (b *Buffer) ReadString() string

func (*Buffer) ReadStruct

func (b *Buffer) ReadStruct(r interface{})

func (*Buffer) ReadTime

func (b *Buffer) ReadTime() time.Time

func (*Buffer) ReadUint16

func (b *Buffer) ReadUint16() uint16

func (*Buffer) ReadUint32

func (b *Buffer) ReadUint32() uint32

func (*Buffer) ReadUint64

func (b *Buffer) ReadUint64() uint64

func (*Buffer) Write

func (b *Buffer) Write(d []byte)

func (*Buffer) WriteBool

func (b *Buffer) WriteBool(v bool)

func (*Buffer) WriteByte

func (b *Buffer) WriteByte(n byte)

func (*Buffer) WriteByteString

func (b *Buffer) WriteByteString(d []byte)

func (*Buffer) WriteFloat32

func (b *Buffer) WriteFloat32(n float32)

func (*Buffer) WriteFloat64

func (b *Buffer) WriteFloat64(n float64)

func (*Buffer) WriteInt16

func (b *Buffer) WriteInt16(n int16)

func (*Buffer) WriteInt32

func (b *Buffer) WriteInt32(n int32)

func (*Buffer) WriteInt64

func (b *Buffer) WriteInt64(n int64)

func (*Buffer) WriteInt8

func (b *Buffer) WriteInt8(n int8)

func (*Buffer) WriteString

func (b *Buffer) WriteString(s string)

func (*Buffer) WriteStruct

func (b *Buffer) WriteStruct(w interface{})

func (*Buffer) WriteTime

func (b *Buffer) WriteTime(v time.Time)

func (*Buffer) WriteUint16

func (b *Buffer) WriteUint16(n uint16)

func (*Buffer) WriteUint32

func (b *Buffer) WriteUint32(n uint32)

func (*Buffer) WriteUint64

func (b *Buffer) WriteUint64(n uint64)

func (*Buffer) WriteUint8

func (b *Buffer) WriteUint8(n uint8)

type BuildInfo

type BuildInfo struct {
	ProductURI       string
	ManufacturerName string
	ProductName      string
	SoftwareVersion  string
	BuildNumber      string
	BuildDate        time.Time
}

type ByteArray added in v0.2.0

type ByteArray []byte

ByteArray encodes a byte array as an OPC/UA array of Byte.

type CallMethodRequest

type CallMethodRequest struct {
	ObjectID       *NodeID
	MethodID       *NodeID
	InputArguments []*Variant
}

type CallMethodResult

type CallMethodResult struct {
	StatusCode                   StatusCode
	InputArgumentResults         []StatusCode
	InputArgumentDiagnosticInfos []*DiagnosticInfo
	OutputArguments              []*Variant
}

type CallRequest

type CallRequest struct {
	RequestHeader *RequestHeader
	MethodsToCall []*CallMethodRequest
}

func (*CallRequest) Header added in v0.1.6

func (t *CallRequest) Header() *RequestHeader

func (*CallRequest) SetHeader added in v0.1.6

func (t *CallRequest) SetHeader(h *RequestHeader)

type CallResponse

type CallResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*CallMethodResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*CallResponse) Header added in v0.1.6

func (t *CallResponse) Header() *ResponseHeader

func (*CallResponse) SetHeader added in v0.1.6

func (t *CallResponse) SetHeader(h *ResponseHeader)

type CancelRequest

type CancelRequest struct {
	RequestHeader *RequestHeader
	RequestHandle uint32
}

func (*CancelRequest) Header added in v0.1.6

func (t *CancelRequest) Header() *RequestHeader

func (*CancelRequest) SetHeader added in v0.1.6

func (t *CancelRequest) SetHeader(h *RequestHeader)

type CancelResponse

type CancelResponse struct {
	ResponseHeader *ResponseHeader
	CancelCount    uint32
}

func (*CancelResponse) Header added in v0.1.6

func (t *CancelResponse) Header() *ResponseHeader

func (*CancelResponse) SetHeader added in v0.1.6

func (t *CancelResponse) SetHeader(h *ResponseHeader)

type CartesianCoordinates added in v0.4.1

type CartesianCoordinates struct{}

type ChannelSecurityToken

type ChannelSecurityToken struct {
	ChannelID       uint32
	TokenID         uint32
	CreatedAt       time.Time
	RevisedLifetime uint32
}

type CloseSecureChannelRequest

type CloseSecureChannelRequest struct {
	RequestHeader *RequestHeader
}

func (*CloseSecureChannelRequest) Header added in v0.1.6

func (*CloseSecureChannelRequest) SetHeader added in v0.1.6

func (t *CloseSecureChannelRequest) SetHeader(h *RequestHeader)

type CloseSecureChannelResponse

type CloseSecureChannelResponse struct {
	ResponseHeader *ResponseHeader
}

func (*CloseSecureChannelResponse) Header added in v0.1.6

func (*CloseSecureChannelResponse) SetHeader added in v0.1.6

func (t *CloseSecureChannelResponse) SetHeader(h *ResponseHeader)

type CloseSessionRequest

type CloseSessionRequest struct {
	RequestHeader       *RequestHeader
	DeleteSubscriptions bool
}

func (*CloseSessionRequest) Header added in v0.1.6

func (t *CloseSessionRequest) Header() *RequestHeader

func (*CloseSessionRequest) SetHeader added in v0.1.6

func (t *CloseSessionRequest) SetHeader(h *RequestHeader)

type CloseSessionResponse

type CloseSessionResponse struct {
	ResponseHeader *ResponseHeader
}

func (*CloseSessionResponse) Header added in v0.1.6

func (t *CloseSessionResponse) Header() *ResponseHeader

func (*CloseSessionResponse) SetHeader added in v0.1.6

func (t *CloseSessionResponse) SetHeader(h *ResponseHeader)

type ComplexNumberType

type ComplexNumberType struct {
	Real      float32
	Imaginary float32
}

type ConfigurationVersionDataType

type ConfigurationVersionDataType struct {
	MajorVersion uint32
	MinorVersion uint32
}

type ConnectionTransportDataType added in v0.1.12

type ConnectionTransportDataType struct{}

type ContentFilter

type ContentFilter struct {
	Elements []*ContentFilterElement
}

type ContentFilterElement

type ContentFilterElement struct {
	FilterOperator FilterOperator
	FilterOperands []*ExtensionObject
}

type ContentFilterElementResult

type ContentFilterElementResult struct {
	StatusCode             StatusCode
	OperandStatusCodes     []StatusCode
	OperandDiagnosticInfos []*DiagnosticInfo
}

type ContentFilterResult

type ContentFilterResult struct {
	ElementResults         []*ContentFilterElementResult
	ElementDiagnosticInfos []*DiagnosticInfo
}

type CreateMonitoredItemsRequest

type CreateMonitoredItemsRequest struct {
	RequestHeader      *RequestHeader
	SubscriptionID     uint32
	TimestampsToReturn TimestampsToReturn
	ItemsToCreate      []*MonitoredItemCreateRequest
}

func (*CreateMonitoredItemsRequest) Header added in v0.1.6

func (*CreateMonitoredItemsRequest) SetHeader added in v0.1.6

func (t *CreateMonitoredItemsRequest) SetHeader(h *RequestHeader)

type CreateMonitoredItemsResponse

type CreateMonitoredItemsResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*MonitoredItemCreateResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*CreateMonitoredItemsResponse) Header added in v0.1.6

func (*CreateMonitoredItemsResponse) SetHeader added in v0.1.6

type CreateSessionRequest

type CreateSessionRequest struct {
	RequestHeader           *RequestHeader
	ClientDescription       *ApplicationDescription
	ServerURI               string
	EndpointURL             string
	SessionName             string
	ClientNonce             []byte
	ClientCertificate       []byte
	RequestedSessionTimeout float64
	MaxResponseMessageSize  uint32
}

func (*CreateSessionRequest) Header added in v0.1.6

func (t *CreateSessionRequest) Header() *RequestHeader

func (*CreateSessionRequest) SetHeader added in v0.1.6

func (t *CreateSessionRequest) SetHeader(h *RequestHeader)

type CreateSessionResponse

type CreateSessionResponse struct {
	ResponseHeader             *ResponseHeader
	SessionID                  *NodeID
	AuthenticationToken        *NodeID
	RevisedSessionTimeout      float64
	ServerNonce                []byte
	ServerCertificate          []byte
	ServerEndpoints            []*EndpointDescription
	ServerSoftwareCertificates []*SignedSoftwareCertificate
	ServerSignature            *SignatureData
	MaxRequestMessageSize      uint32
}

func (*CreateSessionResponse) Header added in v0.1.6

func (*CreateSessionResponse) SetHeader added in v0.1.6

func (t *CreateSessionResponse) SetHeader(h *ResponseHeader)

type CreateSubscriptionRequest

type CreateSubscriptionRequest struct {
	RequestHeader               *RequestHeader
	RequestedPublishingInterval float64
	RequestedLifetimeCount      uint32
	RequestedMaxKeepAliveCount  uint32
	MaxNotificationsPerPublish  uint32
	PublishingEnabled           bool
	Priority                    uint8
}

func (*CreateSubscriptionRequest) Header added in v0.1.6

func (*CreateSubscriptionRequest) SetHeader added in v0.1.6

func (t *CreateSubscriptionRequest) SetHeader(h *RequestHeader)

type CreateSubscriptionResponse

type CreateSubscriptionResponse struct {
	ResponseHeader            *ResponseHeader
	SubscriptionID            uint32
	RevisedPublishingInterval float64
	RevisedLifetimeCount      uint32
	RevisedMaxKeepAliveCount  uint32
}

func (*CreateSubscriptionResponse) Header added in v0.1.6

func (*CreateSubscriptionResponse) SetHeader added in v0.1.6

func (t *CreateSubscriptionResponse) SetHeader(h *ResponseHeader)

type CurrencyUnitType added in v0.4.1

type CurrencyUnitType struct {
	NumericCode    int16
	Exponent       int8
	AlphabeticCode string
	Currency       *LocalizedText
}

type DataChangeFilter

type DataChangeFilter struct {
	Trigger       DataChangeTrigger
	DeadbandType  uint32
	DeadbandValue float64
}

type DataChangeNotification

type DataChangeNotification struct {
	MonitoredItems  []*MonitoredItemNotification
	DiagnosticInfos []*DiagnosticInfo
}

type DataChangeTrigger

type DataChangeTrigger uint32
const (
	DataChangeTriggerStatus               DataChangeTrigger = 0
	DataChangeTriggerStatusValue          DataChangeTrigger = 1
	DataChangeTriggerStatusValueTimestamp DataChangeTrigger = 2
)

func DataChangeTriggerFromString

func DataChangeTriggerFromString(s string) DataChangeTrigger

func (DataChangeTrigger) String

func (i DataChangeTrigger) String() string

type DataSetFieldContentMask

type DataSetFieldContentMask uint32
const (
	DataSetFieldContentMaskNone              DataSetFieldContentMask = 0
	DataSetFieldContentMaskStatusCode        DataSetFieldContentMask = 1
	DataSetFieldContentMaskSourceTimestamp   DataSetFieldContentMask = 2
	DataSetFieldContentMaskServerTimestamp   DataSetFieldContentMask = 4
	DataSetFieldContentMaskSourcePicoSeconds DataSetFieldContentMask = 8
	DataSetFieldContentMaskServerPicoSeconds DataSetFieldContentMask = 16
	DataSetFieldContentMaskRawData           DataSetFieldContentMask = 32
)

func DataSetFieldContentMaskFromString

func DataSetFieldContentMaskFromString(s string) DataSetFieldContentMask

func (DataSetFieldContentMask) String

func (i DataSetFieldContentMask) String() string

type DataSetFieldFlags

type DataSetFieldFlags uint16
const (
	DataSetFieldFlagsNone          DataSetFieldFlags = 0
	DataSetFieldFlagsPromotedField DataSetFieldFlags = 1
)

func DataSetFieldFlagsFromString

func DataSetFieldFlagsFromString(s string) DataSetFieldFlags

func (DataSetFieldFlags) String

func (i DataSetFieldFlags) String() string

type DataSetMetaDataType

type DataSetMetaDataType struct {
	Namespaces           []string
	StructureDataTypes   []*StructureDescription
	EnumDataTypes        []*EnumDescription
	SimpleDataTypes      []*SimpleTypeDescription
	Name                 string
	Description          *LocalizedText
	Fields               []*FieldMetaData
	DataSetClassID       *GUID
	ConfigurationVersion *ConfigurationVersionDataType
}

type DataSetOrderingType

type DataSetOrderingType uint32
const (
	DataSetOrderingTypeUndefined               DataSetOrderingType = 0
	DataSetOrderingTypeAscendingWriterID       DataSetOrderingType = 1
	DataSetOrderingTypeAscendingWriterIDSingle DataSetOrderingType = 2
)

func DataSetOrderingTypeFromString

func DataSetOrderingTypeFromString(s string) DataSetOrderingType

func (DataSetOrderingType) String

func (i DataSetOrderingType) String() string

type DataSetReaderDataType

type DataSetReaderDataType struct {
	Name                    string
	Enabled                 bool
	PublisherID             *Variant
	WriterGroupID           uint16
	DataSetWriterID         uint16
	DataSetMetaData         *DataSetMetaDataType
	DataSetFieldContentMask DataSetFieldContentMask
	MessageReceiveTimeout   float64
	KeyFrameCount           uint32
	HeaderLayoutURI         string
	SecurityMode            MessageSecurityMode
	SecurityGroupID         string
	SecurityKeyServices     []*EndpointDescription
	DataSetReaderProperties []*KeyValuePair
	TransportSettings       *ExtensionObject
	MessageSettings         *ExtensionObject
	SubscribedDataSet       *ExtensionObject
}

type DataSetReaderMessageDataType added in v0.1.12

type DataSetReaderMessageDataType struct{}

type DataSetReaderTransportDataType added in v0.1.12

type DataSetReaderTransportDataType struct{}

type DataSetWriterDataType

type DataSetWriterDataType struct {
	Name                    string
	Enabled                 bool
	DataSetWriterID         uint16
	DataSetFieldContentMask DataSetFieldContentMask
	KeyFrameCount           uint32
	DataSetName             string
	DataSetWriterProperties []*KeyValuePair
	TransportSettings       *ExtensionObject
	MessageSettings         *ExtensionObject
}

type DataSetWriterMessageDataType added in v0.1.12

type DataSetWriterMessageDataType struct{}

type DataSetWriterTransportDataType added in v0.1.12

type DataSetWriterTransportDataType struct{}

type DataTypeAttributes

type DataTypeAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
	IsAbstract          bool
}

type DataTypeDefinition added in v0.4.1

type DataTypeDefinition struct{}

type DataTypeDescription

type DataTypeDescription struct {
	DataTypeID *NodeID
	Name       *QualifiedName
}

type DataTypeSchemaHeader

type DataTypeSchemaHeader struct {
	Namespaces         []string
	StructureDataTypes []*StructureDescription
	EnumDataTypes      []*EnumDescription
	SimpleDataTypes    []*SimpleTypeDescription
}

type DataValue

type DataValue struct {
	EncodingMask      byte
	Value             *Variant
	Status            StatusCode
	SourceTimestamp   time.Time
	SourcePicoseconds uint16
	ServerTimestamp   time.Time
	ServerPicoseconds uint16
}

DataValue is always preceded by a mask that indicates which fields are present in the stream.

Specification: Part 6, 5.2.2.17

func (*DataValue) Decode

func (d *DataValue) Decode(b []byte) (int, error)

func (*DataValue) Encode

func (d *DataValue) Encode() ([]byte, error)

func (*DataValue) Has

func (d *DataValue) Has(mask byte) bool

func (*DataValue) UpdateMask

func (d *DataValue) UpdateMask()

type DatagramConnectionTransport2DataType added in v0.4.1

type DatagramConnectionTransport2DataType struct {
	DiscoveryAddress        *ExtensionObject
	DiscoveryAnnounceRate   uint32
	DiscoveryMaxMessageSize uint32
	QosCategory             string
	DatagramQos             []*ExtensionObject
}

type DatagramConnectionTransportDataType

type DatagramConnectionTransportDataType struct {
	DiscoveryAddress *ExtensionObject
}

type DatagramDataSetReaderTransportDataType added in v0.4.1

type DatagramDataSetReaderTransportDataType struct {
	Address     *ExtensionObject
	QosCategory string
	DatagramQos []*ExtensionObject
	Topic       string
}

type DatagramWriterGroupTransport2DataType added in v0.4.1

type DatagramWriterGroupTransport2DataType struct {
	MessageRepeatCount    uint8
	MessageRepeatDelay    float64
	Address               *ExtensionObject
	QosCategory           string
	DatagramQos           []*ExtensionObject
	DiscoveryAnnounceRate uint32
	Topic                 string
}

type DatagramWriterGroupTransportDataType

type DatagramWriterGroupTransportDataType struct {
	MessageRepeatCount uint8
	MessageRepeatDelay float64
}

type DeadbandType

type DeadbandType uint32
const (
	DeadbandTypeNone     DeadbandType = 0
	DeadbandTypeAbsolute DeadbandType = 1
	DeadbandTypePercent  DeadbandType = 2
)

func DeadbandTypeFromString

func DeadbandTypeFromString(s string) DeadbandType

func (DeadbandType) String

func (i DeadbandType) String() string

type DeleteAtTimeDetails

type DeleteAtTimeDetails struct {
	NodeID   *NodeID
	ReqTimes []time.Time
}

type DeleteEventDetails

type DeleteEventDetails struct {
	NodeID   *NodeID
	EventIDs [][]byte
}

type DeleteMonitoredItemsRequest

type DeleteMonitoredItemsRequest struct {
	RequestHeader    *RequestHeader
	SubscriptionID   uint32
	MonitoredItemIDs []uint32
}

func (*DeleteMonitoredItemsRequest) Header added in v0.1.6

func (*DeleteMonitoredItemsRequest) SetHeader added in v0.1.6

func (t *DeleteMonitoredItemsRequest) SetHeader(h *RequestHeader)

type DeleteMonitoredItemsResponse

type DeleteMonitoredItemsResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*DeleteMonitoredItemsResponse) Header added in v0.1.6

func (*DeleteMonitoredItemsResponse) SetHeader added in v0.1.6

type DeleteNodesItem

type DeleteNodesItem struct {
	NodeID                 *NodeID
	DeleteTargetReferences bool
}

type DeleteNodesRequest

type DeleteNodesRequest struct {
	RequestHeader *RequestHeader
	NodesToDelete []*DeleteNodesItem
}

func (*DeleteNodesRequest) Header added in v0.1.6

func (t *DeleteNodesRequest) Header() *RequestHeader

func (*DeleteNodesRequest) SetHeader added in v0.1.6

func (t *DeleteNodesRequest) SetHeader(h *RequestHeader)

type DeleteNodesResponse

type DeleteNodesResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*DeleteNodesResponse) Header added in v0.1.6

func (t *DeleteNodesResponse) Header() *ResponseHeader

func (*DeleteNodesResponse) SetHeader added in v0.1.6

func (t *DeleteNodesResponse) SetHeader(h *ResponseHeader)

type DeleteRawModifiedDetails

type DeleteRawModifiedDetails struct {
	NodeID           *NodeID
	IsDeleteModified bool
	StartTime        time.Time
	EndTime          time.Time
}

type DeleteReferencesItem

type DeleteReferencesItem struct {
	SourceNodeID        *NodeID
	ReferenceTypeID     *NodeID
	IsForward           bool
	TargetNodeID        *ExpandedNodeID
	DeleteBidirectional bool
}

type DeleteReferencesRequest

type DeleteReferencesRequest struct {
	RequestHeader      *RequestHeader
	ReferencesToDelete []*DeleteReferencesItem
}

func (*DeleteReferencesRequest) Header added in v0.1.6

func (*DeleteReferencesRequest) SetHeader added in v0.1.6

func (t *DeleteReferencesRequest) SetHeader(h *RequestHeader)

type DeleteReferencesResponse

type DeleteReferencesResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*DeleteReferencesResponse) Header added in v0.1.6

func (*DeleteReferencesResponse) SetHeader added in v0.1.6

func (t *DeleteReferencesResponse) SetHeader(h *ResponseHeader)

type DeleteSubscriptionsRequest

type DeleteSubscriptionsRequest struct {
	RequestHeader   *RequestHeader
	SubscriptionIDs []uint32
}

func (*DeleteSubscriptionsRequest) Header added in v0.1.6

func (*DeleteSubscriptionsRequest) SetHeader added in v0.1.6

func (t *DeleteSubscriptionsRequest) SetHeader(h *RequestHeader)

type DeleteSubscriptionsResponse

type DeleteSubscriptionsResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*DeleteSubscriptionsResponse) Header added in v0.1.6

func (*DeleteSubscriptionsResponse) SetHeader added in v0.1.6

type DiagnosticInfo

type DiagnosticInfo struct {
	EncodingMask        uint8
	SymbolicID          int32
	NamespaceURI        int32
	Locale              int32
	LocalizedText       int32
	AdditionalInfo      string
	InnerStatusCode     StatusCode
	InnerDiagnosticInfo *DiagnosticInfo
}

DiagnosticInfo represents the DiagnosticInfo.

Specification: Part 4, 7.8

func (*DiagnosticInfo) Decode

func (d *DiagnosticInfo) Decode(b []byte) (int, error)

func (*DiagnosticInfo) Encode

func (d *DiagnosticInfo) Encode() ([]byte, error)

func (*DiagnosticInfo) Has

func (d *DiagnosticInfo) Has(mask byte) bool

func (*DiagnosticInfo) UpdateMask

func (d *DiagnosticInfo) UpdateMask()

type DiagnosticsLevel

type DiagnosticsLevel uint32
const (
	DiagnosticsLevelBasic    DiagnosticsLevel = 0
	DiagnosticsLevelAdvanced DiagnosticsLevel = 1
	DiagnosticsLevelInfo     DiagnosticsLevel = 2
	DiagnosticsLevelLog      DiagnosticsLevel = 3
	DiagnosticsLevelDebug    DiagnosticsLevel = 4
)

func DiagnosticsLevelFromString

func DiagnosticsLevelFromString(s string) DiagnosticsLevel

func (DiagnosticsLevel) String

func (i DiagnosticsLevel) String() string

type DiscoveryConfiguration added in v0.1.12

type DiscoveryConfiguration struct{}

type DoubleComplexNumberType

type DoubleComplexNumberType struct {
	Real      float64
	Imaginary float64
}

type Duplex added in v0.4.1

type Duplex uint32
const (
	DuplexFull    Duplex = 0
	DuplexHalf    Duplex = 1
	DuplexUnknown Duplex = 2
)

func DuplexFromString added in v0.4.1

func DuplexFromString(s string) Duplex

func (Duplex) String added in v0.4.1

func (i Duplex) String() string

type EUInformation

type EUInformation struct {
	NamespaceURI string
	UnitID       int32
	DisplayName  *LocalizedText
	Description  *LocalizedText
}

type ElementOperand

type ElementOperand struct {
	Index uint32
}

type EndpointConfiguration

type EndpointConfiguration struct {
	OperationTimeout      int32
	UseBinaryEncoding     bool
	MaxStringLength       int32
	MaxByteStringLength   int32
	MaxArrayLength        int32
	MaxMessageSize        int32
	MaxBufferSize         int32
	ChannelLifetime       int32
	SecurityTokenLifetime int32
}

type EndpointDescription

type EndpointDescription struct {
	EndpointURL         string
	Server              *ApplicationDescription
	ServerCertificate   []byte
	SecurityMode        MessageSecurityMode
	SecurityPolicyURI   string
	UserIdentityTokens  []*UserTokenPolicy
	TransportProfileURI string
	SecurityLevel       uint8
}

type EndpointType

type EndpointType struct {
	EndpointURL         string
	SecurityMode        MessageSecurityMode
	SecurityPolicyURI   string
	TransportProfileURI string
}

type EndpointURLListDataType

type EndpointURLListDataType struct {
	EndpointURLList []string
}

type EnumDefinition

type EnumDefinition struct {
	Fields []*EnumField
}

type EnumDescription

type EnumDescription struct {
	DataTypeID     *NodeID
	Name           *QualifiedName
	EnumDefinition *EnumDefinition
	BuiltInType    uint8
}

type EnumField

type EnumField struct {
	Value       int64
	DisplayName *LocalizedText
	Description *LocalizedText
	Name        string
}

type EnumValueType

type EnumValueType struct {
	Value       int64
	DisplayName *LocalizedText
	Description *LocalizedText
}

type EphemeralKeyType

type EphemeralKeyType struct {
	PublicKey []byte
	Signature []byte
}

type EventFieldList

type EventFieldList struct {
	ClientHandle uint32
	EventFields  []*Variant
}

type EventFilter

type EventFilter struct {
	SelectClauses []*SimpleAttributeOperand
	WhereClause   *ContentFilter
}

type EventFilterResult

type EventFilterResult struct {
	SelectClauseResults         []StatusCode
	SelectClauseDiagnosticInfos []*DiagnosticInfo
	WhereClauseResult           *ContentFilterResult
}

type EventNotificationList

type EventNotificationList struct {
	Events []*EventFieldList
}

type EventNotifierType

type EventNotifierType uint8
const (
	EventNotifierTypeNone              EventNotifierType = 0
	EventNotifierTypeSubscribeToEvents EventNotifierType = 1
	EventNotifierTypeHistoryRead       EventNotifierType = 4
	EventNotifierTypeHistoryWrite      EventNotifierType = 8
)

func EventNotifierTypeFromString

func EventNotifierTypeFromString(s string) EventNotifierType

func (EventNotifierType) String

func (i EventNotifierType) String() string

type ExceptionDeviationFormat

type ExceptionDeviationFormat uint32
const (
	ExceptionDeviationFormatAbsoluteValue    ExceptionDeviationFormat = 0
	ExceptionDeviationFormatPercentOfValue   ExceptionDeviationFormat = 1
	ExceptionDeviationFormatPercentOfRange   ExceptionDeviationFormat = 2
	ExceptionDeviationFormatPercentOfEURange ExceptionDeviationFormat = 3
	ExceptionDeviationFormatUnknown          ExceptionDeviationFormat = 4
)

func ExceptionDeviationFormatFromString

func ExceptionDeviationFormatFromString(s string) ExceptionDeviationFormat

func (ExceptionDeviationFormat) String

func (i ExceptionDeviationFormat) String() string

type ExpandedNodeID

type ExpandedNodeID struct {
	NodeID       *NodeID
	NamespaceURI string
	ServerIndex  uint32
}

ExpandedNodeID extends the NodeID structure by allowing the NamespaceURI to be explicitly specified instead of using the NamespaceIndex. The NamespaceURI is optional. If it is specified, then the NamespaceIndex inside the NodeID shall be ignored.

Specification: Part 6, 5.2.2.10

func DecodeService

func DecodeService(b []byte) (*ExpandedNodeID, interface{}, error)

func ExtensionObjectTypeID

func ExtensionObjectTypeID(v interface{}) *ExpandedNodeID

func NewByteStringExpandedNodeID added in v0.2.4

func NewByteStringExpandedNodeID(ns uint16, id []byte) *ExpandedNodeID

NewByteStringExpandedNodeID creates a byte string expanded node id.

func NewExpandedNodeID

func NewExpandedNodeID(nodeID *NodeID, uri string, idx uint32) *ExpandedNodeID

NewExpandedNodeID creates a new ExpandedNodeID.

func NewFourByteExpandedNodeID

func NewFourByteExpandedNodeID(ns uint8, id uint16) *ExpandedNodeID

NewFourByteExpandedNodeID creates a four byte numeric expanded node id.

func NewGUIDExpandedNodeID added in v0.2.4

func NewGUIDExpandedNodeID(ns uint16, id string) *ExpandedNodeID

NewGUIDExpandedNodeID creates a GUID expanded node id.

func NewNumericExpandedNodeID added in v0.2.4

func NewNumericExpandedNodeID(ns uint16, id uint32) *ExpandedNodeID

NewNumericExpandedNodeID creates a numeric expanded node id.

func NewStringExpandedNodeID added in v0.2.4

func NewStringExpandedNodeID(ns uint16, id string) *ExpandedNodeID

NewStringExpandedNodeID creates a string expanded node id.

func NewTwoByteExpandedNodeID

func NewTwoByteExpandedNodeID(id uint8) *ExpandedNodeID

NewTwoByteExpandedNodeID creates a two byte numeric expanded node id.

func ParseExpandedNodeID added in v0.2.4

func ParseExpandedNodeID(s string, ns []string) (*ExpandedNodeID, error)

ParseExpandedNodeID returns a node id from a string definition of the format '{ns,nsu}=<namespace>;{s,i,b,g}=<identifier>'.

The 's=' prefix can be omitted for string node ids in namespace 0.

For numeric ids the smallest possible type which can store the namespace and id value is returned.

Namespace URIs are resolved to ids from the provided list of namespaces.

func (*ExpandedNodeID) Decode

func (e *ExpandedNodeID) Decode(b []byte) (int, error)

func (*ExpandedNodeID) Encode

func (e *ExpandedNodeID) Encode() ([]byte, error)

func (*ExpandedNodeID) HasNamespaceURI

func (e *ExpandedNodeID) HasNamespaceURI() bool

HasNamespaceURI checks if an ExpandedNodeID has NamespaceURI Flag.

func (*ExpandedNodeID) HasServerIndex

func (e *ExpandedNodeID) HasServerIndex() bool

HasServerIndex checks if an ExpandedNodeID has ServerIndex Flag.

func (ExpandedNodeID) String added in v0.1.6

func (a ExpandedNodeID) String() string

type ExtensionObject

type ExtensionObject struct {
	EncodingMask uint8
	TypeID       *ExpandedNodeID
	Value        interface{}
}

ExtensionObject is encoded as sequence of bytes prefixed by the NodeId of its DataTypeEncoding and the number of bytes encoded.

Specification: Part 6, 5.2.2.15

func NewExtensionObject

func NewExtensionObject(value interface{}) *ExtensionObject

func (*ExtensionObject) Decode

func (e *ExtensionObject) Decode(b []byte) (int, error)

func (*ExtensionObject) Encode

func (e *ExtensionObject) Encode() ([]byte, error)

func (*ExtensionObject) UpdateMask

func (e *ExtensionObject) UpdateMask()

type FieldMetaData

type FieldMetaData struct {
	Name            string
	Description     *LocalizedText
	FieldFlags      DataSetFieldFlags
	BuiltInType     uint8
	DataType        *NodeID
	ValueRank       int32
	ArrayDimensions []uint32
	MaxStringLength uint32
	DataSetFieldID  *GUID
	Properties      []*KeyValuePair
}

type FieldTargetDataType

type FieldTargetDataType struct {
	DataSetFieldID        *GUID
	ReceiverIndexRange    string
	TargetNodeID          *NodeID
	AttributeID           AttributeID
	WriteIndexRange       string
	OverrideValueHandling OverrideValueHandling
	OverrideValue         *Variant
}

type FilterOperand added in v0.1.12

type FilterOperand struct{}

type FilterOperator

type FilterOperator uint32
const (
	FilterOperatorEquals             FilterOperator = 0
	FilterOperatorIsNull             FilterOperator = 1
	FilterOperatorGreaterThan        FilterOperator = 2
	FilterOperatorLessThan           FilterOperator = 3
	FilterOperatorGreaterThanOrEqual FilterOperator = 4
	FilterOperatorLessThanOrEqual    FilterOperator = 5
	FilterOperatorLike               FilterOperator = 6
	FilterOperatorNot                FilterOperator = 7
	FilterOperatorBetween            FilterOperator = 8
	FilterOperatorInList             FilterOperator = 9
	FilterOperatorAnd                FilterOperator = 10
	FilterOperatorOr                 FilterOperator = 11
	FilterOperatorCast               FilterOperator = 12
	FilterOperatorInView             FilterOperator = 13
	FilterOperatorOfType             FilterOperator = 14
	FilterOperatorRelatedTo          FilterOperator = 15
	FilterOperatorBitwiseAnd         FilterOperator = 16
	FilterOperatorBitwiseOr          FilterOperator = 17
)

func FilterOperatorFromString

func FilterOperatorFromString(s string) FilterOperator

func (FilterOperator) String

func (i FilterOperator) String() string

type FindServersOnNetworkRequest

type FindServersOnNetworkRequest struct {
	RequestHeader          *RequestHeader
	StartingRecordID       uint32
	MaxRecordsToReturn     uint32
	ServerCapabilityFilter []string
}

func (*FindServersOnNetworkRequest) Header added in v0.1.6

func (*FindServersOnNetworkRequest) SetHeader added in v0.1.6

func (t *FindServersOnNetworkRequest) SetHeader(h *RequestHeader)

type FindServersOnNetworkResponse

type FindServersOnNetworkResponse struct {
	ResponseHeader       *ResponseHeader
	LastCounterResetTime time.Time
	Servers              []*ServerOnNetwork
}

func (*FindServersOnNetworkResponse) Header added in v0.1.6

func (*FindServersOnNetworkResponse) SetHeader added in v0.1.6

type FindServersRequest

type FindServersRequest struct {
	RequestHeader *RequestHeader
	EndpointURL   string
	LocaleIDs     []string
	ServerURIs    []string
}

func (*FindServersRequest) Header added in v0.1.6

func (t *FindServersRequest) Header() *RequestHeader

func (*FindServersRequest) SetHeader added in v0.1.6

func (t *FindServersRequest) SetHeader(h *RequestHeader)

type FindServersResponse

type FindServersResponse struct {
	ResponseHeader *ResponseHeader
	Servers        []*ApplicationDescription
}

func (*FindServersResponse) Header added in v0.1.6

func (t *FindServersResponse) Header() *ResponseHeader

func (*FindServersResponse) SetHeader added in v0.1.6

func (t *FindServersResponse) SetHeader(h *ResponseHeader)

type Frame added in v0.4.1

type Frame struct{}

type GUID

type GUID struct {
	Data1 uint32
	Data2 uint16
	Data3 uint16
	Data4 []byte
}

GUID represents GUID in binary stream. It is a 16-byte globally unique identifier.

Specification: Part 6, 5.1.3

func NewGUID

func NewGUID(guid string) *GUID

NewGUID creates a new GUID. Input should be GUID string of 16 hexadecimal characters like 1111AAAA-22BB-33CC-44DD-55EE77FF9900. Dash can be omitted, and alphabets are not case-sensitive.

func (*GUID) Decode

func (g *GUID) Decode(b []byte) (int, error)

func (*GUID) Encode

func (g *GUID) Encode() ([]byte, error)

func (*GUID) String

func (g *GUID) String() string

String returns GUID in human-readable string.

type GenericAttributeValue

type GenericAttributeValue struct {
	AttributeID AttributeID
	Value       *Variant
}

type GenericAttributes

type GenericAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
	AttributeValues     []*GenericAttributeValue
}

type GetEndpointsRequest

type GetEndpointsRequest struct {
	RequestHeader *RequestHeader
	EndpointURL   string
	LocaleIDs     []string
	ProfileURIs   []string
}

func (*GetEndpointsRequest) Header added in v0.1.6

func (t *GetEndpointsRequest) Header() *RequestHeader

func (*GetEndpointsRequest) SetHeader added in v0.1.6

func (t *GetEndpointsRequest) SetHeader(h *RequestHeader)

type GetEndpointsResponse

type GetEndpointsResponse struct {
	ResponseHeader *ResponseHeader
	Endpoints      []*EndpointDescription
}

func (*GetEndpointsResponse) Header added in v0.1.6

func (t *GetEndpointsResponse) Header() *ResponseHeader

func (*GetEndpointsResponse) SetHeader added in v0.1.6

func (t *GetEndpointsResponse) SetHeader(h *ResponseHeader)

type HistoryData

type HistoryData struct {
	DataValues []*DataValue
}

type HistoryEvent

type HistoryEvent struct {
	Events []*HistoryEventFieldList
}

type HistoryEventFieldList

type HistoryEventFieldList struct {
	EventFields []*Variant
}

type HistoryModifiedData

type HistoryModifiedData struct {
	DataValues        []*DataValue
	ModificationInfos []*ModificationInfo
}

type HistoryReadDetails added in v0.1.12

type HistoryReadDetails struct{}

type HistoryReadRequest

type HistoryReadRequest struct {
	RequestHeader             *RequestHeader
	HistoryReadDetails        *ExtensionObject
	TimestampsToReturn        TimestampsToReturn
	ReleaseContinuationPoints bool
	NodesToRead               []*HistoryReadValueID
}

func (*HistoryReadRequest) Header added in v0.1.6

func (t *HistoryReadRequest) Header() *RequestHeader

func (*HistoryReadRequest) SetHeader added in v0.1.6

func (t *HistoryReadRequest) SetHeader(h *RequestHeader)

type HistoryReadResponse

type HistoryReadResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*HistoryReadResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*HistoryReadResponse) Header added in v0.1.6

func (t *HistoryReadResponse) Header() *ResponseHeader

func (*HistoryReadResponse) SetHeader added in v0.1.6

func (t *HistoryReadResponse) SetHeader(h *ResponseHeader)

type HistoryReadResult

type HistoryReadResult struct {
	StatusCode        StatusCode
	ContinuationPoint []byte
	HistoryData       *ExtensionObject
}

type HistoryReadValueID

type HistoryReadValueID struct {
	NodeID            *NodeID
	IndexRange        string
	DataEncoding      *QualifiedName
	ContinuationPoint []byte
}

type HistoryUpdateDetails

type HistoryUpdateDetails struct {
	NodeID *NodeID
}

type HistoryUpdateRequest

type HistoryUpdateRequest struct {
	RequestHeader        *RequestHeader
	HistoryUpdateDetails []*ExtensionObject
}

func (*HistoryUpdateRequest) Header added in v0.1.6

func (t *HistoryUpdateRequest) Header() *RequestHeader

func (*HistoryUpdateRequest) SetHeader added in v0.1.6

func (t *HistoryUpdateRequest) SetHeader(h *RequestHeader)

type HistoryUpdateResponse

type HistoryUpdateResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*HistoryUpdateResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*HistoryUpdateResponse) Header added in v0.1.6

func (*HistoryUpdateResponse) SetHeader added in v0.1.6

func (t *HistoryUpdateResponse) SetHeader(h *ResponseHeader)

type HistoryUpdateResult

type HistoryUpdateResult struct {
	StatusCode       StatusCode
	OperationResults []StatusCode
	DiagnosticInfos  []*DiagnosticInfo
}

type HistoryUpdateType

type HistoryUpdateType uint32
const (
	HistoryUpdateTypeInsert  HistoryUpdateType = 1
	HistoryUpdateTypeReplace HistoryUpdateType = 2
	HistoryUpdateTypeUpdate  HistoryUpdateType = 3
	HistoryUpdateTypeDelete  HistoryUpdateType = 4
)

func HistoryUpdateTypeFromString

func HistoryUpdateTypeFromString(s string) HistoryUpdateType

func (HistoryUpdateType) String

func (i HistoryUpdateType) String() string

type IDType

type IDType uint32
const (
	IDTypeNumeric IDType = 0
	IDTypeString  IDType = 1
	IDTypeGUID    IDType = 2
	IDTypeOpaque  IDType = 3
)

func IDTypeFromString

func IDTypeFromString(s string) IDType

func (IDType) String

func (i IDType) String() string

type IdentityCriteriaType

type IdentityCriteriaType uint32
const (
	IdentityCriteriaTypeUserName          IdentityCriteriaType = 1
	IdentityCriteriaTypeThumbprint        IdentityCriteriaType = 2
	IdentityCriteriaTypeRole              IdentityCriteriaType = 3
	IdentityCriteriaTypeGroupID           IdentityCriteriaType = 4
	IdentityCriteriaTypeAnonymous         IdentityCriteriaType = 5
	IdentityCriteriaTypeAuthenticatedUser IdentityCriteriaType = 6
	IdentityCriteriaTypeApplication       IdentityCriteriaType = 7
	IdentityCriteriaTypeX509Subject       IdentityCriteriaType = 8
)

func IdentityCriteriaTypeFromString

func IdentityCriteriaTypeFromString(s string) IdentityCriteriaType

func (IdentityCriteriaType) String

func (i IdentityCriteriaType) String() string

type IdentityMappingRuleType

type IdentityMappingRuleType struct {
	CriteriaType IdentityCriteriaType
	Criteria     string
}

type InterfaceAdminStatus added in v0.4.1

type InterfaceAdminStatus uint32
const (
	InterfaceAdminStatusUp      InterfaceAdminStatus = 0
	InterfaceAdminStatusDown    InterfaceAdminStatus = 1
	InterfaceAdminStatusTesting InterfaceAdminStatus = 2
)

func InterfaceAdminStatusFromString added in v0.4.1

func InterfaceAdminStatusFromString(s string) InterfaceAdminStatus

func (InterfaceAdminStatus) String added in v0.4.1

func (i InterfaceAdminStatus) String() string

type InterfaceOperStatus added in v0.4.1

type InterfaceOperStatus uint32
const (
	InterfaceOperStatusUp             InterfaceOperStatus = 0
	InterfaceOperStatusDown           InterfaceOperStatus = 1
	InterfaceOperStatusTesting        InterfaceOperStatus = 2
	InterfaceOperStatusUnknown        InterfaceOperStatus = 3
	InterfaceOperStatusDormant        InterfaceOperStatus = 4
	InterfaceOperStatusNotPresent     InterfaceOperStatus = 5
	InterfaceOperStatusLowerLayerDown InterfaceOperStatus = 6
)

func InterfaceOperStatusFromString added in v0.4.1

func InterfaceOperStatusFromString(s string) InterfaceOperStatus

func (InterfaceOperStatus) String added in v0.4.1

func (i InterfaceOperStatus) String() string

type IssuedIdentityToken

type IssuedIdentityToken struct {
	PolicyID            string
	TokenData           []byte
	EncryptionAlgorithm string
}

type JSONDataSetMessageContentMask

type JSONDataSetMessageContentMask uint32
const (
	JSONDataSetMessageContentMaskNone                    JSONDataSetMessageContentMask = 0
	JSONDataSetMessageContentMaskDataSetWriterID         JSONDataSetMessageContentMask = 1
	JSONDataSetMessageContentMaskMetaDataVersion         JSONDataSetMessageContentMask = 2
	JSONDataSetMessageContentMaskSequenceNumber          JSONDataSetMessageContentMask = 4
	JSONDataSetMessageContentMaskTimestamp               JSONDataSetMessageContentMask = 8
	JSONDataSetMessageContentMaskStatus                  JSONDataSetMessageContentMask = 16
	JSONDataSetMessageContentMaskMessageType             JSONDataSetMessageContentMask = 32
	JSONDataSetMessageContentMaskDataSetWriterName       JSONDataSetMessageContentMask = 64
	JSONDataSetMessageContentMaskReversibleFieldEncoding JSONDataSetMessageContentMask = 128
)

func JSONDataSetMessageContentMaskFromString

func JSONDataSetMessageContentMaskFromString(s string) JSONDataSetMessageContentMask

func (JSONDataSetMessageContentMask) String

type JSONDataSetReaderMessageDataType

type JSONDataSetReaderMessageDataType struct {
	NetworkMessageContentMask JSONNetworkMessageContentMask
	DataSetMessageContentMask JSONDataSetMessageContentMask
}

type JSONDataSetWriterMessageDataType

type JSONDataSetWriterMessageDataType struct {
	DataSetMessageContentMask JSONDataSetMessageContentMask
}

type JSONNetworkMessageContentMask

type JSONNetworkMessageContentMask uint32
const (
	JSONNetworkMessageContentMaskNone                 JSONNetworkMessageContentMask = 0
	JSONNetworkMessageContentMaskNetworkMessageHeader JSONNetworkMessageContentMask = 1
	JSONNetworkMessageContentMaskDataSetMessageHeader JSONNetworkMessageContentMask = 2
	JSONNetworkMessageContentMaskSingleDataSetMessage JSONNetworkMessageContentMask = 4
	JSONNetworkMessageContentMaskPublisherID          JSONNetworkMessageContentMask = 8
	JSONNetworkMessageContentMaskDataSetClassID       JSONNetworkMessageContentMask = 16
	JSONNetworkMessageContentMaskReplyTo              JSONNetworkMessageContentMask = 32
)

func JSONNetworkMessageContentMaskFromString

func JSONNetworkMessageContentMaskFromString(s string) JSONNetworkMessageContentMask

func (JSONNetworkMessageContentMask) String

type JSONWriterGroupMessageDataType

type JSONWriterGroupMessageDataType struct {
	NetworkMessageContentMask JSONNetworkMessageContentMask
}

type KeyValuePair

type KeyValuePair struct {
	Key   *QualifiedName
	Value *Variant
}

type LiteralOperand

type LiteralOperand struct {
	Value *Variant
}

type LocalizedText

type LocalizedText struct {
	EncodingMask uint8
	Locale       string
	Text         string
}

LocalizedText represents a LocalizedText. A LocalizedText structure contains two fields that could be missing. For that reason, the encoding uses a bit mask to indicate which fields are actually present in the encoded form.

Specification: Part 6, 5.2.2.14

func NewLocalizedText added in v0.1.12

func NewLocalizedText(text string) *LocalizedText

NewLocalizedText creates a new localized text without a locale.

func NewLocalizedTextWithLocale added in v0.1.12

func NewLocalizedTextWithLocale(text, locale string) *LocalizedText

NewLocalizedTextWithLocale creates a new localized text with a locale.

func (*LocalizedText) Decode

func (l *LocalizedText) Decode(b []byte) (int, error)

func (*LocalizedText) Encode

func (l *LocalizedText) Encode() ([]byte, error)

func (*LocalizedText) Has

func (l *LocalizedText) Has(mask byte) bool

func (*LocalizedText) UpdateMask

func (l *LocalizedText) UpdateMask()

type MdnsDiscoveryConfiguration

type MdnsDiscoveryConfiguration struct {
	MdnsServerName     string
	ServerCapabilities []string
}

type MessageSecurityMode

type MessageSecurityMode uint32
const (
	MessageSecurityModeInvalid        MessageSecurityMode = 0
	MessageSecurityModeNone           MessageSecurityMode = 1
	MessageSecurityModeSign           MessageSecurityMode = 2
	MessageSecurityModeSignAndEncrypt MessageSecurityMode = 3
)

func MessageSecurityModeFromString

func MessageSecurityModeFromString(s string) MessageSecurityMode

func (MessageSecurityMode) String

func (i MessageSecurityMode) String() string

type MethodAttributes

type MethodAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
	Executable          bool
	UserExecutable      bool
}

type ModelChangeStructureDataType

type ModelChangeStructureDataType struct {
	Affected     *NodeID
	AffectedType *NodeID
	Verb         uint8
}

type ModelChangeStructureVerbMask

type ModelChangeStructureVerbMask uint32
const (
	ModelChangeStructureVerbMaskNodeAdded        ModelChangeStructureVerbMask = 1
	ModelChangeStructureVerbMaskNodeDeleted      ModelChangeStructureVerbMask = 2
	ModelChangeStructureVerbMaskReferenceAdded   ModelChangeStructureVerbMask = 4
	ModelChangeStructureVerbMaskReferenceDeleted ModelChangeStructureVerbMask = 8
	ModelChangeStructureVerbMaskDataTypeChanged  ModelChangeStructureVerbMask = 16
)

func ModelChangeStructureVerbMaskFromString

func ModelChangeStructureVerbMaskFromString(s string) ModelChangeStructureVerbMask

func (ModelChangeStructureVerbMask) String

type ModificationInfo

type ModificationInfo struct {
	ModificationTime time.Time
	UpdateType       HistoryUpdateType
	UserName         string
}

type ModifyMonitoredItemsRequest

type ModifyMonitoredItemsRequest struct {
	RequestHeader      *RequestHeader
	SubscriptionID     uint32
	TimestampsToReturn TimestampsToReturn
	ItemsToModify      []*MonitoredItemModifyRequest
}

func (*ModifyMonitoredItemsRequest) Header added in v0.1.6

func (*ModifyMonitoredItemsRequest) SetHeader added in v0.1.6

func (t *ModifyMonitoredItemsRequest) SetHeader(h *RequestHeader)

type ModifyMonitoredItemsResponse

type ModifyMonitoredItemsResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*MonitoredItemModifyResult
	DiagnosticInfos []*DiagnosticInfo
}

func (*ModifyMonitoredItemsResponse) Header added in v0.1.6

func (*ModifyMonitoredItemsResponse) SetHeader added in v0.1.6

type ModifySubscriptionRequest

type ModifySubscriptionRequest struct {
	RequestHeader               *RequestHeader
	SubscriptionID              uint32
	RequestedPublishingInterval float64
	RequestedLifetimeCount      uint32
	RequestedMaxKeepAliveCount  uint32
	MaxNotificationsPerPublish  uint32
	Priority                    uint8
}

func (*ModifySubscriptionRequest) Header added in v0.1.6

func (*ModifySubscriptionRequest) SetHeader added in v0.1.6

func (t *ModifySubscriptionRequest) SetHeader(h *RequestHeader)

type ModifySubscriptionResponse

type ModifySubscriptionResponse struct {
	ResponseHeader            *ResponseHeader
	RevisedPublishingInterval float64
	RevisedLifetimeCount      uint32
	RevisedMaxKeepAliveCount  uint32
}

func (*ModifySubscriptionResponse) Header added in v0.1.6

func (*ModifySubscriptionResponse) SetHeader added in v0.1.6

func (t *ModifySubscriptionResponse) SetHeader(h *ResponseHeader)

type MonitoredItemCreateRequest

type MonitoredItemCreateRequest struct {
	ItemToMonitor       *ReadValueID
	MonitoringMode      MonitoringMode
	RequestedParameters *MonitoringParameters
}

type MonitoredItemCreateResult

type MonitoredItemCreateResult struct {
	StatusCode              StatusCode
	MonitoredItemID         uint32
	RevisedSamplingInterval float64
	RevisedQueueSize        uint32
	FilterResult            *ExtensionObject
}

type MonitoredItemModifyRequest

type MonitoredItemModifyRequest struct {
	MonitoredItemID     uint32
	RequestedParameters *MonitoringParameters
}

type MonitoredItemModifyResult

type MonitoredItemModifyResult struct {
	StatusCode              StatusCode
	RevisedSamplingInterval float64
	RevisedQueueSize        uint32
	FilterResult            *ExtensionObject
}

type MonitoredItemNotification

type MonitoredItemNotification struct {
	ClientHandle uint32
	Value        *DataValue
}

type MonitoringFilter added in v0.1.12

type MonitoringFilter struct{}

type MonitoringFilterResult added in v0.1.12

type MonitoringFilterResult struct{}

type MonitoringMode

type MonitoringMode uint32
const (
	MonitoringModeDisabled  MonitoringMode = 0
	MonitoringModeSampling  MonitoringMode = 1
	MonitoringModeReporting MonitoringMode = 2
)

func MonitoringModeFromString

func MonitoringModeFromString(s string) MonitoringMode

func (MonitoringMode) String

func (i MonitoringMode) String() string

type MonitoringParameters

type MonitoringParameters struct {
	ClientHandle     uint32
	SamplingInterval float64
	Filter           *ExtensionObject
	QueueSize        uint32
	DiscardOldest    bool
}

type NamingRuleType

type NamingRuleType uint32
const (
	NamingRuleTypeMandatory  NamingRuleType = 1
	NamingRuleTypeOptional   NamingRuleType = 2
	NamingRuleTypeConstraint NamingRuleType = 3
)

func NamingRuleTypeFromString

func NamingRuleTypeFromString(s string) NamingRuleType

func (NamingRuleType) String

func (i NamingRuleType) String() string

type NegotiationStatus added in v0.4.1

type NegotiationStatus uint32
const (
	NegotiationStatusInProgress    NegotiationStatus = 0
	NegotiationStatusComplete      NegotiationStatus = 1
	NegotiationStatusFailed        NegotiationStatus = 2
	NegotiationStatusUnknown       NegotiationStatus = 3
	NegotiationStatusNoNegotiation NegotiationStatus = 4
)

func NegotiationStatusFromString added in v0.4.1

func NegotiationStatusFromString(s string) NegotiationStatus

func (NegotiationStatus) String added in v0.4.1

func (i NegotiationStatus) String() string

type NetworkAddressDataType

type NetworkAddressDataType struct {
	NetworkInterface string
}

type NetworkAddressURLDataType

type NetworkAddressURLDataType struct {
	NetworkInterface string
	URL              string
}

type NetworkGroupDataType

type NetworkGroupDataType struct {
	ServerURI    string
	NetworkPaths []*EndpointURLListDataType
}

type NodeAttributes

type NodeAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
}

type NodeAttributesMask

type NodeAttributesMask uint32
const (
	NodeAttributesMaskNone                    NodeAttributesMask = 0
	NodeAttributesMaskAccessLevel             NodeAttributesMask = 1
	NodeAttributesMaskArrayDimensions         NodeAttributesMask = 2
	NodeAttributesMaskBrowseName              NodeAttributesMask = 4
	NodeAttributesMaskContainsNoLoops         NodeAttributesMask = 8
	NodeAttributesMaskDataType                NodeAttributesMask = 16
	NodeAttributesMaskDescription             NodeAttributesMask = 32
	NodeAttributesMaskDisplayName             NodeAttributesMask = 64
	NodeAttributesMaskEventNotifier           NodeAttributesMask = 128
	NodeAttributesMaskExecutable              NodeAttributesMask = 256
	NodeAttributesMaskHistorizing             NodeAttributesMask = 512
	NodeAttributesMaskInverseName             NodeAttributesMask = 1024
	NodeAttributesMaskIsAbstract              NodeAttributesMask = 2048
	NodeAttributesMaskMinimumSamplingInterval NodeAttributesMask = 4096
	NodeAttributesMaskNodeClass               NodeAttributesMask = 8192
	NodeAttributesMaskNodeID                  NodeAttributesMask = 16384
	NodeAttributesMaskSymmetric               NodeAttributesMask = 32768
	NodeAttributesMaskUserAccessLevel         NodeAttributesMask = 65536
	NodeAttributesMaskUserExecutable          NodeAttributesMask = 131072
	NodeAttributesMaskUserWriteMask           NodeAttributesMask = 262144
	NodeAttributesMaskValueRank               NodeAttributesMask = 524288
	NodeAttributesMaskWriteMask               NodeAttributesMask = 1048576
	NodeAttributesMaskValue                   NodeAttributesMask = 2097152
	NodeAttributesMaskDataTypeDefinition      NodeAttributesMask = 4194304
	NodeAttributesMaskRolePermissions         NodeAttributesMask = 8388608
	NodeAttributesMaskAccessRestrictions      NodeAttributesMask = 16777216
	NodeAttributesMaskAll                     NodeAttributesMask = 33554431
	NodeAttributesMaskBaseNode                NodeAttributesMask = 26501220
	NodeAttributesMaskObject                  NodeAttributesMask = 26501348
	NodeAttributesMaskObjectType              NodeAttributesMask = 26503268
	NodeAttributesMaskVariable                NodeAttributesMask = 26571383
	NodeAttributesMaskVariableType            NodeAttributesMask = 28600438
	NodeAttributesMaskMethod                  NodeAttributesMask = 26632548
	NodeAttributesMaskReferenceType           NodeAttributesMask = 26537060
	NodeAttributesMaskView                    NodeAttributesMask = 26501356
)

func NodeAttributesMaskFromString

func NodeAttributesMaskFromString(s string) NodeAttributesMask

func (NodeAttributesMask) String

func (i NodeAttributesMask) String() string

type NodeClass

type NodeClass uint32
const (
	NodeClassUnspecified   NodeClass = 0
	NodeClassObject        NodeClass = 1
	NodeClassVariable      NodeClass = 2
	NodeClassMethod        NodeClass = 4
	NodeClassObjectType    NodeClass = 8
	NodeClassVariableType  NodeClass = 16
	NodeClassReferenceType NodeClass = 32
	NodeClassDataType      NodeClass = 64
	NodeClassView          NodeClass = 128
)
const (
	NodeClassAll NodeClass = 0xff
)

func NodeClassFromString

func NodeClassFromString(s string) NodeClass

func (NodeClass) String

func (i NodeClass) String() string

type NodeID

type NodeID struct {
	// contains filtered or unexported fields
}

NodeID is an identifier for a node in the address space of an OPC UA Server. The NodeID object encodes all different node id types.

func MustParseNodeID added in v0.2.0

func MustParseNodeID(s string) *NodeID

MustParseNodeID returns a node id from a string definition if it is parseable by ParseNodeID. Otherwise, the function panics.

func NewByteStringNodeID

func NewByteStringNodeID(ns uint16, id []byte) *NodeID

NewByteStringNodeID returns a new byte string node id.

func NewFourByteNodeID

func NewFourByteNodeID(ns uint8, id uint16) *NodeID

NewFourByteNodeID returns a new four byte node id.

func NewGUIDNodeID

func NewGUIDNodeID(ns uint16, id string) *NodeID

NewGUIDNodeID returns a new GUID node id.

func NewNodeIDFromExpandedNodeID added in v0.5.2

func NewNodeIDFromExpandedNodeID(id *ExpandedNodeID) *NodeID

NewNodeIDFromExpandedNodeID returns a new NodeID derived from ExpandedNodeID

func NewNumericNodeID

func NewNumericNodeID(ns uint16, id uint32) *NodeID

NewNumericNodeID returns a new numeric node id.

func NewStringNodeID

func NewStringNodeID(ns uint16, id string) *NodeID

NewStringNodeID returns a new string node id.

func NewTwoByteNodeID

func NewTwoByteNodeID(id uint8) *NodeID

NewTwoByteNodeID returns a new two byte node id.

func ParseNodeID

func ParseNodeID(s string) (*NodeID, error)

ParseNodeID returns a node id from a string definition of the format 'ns=<namespace>;{s,i,b,g}=<identifier>'.

The 's=' prefix can be omitted for string node ids in namespace 0.

For numeric ids the smallest possible type which can store the namespace and id value is returned.

Namespace URIs are not supported since NodeID cannot store them. If you need to support namespace URIs use ParseExpandedNodeID.

func (*NodeID) Decode

func (n *NodeID) Decode(b []byte) (int, error)

func (*NodeID) Encode

func (n *NodeID) Encode() ([]byte, error)

func (*NodeID) EncodingMask

func (n *NodeID) EncodingMask() NodeIDType

EncodingMask returns the encoding mask field including the type information and additional flags.

func (*NodeID) IndexFlag

func (n *NodeID) IndexFlag() bool

IndexFlag returns whether the Index flag is set in EncodingMask.

func (*NodeID) IntID

func (n *NodeID) IntID() uint32

IntID returns the identifier value if the type is TwoByte, FourByte or Numeric. For all other types IntID returns 0.

func (*NodeID) MarshalJSON added in v0.2.0

func (n *NodeID) MarshalJSON() ([]byte, error)

func (*NodeID) Namespace

func (n *NodeID) Namespace() uint16

Namespace returns the namespace id. For two byte node ids this will always be zero.

func (*NodeID) SetIndexFlag

func (n *NodeID) SetIndexFlag()

SetIndexFlag sets NamespaceURI flag in EncodingMask.

func (*NodeID) SetIntID

func (n *NodeID) SetIntID(v uint32) error

SetIntID sets the identifier value for two byte, four byte and numeric node ids. It returns an error for other types.

func (*NodeID) SetNamespace

func (n *NodeID) SetNamespace(v uint16) error

SetNamespace sets the namespace id. It returns an error if the id is not within the range of the node id type.

func (*NodeID) SetStringID

func (n *NodeID) SetStringID(v string) error

SetStringID sets the identifier value for string, guid and opaque node ids. It returns an error for other types.

func (*NodeID) SetURIFlag

func (n *NodeID) SetURIFlag()

SetURIFlag sets NamespaceURI flag in EncodingMask.

func (*NodeID) String

func (n *NodeID) String() string

String returns the string representation of the NodeID in the format described by ParseNodeID.

func (*NodeID) StringID

func (n *NodeID) StringID() string

StringID returns the string value of the identifier for String and GUID NodeIDs, and the base64 encoded value for Opaque types. For all other types StringID returns an empty string.

func (*NodeID) Type

func (n *NodeID) Type() NodeIDType

Type returns the node id type in EncodingMask.

func (*NodeID) URIFlag

func (n *NodeID) URIFlag() bool

URIFlag returns whether the URI flag is set in EncodingMask.

func (*NodeID) UnmarshalJSON added in v0.2.0

func (n *NodeID) UnmarshalJSON(b []byte) error

type NodeIDType

type NodeIDType uint8
const (
	NodeIDTypeTwoByte    NodeIDType = 0
	NodeIDTypeFourByte   NodeIDType = 1
	NodeIDTypeNumeric    NodeIDType = 2
	NodeIDTypeString     NodeIDType = 3
	NodeIDTypeGUID       NodeIDType = 4
	NodeIDTypeByteString NodeIDType = 5
)

func NodeIDTypeFromString

func NodeIDTypeFromString(s string) NodeIDType

func (NodeIDType) String

func (i NodeIDType) String() string

type NodeReference

type NodeReference struct {
	NodeID            *NodeID
	ReferenceTypeID   *NodeID
	IsForward         bool
	ReferencedNodeIDs []*NodeID
}

type NodeTypeDescription

type NodeTypeDescription struct {
	TypeDefinitionNode *ExpandedNodeID
	IncludeSubTypes    bool
	DataToReturn       []*QueryDataDescription
}

type NotificationData added in v0.1.12

type NotificationData struct{}

type NotificationMessage

type NotificationMessage struct {
	SequenceNumber   uint32
	PublishTime      time.Time
	NotificationData []*ExtensionObject
}

type ObjectAttributes

type ObjectAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
	EventNotifier       uint8
}

type ObjectTypeAttributes

type ObjectTypeAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
	IsAbstract          bool
}

type OpenFileMode

type OpenFileMode uint32
const (
	OpenFileModeRead          OpenFileMode = 1
	OpenFileModeWrite         OpenFileMode = 2
	OpenFileModeEraseExisting OpenFileMode = 4
	OpenFileModeAppend        OpenFileMode = 8
)

func OpenFileModeFromString

func OpenFileModeFromString(s string) OpenFileMode

func (OpenFileMode) String

func (i OpenFileMode) String() string

type OpenSecureChannelRequest

type OpenSecureChannelRequest struct {
	RequestHeader         *RequestHeader
	ClientProtocolVersion uint32
	RequestType           SecurityTokenRequestType
	SecurityMode          MessageSecurityMode
	ClientNonce           []byte
	RequestedLifetime     uint32
}

func (*OpenSecureChannelRequest) Header added in v0.1.6

func (*OpenSecureChannelRequest) SetHeader added in v0.1.6

func (t *OpenSecureChannelRequest) SetHeader(h *RequestHeader)

type OpenSecureChannelResponse

type OpenSecureChannelResponse struct {
	ResponseHeader        *ResponseHeader
	ServerProtocolVersion uint32
	SecurityToken         *ChannelSecurityToken
	ServerNonce           []byte
}

func (*OpenSecureChannelResponse) Header added in v0.1.6

func (*OpenSecureChannelResponse) SetHeader added in v0.1.6

func (t *OpenSecureChannelResponse) SetHeader(h *ResponseHeader)

type OptionSet

type OptionSet struct {
	Value     []byte
	ValidBits []byte
}

type Orientation added in v0.4.1

type Orientation struct{}

type OverrideValueHandling

type OverrideValueHandling uint32
const (
	OverrideValueHandlingDisabled        OverrideValueHandling = 0
	OverrideValueHandlingLastUsableValue OverrideValueHandling = 1
	OverrideValueHandlingOverrideValue   OverrideValueHandling = 2
)

func OverrideValueHandlingFromString

func OverrideValueHandlingFromString(s string) OverrideValueHandling

func (OverrideValueHandling) String

func (i OverrideValueHandling) String() string

type ParsingResult

type ParsingResult struct {
	StatusCode          StatusCode
	DataStatusCodes     []StatusCode
	DataDiagnosticInfos []*DiagnosticInfo
}

type PasswordOptionsMask added in v0.4.1

type PasswordOptionsMask uint32
const (
	PasswordOptionsMaskNone                         PasswordOptionsMask = 0
	PasswordOptionsMaskSupportInitialPasswordChange PasswordOptionsMask = 1
	PasswordOptionsMaskSupportDisableUser           PasswordOptionsMask = 2
	PasswordOptionsMaskSupportDisableDeleteForUser  PasswordOptionsMask = 4
	PasswordOptionsMaskSupportNoChangeForUser       PasswordOptionsMask = 8
	PasswordOptionsMaskSupportDescriptionForUser    PasswordOptionsMask = 16
	PasswordOptionsMaskRequiresUpperCaseCharacters  PasswordOptionsMask = 32
	PasswordOptionsMaskRequiresLowerCaseCharacters  PasswordOptionsMask = 64
	PasswordOptionsMaskRequiresDigitCharacters      PasswordOptionsMask = 128
	PasswordOptionsMaskRequiresSpecialCharacters    PasswordOptionsMask = 256
)

func PasswordOptionsMaskFromString added in v0.4.1

func PasswordOptionsMaskFromString(s string) PasswordOptionsMask

func (PasswordOptionsMask) String added in v0.4.1

func (i PasswordOptionsMask) String() string

type PerformUpdateType

type PerformUpdateType uint32
const (
	PerformUpdateTypeInsert  PerformUpdateType = 1
	PerformUpdateTypeReplace PerformUpdateType = 2
	PerformUpdateTypeUpdate  PerformUpdateType = 3
	PerformUpdateTypeRemove  PerformUpdateType = 4
)

func PerformUpdateTypeFromString

func PerformUpdateTypeFromString(s string) PerformUpdateType

func (PerformUpdateType) String

func (i PerformUpdateType) String() string

type PermissionType

type PermissionType uint32
const (
	PermissionTypeNone                 PermissionType = 0
	PermissionTypeBrowse               PermissionType = 1
	PermissionTypeReadRolePermissions  PermissionType = 2
	PermissionTypeWriteAttribute       PermissionType = 4
	PermissionTypeWriteRolePermissions PermissionType = 8
	PermissionTypeWriteHistorizing     PermissionType = 16
	PermissionTypeRead                 PermissionType = 32
	PermissionTypeWrite                PermissionType = 64
	PermissionTypeReadHistory          PermissionType = 128
	PermissionTypeInsertHistory        PermissionType = 256
	PermissionTypeModifyHistory        PermissionType = 512
	PermissionTypeDeleteHistory        PermissionType = 1024
	PermissionTypeReceiveEvents        PermissionType = 2048
	PermissionTypeCall                 PermissionType = 4096
	PermissionTypeAddReference         PermissionType = 8192
	PermissionTypeRemoveReference      PermissionType = 16384
	PermissionTypeDeleteNode           PermissionType = 32768
	PermissionTypeAddNode              PermissionType = 65536
)

func PermissionTypeFromString

func PermissionTypeFromString(s string) PermissionType

func (PermissionType) String

func (i PermissionType) String() string

type PortableNodeID added in v0.4.1

type PortableNodeID struct {
	NamespaceURI string
	IDentifier   *NodeID
}

type PortableQualifiedName added in v0.4.1

type PortableQualifiedName struct {
	NamespaceURI string
	Name         string
}

type PriorityMappingEntryType added in v0.4.1

type PriorityMappingEntryType struct {
	MappingURI         string
	PriorityLabel      string
	PriorityValue_PCP  uint8
	PriorityValue_DSCP uint32
}

type ProgramDiagnostic2DataType

type ProgramDiagnostic2DataType struct {
	CreateSessionID           *NodeID
	CreateClientName          string
	InvocationCreationTime    time.Time
	LastTransitionTime        time.Time
	LastMethodCall            string
	LastMethodSessionID       *NodeID
	LastMethodInputArguments  []*Argument
	LastMethodOutputArguments []*Argument
	LastMethodInputValues     []*Variant
	LastMethodOutputValues    []*Variant
	LastMethodCallTime        time.Time
	LastMethodReturnStatus    StatusCode
}

type ProgramDiagnosticDataType

type ProgramDiagnosticDataType struct {
	CreateSessionID           *NodeID
	CreateClientName          string
	InvocationCreationTime    time.Time
	LastTransitionTime        time.Time
	LastMethodCall            string
	LastMethodSessionID       *NodeID
	LastMethodInputArguments  []*Argument
	LastMethodOutputArguments []*Argument
	LastMethodCallTime        time.Time
	LastMethodReturnStatus    *StatusResult
}

type PubSubConfiguration2DataType added in v0.4.1

type PubSubConfiguration2DataType struct {
	PublishedDataSets          []*PublishedDataSetDataType
	Connections                []*PubSubConnectionDataType
	Enabled                    bool
	SubscribedDataSets         []*StandaloneSubscribedDataSetDataType
	DataSetClasses             []*DataSetMetaDataType
	DefaultSecurityKeyServices []*EndpointDescription
	SecurityGroups             []*SecurityGroupDataType
	PubSubKeyPushTargets       []*PubSubKeyPushTargetDataType
	ConfigurationVersion       uint32
	ConfigurationProperties    []*KeyValuePair
}

type PubSubConfigurationDataType

type PubSubConfigurationDataType struct {
	PublishedDataSets []*PublishedDataSetDataType
	Connections       []*PubSubConnectionDataType
	Enabled           bool
}

type PubSubConfigurationRefDataType added in v0.4.1

type PubSubConfigurationRefDataType struct {
	ConfigurationMask PubSubConfigurationRefMask
	ElementIndex      uint16
	ConnectionIndex   uint16
	GroupIndex        uint16
}

type PubSubConfigurationRefMask added in v0.4.1

type PubSubConfigurationRefMask uint32
const (
	PubSubConfigurationRefMaskNone                   PubSubConfigurationRefMask = 0
	PubSubConfigurationRefMaskElementAdd             PubSubConfigurationRefMask = 1
	PubSubConfigurationRefMaskElementMatch           PubSubConfigurationRefMask = 2
	PubSubConfigurationRefMaskElementModify          PubSubConfigurationRefMask = 4
	PubSubConfigurationRefMaskElementRemove          PubSubConfigurationRefMask = 8
	PubSubConfigurationRefMaskReferenceWriter        PubSubConfigurationRefMask = 16
	PubSubConfigurationRefMaskReferenceReader        PubSubConfigurationRefMask = 32
	PubSubConfigurationRefMaskReferenceWriterGroup   PubSubConfigurationRefMask = 64
	PubSubConfigurationRefMaskReferenceReaderGroup   PubSubConfigurationRefMask = 128
	PubSubConfigurationRefMaskReferenceConnection    PubSubConfigurationRefMask = 256
	PubSubConfigurationRefMaskReferencePubDataset    PubSubConfigurationRefMask = 512
	PubSubConfigurationRefMaskReferenceSubDataset    PubSubConfigurationRefMask = 1024
	PubSubConfigurationRefMaskReferenceSecurityGroup PubSubConfigurationRefMask = 2048
	PubSubConfigurationRefMaskReferencePushTarget    PubSubConfigurationRefMask = 4096
)

func PubSubConfigurationRefMaskFromString added in v0.4.1

func PubSubConfigurationRefMaskFromString(s string) PubSubConfigurationRefMask

func (PubSubConfigurationRefMask) String added in v0.4.1

type PubSubConfigurationValueDataType added in v0.4.1

type PubSubConfigurationValueDataType struct {
	ConfigurationElement *PubSubConfigurationRefDataType
	Name                 string
	IDentifier           *Variant
}

type PubSubConnectionDataType

type PubSubConnectionDataType struct {
	Name                 string
	Enabled              bool
	PublisherID          *Variant
	TransportProfileURI  string
	Address              *ExtensionObject
	ConnectionProperties []*KeyValuePair
	TransportSettings    *ExtensionObject
	WriterGroups         []*WriterGroupDataType
	ReaderGroups         []*ReaderGroupDataType
}

type PubSubDiagnosticsCounterClassification

type PubSubDiagnosticsCounterClassification uint32
const (
	PubSubDiagnosticsCounterClassificationInformation PubSubDiagnosticsCounterClassification = 0
	PubSubDiagnosticsCounterClassificationError       PubSubDiagnosticsCounterClassification = 1
)

func PubSubDiagnosticsCounterClassificationFromString

func PubSubDiagnosticsCounterClassificationFromString(s string) PubSubDiagnosticsCounterClassification

func (PubSubDiagnosticsCounterClassification) String

type PubSubGroupDataType

type PubSubGroupDataType struct {
	Name                  string
	Enabled               bool
	SecurityMode          MessageSecurityMode
	SecurityGroupID       string
	SecurityKeyServices   []*EndpointDescription
	MaxNetworkMessageSize uint32
	GroupProperties       []*KeyValuePair
}

type PubSubKeyPushTargetDataType added in v0.4.1

type PubSubKeyPushTargetDataType struct {
	ApplicationURI       string
	PushTargetFolder     []string
	EndpointURL          string
	SecurityPolicyURI    string
	UserTokenType        *UserTokenPolicy
	RequestedKeyCount    uint16
	RetryInterval        float64
	PushTargetProperties []*KeyValuePair
	SecurityGroups       []string
}

type PubSubState

type PubSubState uint32
const (
	PubSubStateDisabled       PubSubState = 0
	PubSubStatePaused         PubSubState = 1
	PubSubStateOperational    PubSubState = 2
	PubSubStateError          PubSubState = 3
	PubSubStatePreOperational PubSubState = 4
)

func PubSubStateFromString

func PubSubStateFromString(s string) PubSubState

func (PubSubState) String

func (i PubSubState) String() string

type PublishRequest

type PublishRequest struct {
	RequestHeader                *RequestHeader
	SubscriptionAcknowledgements []*SubscriptionAcknowledgement
}

func (*PublishRequest) Header added in v0.1.6

func (t *PublishRequest) Header() *RequestHeader

func (*PublishRequest) SetHeader added in v0.1.6

func (t *PublishRequest) SetHeader(h *RequestHeader)

type PublishResponse

type PublishResponse struct {
	ResponseHeader           *ResponseHeader
	SubscriptionID           uint32
	AvailableSequenceNumbers []uint32
	MoreNotifications        bool
	NotificationMessage      *NotificationMessage
	Results                  []StatusCode
	DiagnosticInfos          []*DiagnosticInfo
}

func (*PublishResponse) Header added in v0.1.6

func (t *PublishResponse) Header() *ResponseHeader

func (*PublishResponse) SetHeader added in v0.1.6

func (t *PublishResponse) SetHeader(h *ResponseHeader)

type PublishedDataItemsDataType

type PublishedDataItemsDataType struct {
	PublishedData []*PublishedVariableDataType
}

type PublishedDataSetCustomSourceDataType added in v0.4.1

type PublishedDataSetCustomSourceDataType struct {
	CyclicDataSet bool
}

type PublishedDataSetDataType

type PublishedDataSetDataType struct {
	Name            string
	DataSetFolder   []string
	DataSetMetaData *DataSetMetaDataType
	ExtensionFields []*KeyValuePair
	DataSetSource   *ExtensionObject
}

type PublishedDataSetSourceDataType added in v0.1.12

type PublishedDataSetSourceDataType struct{}

type PublishedEventsDataType

type PublishedEventsDataType struct {
	EventNotifier  *NodeID
	SelectedFields []*SimpleAttributeOperand
	Filter         *ContentFilter
}

type PublishedVariableDataType

type PublishedVariableDataType struct {
	PublishedVariable    *NodeID
	AttributeID          AttributeID
	SamplingIntervalHint float64
	DeadbandType         uint32
	DeadbandValue        float64
	IndexRange           string
	SubstituteValue      *Variant
	MetaDataProperties   []*QualifiedName
}

type QosDataType added in v0.4.1

type QosDataType struct{}

type QualifiedName

type QualifiedName struct {
	NamespaceIndex uint16
	Name           string
}

QualifiedName contains a qualified name. It is, for example, used as BrowseName. The name part of the QualifiedName is restricted to 512 characters.

Specification: Part 3, 8.3

type QueryDataDescription

type QueryDataDescription struct {
	RelativePath *RelativePath
	AttributeID  AttributeID
	IndexRange   string
}

type QueryDataSet

type QueryDataSet struct {
	NodeID             *ExpandedNodeID
	TypeDefinitionNode *ExpandedNodeID
	Values             []*Variant
}

type QueryFirstRequest

type QueryFirstRequest struct {
	RequestHeader         *RequestHeader
	View                  *ViewDescription
	NodeTypes             []*NodeTypeDescription
	Filter                *ContentFilter
	MaxDataSetsToReturn   uint32
	MaxReferencesToReturn uint32
}

func (*QueryFirstRequest) Header added in v0.1.6

func (t *QueryFirstRequest) Header() *RequestHeader

func (*QueryFirstRequest) SetHeader added in v0.1.6

func (t *QueryFirstRequest) SetHeader(h *RequestHeader)

type QueryFirstResponse

type QueryFirstResponse struct {
	ResponseHeader    *ResponseHeader
	QueryDataSets     []*QueryDataSet
	ContinuationPoint []byte
	ParsingResults    []*ParsingResult
	DiagnosticInfos   []*DiagnosticInfo
	FilterResult      *ContentFilterResult
}

func (*QueryFirstResponse) Header added in v0.1.6

func (t *QueryFirstResponse) Header() *ResponseHeader

func (*QueryFirstResponse) SetHeader added in v0.1.6

func (t *QueryFirstResponse) SetHeader(h *ResponseHeader)

type QueryNextRequest

type QueryNextRequest struct {
	RequestHeader            *RequestHeader
	ReleaseContinuationPoint bool
	ContinuationPoint        []byte
}

func (*QueryNextRequest) Header added in v0.1.6

func (t *QueryNextRequest) Header() *RequestHeader

func (*QueryNextRequest) SetHeader added in v0.1.6

func (t *QueryNextRequest) SetHeader(h *RequestHeader)

type QueryNextResponse

type QueryNextResponse struct {
	ResponseHeader           *ResponseHeader
	QueryDataSets            []*QueryDataSet
	RevisedContinuationPoint []byte
}

func (*QueryNextResponse) Header added in v0.1.6

func (t *QueryNextResponse) Header() *ResponseHeader

func (*QueryNextResponse) SetHeader added in v0.1.6

func (t *QueryNextResponse) SetHeader(h *ResponseHeader)

type Range

type Range struct {
	Low  float64
	High float64
}

type RationalNumber added in v0.4.1

type RationalNumber struct {
	Numerator   int32
	Denominator uint32
}

type ReadAnnotationDataDetails added in v0.4.1

type ReadAnnotationDataDetails struct {
	ReqTimes []time.Time
}

type ReadAtTimeDetails

type ReadAtTimeDetails struct {
	ReqTimes        []time.Time
	UseSimpleBounds bool
}

type ReadEventDetails

type ReadEventDetails struct {
	NumValuesPerNode uint32
	StartTime        time.Time
	EndTime          time.Time
	Filter           *EventFilter
}

type ReadProcessedDetails

type ReadProcessedDetails struct {
	StartTime              time.Time
	EndTime                time.Time
	ProcessingInterval     float64
	AggregateType          []*NodeID
	AggregateConfiguration *AggregateConfiguration
}

type ReadRawModifiedDetails

type ReadRawModifiedDetails struct {
	IsReadModified   bool
	StartTime        time.Time
	EndTime          time.Time
	NumValuesPerNode uint32
	ReturnBounds     bool
}

type ReadRequest

type ReadRequest struct {
	RequestHeader      *RequestHeader
	MaxAge             float64
	TimestampsToReturn TimestampsToReturn
	NodesToRead        []*ReadValueID
}

func (*ReadRequest) Header added in v0.1.6

func (t *ReadRequest) Header() *RequestHeader

func (*ReadRequest) SetHeader added in v0.1.6

func (t *ReadRequest) SetHeader(h *RequestHeader)

type ReadResponse

type ReadResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []*DataValue
	DiagnosticInfos []*DiagnosticInfo
}

func (*ReadResponse) Header added in v0.1.6

func (t *ReadResponse) Header() *ResponseHeader

func (*ReadResponse) SetHeader added in v0.1.6

func (t *ReadResponse) SetHeader(h *ResponseHeader)

type ReadValueID

type ReadValueID struct {
	NodeID       *NodeID
	AttributeID  AttributeID
	IndexRange   string
	DataEncoding *QualifiedName
}

type ReaderGroupDataType

type ReaderGroupDataType struct {
	Name                  string
	Enabled               bool
	SecurityMode          MessageSecurityMode
	SecurityGroupID       string
	SecurityKeyServices   []*EndpointDescription
	MaxNetworkMessageSize uint32
	GroupProperties       []*KeyValuePair
	TransportSettings     *ExtensionObject
	MessageSettings       *ExtensionObject
	DataSetReaders        []*DataSetReaderDataType
}

type ReaderGroupMessageDataType added in v0.1.12

type ReaderGroupMessageDataType struct{}

type ReaderGroupTransportDataType added in v0.1.12

type ReaderGroupTransportDataType struct{}

type ReceiveQosDataType added in v0.4.1

type ReceiveQosDataType struct{}

type ReceiveQosPriorityDataType added in v0.4.1

type ReceiveQosPriorityDataType struct {
	PriorityLabel string
}

type RedundancySupport

type RedundancySupport uint32
const (
	RedundancySupportNone           RedundancySupport = 0
	RedundancySupportCold           RedundancySupport = 1
	RedundancySupportWarm           RedundancySupport = 2
	RedundancySupportHot            RedundancySupport = 3
	RedundancySupportTransparent    RedundancySupport = 4
	RedundancySupportHotAndMirrored RedundancySupport = 5
)

func RedundancySupportFromString

func RedundancySupportFromString(s string) RedundancySupport

func (RedundancySupport) String

func (i RedundancySupport) String() string

type RedundantServerDataType

type RedundantServerDataType struct {
	ServerID     string
	ServiceLevel uint8
	ServerState  ServerState
}

type ReferenceDescription

type ReferenceDescription struct {
	ReferenceTypeID *NodeID
	IsForward       bool
	NodeID          *ExpandedNodeID
	BrowseName      *QualifiedName
	DisplayName     *LocalizedText
	NodeClass       NodeClass
	TypeDefinition  *ExpandedNodeID
}

type ReferenceDescriptionDataType added in v0.4.1

type ReferenceDescriptionDataType struct {
	SourceNode    *NodeID
	ReferenceType *NodeID
	IsForward     bool
	TargetNode    *ExpandedNodeID
}

type ReferenceListEntryDataType added in v0.4.1

type ReferenceListEntryDataType struct {
	ReferenceType *NodeID
	IsForward     bool
	TargetNode    *ExpandedNodeID
}

type ReferenceTypeAttributes

type ReferenceTypeAttributes struct {
	SpecifiedAttributes uint32
	DisplayName         *LocalizedText
	Description         *LocalizedText
	WriteMask           uint32
	UserWriteMask       uint32
	IsAbstract          bool
	Symmetric           bool
	InverseName         *LocalizedText
}

type RegisterNodesRequest

type RegisterNodesRequest struct {
	RequestHeader   *RequestHeader
	NodesToRegister []*NodeID
}

func (*RegisterNodesRequest) Header added in v0.1.6

func (t *RegisterNodesRequest) Header() *RequestHeader

func (*RegisterNodesRequest) SetHeader added in v0.1.6

func (t *RegisterNodesRequest) SetHeader(h *RequestHeader)

type RegisterNodesResponse

type RegisterNodesResponse struct {
	ResponseHeader    *ResponseHeader
	RegisteredNodeIDs []*NodeID
}

func (*RegisterNodesResponse) Header added in v0.1.6

func (*RegisterNodesResponse) SetHeader added in v0.1.6

func (t *RegisterNodesResponse) SetHeader(h *ResponseHeader)

type RegisterServer2Request

type RegisterServer2Request struct {
	RequestHeader          *RequestHeader
	Server                 *RegisteredServer
	DiscoveryConfiguration []*ExtensionObject
}

func (*RegisterServer2Request) Header added in v0.1.6

func (*RegisterServer2Request) SetHeader added in v0.1.6

func (t *RegisterServer2Request) SetHeader(h *RequestHeader)

type RegisterServer2Response

type RegisterServer2Response struct {
	ResponseHeader       *ResponseHeader
	ConfigurationResults []StatusCode
	DiagnosticInfos      []*DiagnosticInfo
}

func (*RegisterServer2Response) Header added in v0.1.6

func (*RegisterServer2Response) SetHeader added in v0.1.6

func (t *RegisterServer2Response) SetHeader(h *ResponseHeader)

type RegisterServerRequest

type RegisterServerRequest struct {
	RequestHeader *RequestHeader
	Server        *RegisteredServer
}

func (*RegisterServerRequest) Header added in v0.1.6

func (t *RegisterServerRequest) Header() *RequestHeader

func (*RegisterServerRequest) SetHeader added in v0.1.6

func (t *RegisterServerRequest) SetHeader(h *RequestHeader)

type RegisterServerResponse

type RegisterServerResponse struct {
	ResponseHeader *ResponseHeader
}

func (*RegisterServerResponse) Header added in v0.1.6

func (*RegisterServerResponse) SetHeader added in v0.1.6

func (t *RegisterServerResponse) SetHeader(h *ResponseHeader)

type RegisteredServer

type RegisteredServer struct {
	ServerURI         string
	ProductURI        string
	ServerNames       []*LocalizedText
	ServerType        ApplicationType
	GatewayServerURI  string
	DiscoveryURLs     []string
	SemaphoreFilePath string
	IsOnline          bool
}

type RelativePath

type RelativePath struct {
	Elements []*RelativePathElement
}

type RelativePathElement

type RelativePathElement struct {
	ReferenceTypeID *NodeID
	IsInverse       bool
	IncludeSubtypes bool
	TargetName      *QualifiedName
}

type RepublishRequest

type RepublishRequest struct {
	RequestHeader            *RequestHeader
	SubscriptionID           uint32
	RetransmitSequenceNumber uint32
}

func (*RepublishRequest) Header added in v0.1.6

func (t *RepublishRequest) Header() *RequestHeader

func (*RepublishRequest) SetHeader added in v0.1.6

func (t *RepublishRequest) SetHeader(h *RequestHeader)

type RepublishResponse

type RepublishResponse struct {
	ResponseHeader      *ResponseHeader
	NotificationMessage *NotificationMessage
}

func (*RepublishResponse) Header added in v0.1.6

func (t *RepublishResponse) Header() *ResponseHeader

func (*RepublishResponse) SetHeader added in v0.1.6

func (t *RepublishResponse) SetHeader(h *ResponseHeader)

type Request added in v0.1.6

type Request interface {
	Header() *RequestHeader
	SetHeader(*RequestHeader)
}

type RequestHeader

type RequestHeader struct {
	AuthenticationToken *NodeID
	Timestamp           time.Time
	RequestHandle       uint32
	ReturnDiagnostics   uint32
	AuditEntryID        string
	TimeoutHint         uint32
	AdditionalHeader    *ExtensionObject
}

func (*RequestHeader) HasReturnDiagnostics

func (r *RequestHeader) HasReturnDiagnostics(mask uint32) bool

type Response added in v0.1.6

type Response interface {
	Header() *ResponseHeader
	SetHeader(*ResponseHeader)
}

type ResponseHeader

type ResponseHeader struct {
	Timestamp          time.Time
	RequestHandle      uint32
	ServiceResult      StatusCode
	ServiceDiagnostics *DiagnosticInfo
	StringTable        []string
	AdditionalHeader   *ExtensionObject
}

type RolePermissionType

type RolePermissionType struct {
	RoleID      *NodeID
	Permissions PermissionType
}

type SamplingIntervalDiagnosticsDataType

type SamplingIntervalDiagnosticsDataType struct {
	SamplingInterval           float64
	MonitoredItemCount         uint32
	MaxMonitoredItemCount      uint32
	DisabledMonitoredItemCount uint32
}

type SecurityGroupDataType added in v0.4.1

type SecurityGroupDataType struct {
	Name                string
	SecurityGroupFolder []string
	KeyLifetime         float64
	SecurityPolicyURI   string
	MaxFutureKeyCount   uint32
	MaxPastKeyCount     uint32
	SecurityGroupID     string
	RolePermissions     []*RolePermissionType
	GroupProperties     []*KeyValuePair
}

type SecurityTokenRequestType

type SecurityTokenRequestType uint32
const (
	SecurityTokenRequestTypeIssue SecurityTokenRequestType = 0
	SecurityTokenRequestTypeRenew SecurityTokenRequestType = 1
)

func SecurityTokenRequestTypeFromString

func SecurityTokenRequestTypeFromString(s string) SecurityTokenRequestType

func (SecurityTokenRequestType) String

func (i SecurityTokenRequestType) String() string

type SemanticChangeStructureDataType

type SemanticChangeStructureDataType struct {
	Affected     *NodeID
	AffectedType *NodeID
}

type ServerDiagnosticsSummaryDataType

type ServerDiagnosticsSummaryDataType struct {
	ServerViewCount               uint32
	CurrentSessionCount           uint32
	CumulatedSessionCount         uint32
	SecurityRejectedSessionCount  uint32
	RejectedSessionCount          uint32
	SessionTimeoutCount           uint32
	SessionAbortCount             uint32
	CurrentSubscriptionCount      uint32
	CumulatedSubscriptionCount    uint32
	PublishingIntervalCount       uint32
	SecurityRejectedRequestsCount uint32
	RejectedRequestsCount         uint32
}

type ServerOnNetwork

type ServerOnNetwork struct {
	RecordID           uint32
	ServerName         string
	DiscoveryURL       string
	ServerCapabilities []string
}

type ServerState

type ServerState uint32
const (
	ServerStateRunning            ServerState = 0
	ServerStateFailed             ServerState = 1
	ServerStateNoConfiguration    ServerState = 2
	ServerStateSuspended          ServerState = 3
	ServerStateShutdown           ServerState = 4
	ServerStateTest               ServerState = 5
	ServerStateCommunicationFault ServerState = 6
	ServerStateUnknown            ServerState = 7
)

func ServerStateFromString

func ServerStateFromString(s string) ServerState

func (ServerState) String

func (i ServerState) String() string

type ServerStatusDataType

type ServerStatusDataType struct {
	StartTime           time.Time
	CurrentTime         time.Time
	State               ServerState
	BuildInfo           *BuildInfo
	SecondsTillShutdown uint32
	ShutdownReason      *LocalizedText
}

type ServiceCounterDataType

type ServiceCounterDataType struct {
	TotalCount uint32
	ErrorCount uint32
}

type ServiceFault

type ServiceFault struct {
	ResponseHeader *ResponseHeader
}

func (*ServiceFault) Header added in v0.1.6

func (t *ServiceFault) Header() *ResponseHeader

func (*ServiceFault) SetHeader added in v0.1.6

func (t *ServiceFault) SetHeader(h *ResponseHeader)

type SessionDiagnosticsDataType

type SessionDiagnosticsDataType struct {
	SessionID                          *NodeID
	SessionName                        string
	ClientDescription                  *ApplicationDescription
	ServerURI                          string
	EndpointURL                        string
	LocaleIDs                          []string
	ActualSessionTimeout               float64
	MaxResponseMessageSize             uint32
	ClientConnectionTime               time.Time
	ClientLastContactTime              time.Time
	CurrentSubscriptionsCount          uint32
	CurrentMonitoredItemsCount         uint32
	CurrentPublishRequestsInQueue      uint32
	TotalRequestCount                  *ServiceCounterDataType
	UnauthorizedRequestCount           uint32
	ReadCount                          *ServiceCounterDataType
	HistoryReadCount                   *ServiceCounterDataType
	WriteCount                         *ServiceCounterDataType
	HistoryUpdateCount                 *ServiceCounterDataType
	CallCount                          *ServiceCounterDataType
	CreateMonitoredItemsCount          *ServiceCounterDataType
	ModifyMonitoredItemsCount          *ServiceCounterDataType
	SetMonitoringModeCount             *ServiceCounterDataType
	SetTriggeringCount                 *ServiceCounterDataType
	DeleteMonitoredItemsCount          *ServiceCounterDataType
	CreateSubscriptionCount            *ServiceCounterDataType
	ModifySubscriptionCount            *ServiceCounterDataType
	SetPublishingModeCount             *ServiceCounterDataType
	PublishCount                       *ServiceCounterDataType
	RepublishCount                     *ServiceCounterDataType
	TransferSubscriptionsCount         *ServiceCounterDataType
	DeleteSubscriptionsCount           *ServiceCounterDataType
	AddNodesCount                      *ServiceCounterDataType
	AddReferencesCount                 *ServiceCounterDataType
	DeleteNodesCount                   *ServiceCounterDataType
	DeleteReferencesCount              *ServiceCounterDataType
	BrowseCount                        *ServiceCounterDataType
	BrowseNextCount                    *ServiceCounterDataType
	TranslateBrowsePathsToNodeIDsCount *ServiceCounterDataType
	QueryFirstCount                    *ServiceCounterDataType
	QueryNextCount                     *ServiceCounterDataType
	RegisterNodesCount                 *ServiceCounterDataType
	UnregisterNodesCount               *ServiceCounterDataType
}

type SessionSecurityDiagnosticsDataType

type SessionSecurityDiagnosticsDataType struct {
	SessionID               *NodeID
	ClientUserIDOfSession   string
	ClientUserIDHistory     []string
	AuthenticationMechanism string
	Encoding                string
	TransportProtocol       string
	SecurityMode            MessageSecurityMode
	SecurityPolicyURI       string
	ClientCertificate       []byte
}

type SessionlessInvokeRequestType

type SessionlessInvokeRequestType struct {
	URIsVersion   uint32
	NamespaceURIs []string
	ServerURIs    []string
	LocaleIDs     []string
	ServiceID     uint32
}

type SessionlessInvokeResponseType

type SessionlessInvokeResponseType struct {
	NamespaceURIs []string
	ServerURIs    []string
	ServiceID     uint32
}

type SetMonitoringModeRequest

type SetMonitoringModeRequest struct {
	RequestHeader    *RequestHeader
	SubscriptionID   uint32
	MonitoringMode   MonitoringMode
	MonitoredItemIDs []uint32
}

func (*SetMonitoringModeRequest) Header added in v0.1.6

func (*SetMonitoringModeRequest) SetHeader added in v0.1.6

func (t *SetMonitoringModeRequest) SetHeader(h *RequestHeader)

type SetMonitoringModeResponse

type SetMonitoringModeResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*SetMonitoringModeResponse) Header added in v0.1.6

func (*SetMonitoringModeResponse) SetHeader added in v0.1.6

func (t *SetMonitoringModeResponse) SetHeader(h *ResponseHeader)

type SetPublishingModeRequest

type SetPublishingModeRequest struct {
	RequestHeader     *RequestHeader
	PublishingEnabled bool
	SubscriptionIDs   []uint32
}

func (*SetPublishingModeRequest) Header added in v0.1.6

func (*SetPublishingModeRequest) SetHeader added in v0.1.6

func (t *SetPublishingModeRequest) SetHeader(h *RequestHeader)

type SetPublishingModeResponse

type SetPublishingModeResponse struct {
	ResponseHeader  *ResponseHeader
	Results         []StatusCode
	DiagnosticInfos []*DiagnosticInfo
}

func (*SetPublishingModeResponse) Header added in v0.1.6

func (*SetPublishingModeResponse) SetHeader added in v0.1.6

func (t *SetPublishingModeResponse) SetHeader(h *ResponseHeader)

type SetTriggeringRequest

type SetTriggeringRequest struct {
	RequestHeader    *RequestHeader
	SubscriptionID   uint32
	TriggeringItemID uint32
	LinksToAdd       []uint32
	LinksToRemove    []uint32
}

func (*SetTriggeringRequest) Header added in v0.1.6

func (t *SetTriggeringRequest) Header() *RequestHeader

func (*SetTriggeringRequest) SetHeader added in v0.1.6

func (t *SetTriggeringRequest) SetHeader(h *RequestHeader)

type SetTriggeringResponse

type SetTriggeringResponse struct {
	ResponseHeader        *ResponseHeader
	AddResults            []StatusCode
	AddDiagnosticInfos    []*DiagnosticInfo
	RemoveResults         []StatusCode
	RemoveDiagnosticInfos []*DiagnosticInfo
}

func (*SetTriggeringResponse) Header added in v0.1.6

func (*SetTriggeringResponse) SetHeader added in v0.1.6

func (t *SetTriggeringResponse) SetHeader(h *ResponseHeader)

type SignatureData

type SignatureData struct {
	Algorithm string
	Signature []byte
}

type SignedSoftwareCertificate

type SignedSoftwareCertificate struct {
	CertificateData []byte
	Signature       []byte
}

type SimpleAttributeOperand

type SimpleAttributeOperand struct {
	TypeDefinitionID *NodeID
	BrowsePath       []*QualifiedName
	AttributeID      AttributeID
	IndexRange       string
}

type SimpleTypeDescription

type SimpleTypeDescription struct {
	DataTypeID   *NodeID
	Name         *QualifiedName
	BaseDataType *NodeID
	BuiltInType  uint8
}

type StandaloneSubscribedDataSetDataType added in v0.4.1

type StandaloneSubscribedDataSetDataType struct {
	Name              string
	DataSetFolder     []string
	DataSetMetaData   *DataSetMetaDataType
	SubscribedDataSet *ExtensionObject
}

type StandaloneSubscribedDataSetRefDataType added in v0.4.1

type StandaloneSubscribedDataSetRefDataType struct {
	DataSetName string
}

type StatusChangeNotification

type StatusChangeNotification struct {
	Status         StatusCode
	DiagnosticInfo *DiagnosticInfo
}

type StatusCode

type StatusCode uint32

StatusCode is an error type for a status code.

var (
	StatusOK                                                              StatusCode = 0x0
	StatusGood                                                            StatusCode = 0x00000000
	StatusUncertain                                                       StatusCode = 0x40000000
	StatusBad                                                             StatusCode = 0x80000000
	StatusBadUnexpectedError                                              StatusCode = 0x80010000
	StatusBadInternalError                                                StatusCode = 0x80020000
	StatusBadOutOfMemory                                                  StatusCode = 0x80030000
	StatusBadResourceUnavailable                                          StatusCode = 0x80040000
	StatusBadCommunicationError                                           StatusCode = 0x80050000
	StatusBadEncodingError                                                StatusCode = 0x80060000
	StatusBadDecodingError                                                StatusCode = 0x80070000
	StatusBadEncodingLimitsExceeded                                       StatusCode = 0x80080000
	StatusBadRequestTooLarge                                              StatusCode = 0x80B80000
	StatusBadResponseTooLarge                                             StatusCode = 0x80B90000
	StatusBadUnknownResponse                                              StatusCode = 0x80090000
	StatusBadTimeout                                                      StatusCode = 0x800A0000
	StatusBadServiceUnsupported                                           StatusCode = 0x800B0000
	StatusBadShutdown                                                     StatusCode = 0x800C0000
	StatusBadServerNotConnected                                           StatusCode = 0x800D0000
	StatusBadServerHalted                                                 StatusCode = 0x800E0000
	StatusBadNothingToDo                                                  StatusCode = 0x800F0000
	StatusBadTooManyOperations                                            StatusCode = 0x80100000
	StatusBadTooManyMonitoredItems                                        StatusCode = 0x80DB0000
	StatusBadDataTypeIDUnknown                                            StatusCode = 0x80110000
	StatusBadCertificateInvalid                                           StatusCode = 0x80120000
	StatusBadSecurityChecksFailed                                         StatusCode = 0x80130000
	StatusBadCertificatePolicyCheckFailed                                 StatusCode = 0x81140000
	StatusBadCertificateTimeInvalid                                       StatusCode = 0x80140000
	StatusBadCertificateIssuerTimeInvalid                                 StatusCode = 0x80150000
	StatusBadCertificateHostNameInvalid                                   StatusCode = 0x80160000
	StatusBadCertificateURIInvalid                                        StatusCode = 0x80170000
	StatusBadCertificateUseNotAllowed                                     StatusCode = 0x80180000
	StatusBadCertificateIssuerUseNotAllowed                               StatusCode = 0x80190000
	StatusBadCertificateUntrusted                                         StatusCode = 0x801A0000
	StatusBadCertificateRevocationUnknown                                 StatusCode = 0x801B0000
	StatusBadCertificateIssuerRevocationUnknown                           StatusCode = 0x801C0000
	StatusBadCertificateRevoked                                           StatusCode = 0x801D0000
	StatusBadCertificateIssuerRevoked                                     StatusCode = 0x801E0000
	StatusBadCertificateChainIncomplete                                   StatusCode = 0x810D0000
	StatusBadUserAccessDenied                                             StatusCode = 0x801F0000
	StatusBadIdentityTokenInvalid                                         StatusCode = 0x80200000
	StatusBadIdentityTokenRejected                                        StatusCode = 0x80210000
	StatusBadSecureChannelIDInvalid                                       StatusCode = 0x80220000
	StatusBadInvalidTimestamp                                             StatusCode = 0x80230000
	StatusBadNonceInvalid                                                 StatusCode = 0x80240000
	StatusBadSessionIDInvalid                                             StatusCode = 0x80250000
	StatusBadSessionClosed                                                StatusCode = 0x80260000
	StatusBadSessionNotActivated                                          StatusCode = 0x80270000
	StatusBadSubscriptionIDInvalid                                        StatusCode = 0x80280000
	StatusBadRequestHeaderInvalid                                         StatusCode = 0x802A0000
	StatusBadTimestampsToReturnInvalid                                    StatusCode = 0x802B0000
	StatusBadRequestCancelledByClient                                     StatusCode = 0x802C0000
	StatusBadTooManyArguments                                             StatusCode = 0x80E50000
	StatusBadLicenseExpired                                               StatusCode = 0x810E0000
	StatusBadLicenseLimitsExceeded                                        StatusCode = 0x810F0000
	StatusBadLicenseNotAvailable                                          StatusCode = 0x81100000
	StatusGoodSubscriptionTransferred                                     StatusCode = 0x002D0000
	StatusGoodCompletesAsynchronously                                     StatusCode = 0x002E0000
	StatusGoodOverload                                                    StatusCode = 0x002F0000
	StatusGoodClamped                                                     StatusCode = 0x00300000
	StatusBadNoCommunication                                              StatusCode = 0x80310000
	StatusBadWaitingForInitialData                                        StatusCode = 0x80320000
	StatusBadNodeIDInvalid                                                StatusCode = 0x80330000
	StatusBadNodeIDUnknown                                                StatusCode = 0x80340000
	StatusBadAttributeIDInvalid                                           StatusCode = 0x80350000
	StatusBadIndexRangeInvalid                                            StatusCode = 0x80360000
	StatusBadIndexRangeNoData                                             StatusCode = 0x80370000
	StatusBadDataEncodingInvalid                                          StatusCode = 0x80380000
	StatusBadDataEncodingUnsupported                                      StatusCode = 0x80390000
	StatusBadNotReadable                                                  StatusCode = 0x803A0000
	StatusBadNotWritable                                                  StatusCode = 0x803B0000
	StatusBadOutOfRange                                                   StatusCode = 0x803C0000
	StatusBadNotSupported                                                 StatusCode = 0x803D0000
	StatusBadNotFound                                                     StatusCode = 0x803E0000
	StatusBadObjectDeleted                                                StatusCode = 0x803F0000
	StatusBadNotImplemented                                               StatusCode = 0x80400000
	StatusBadMonitoringModeInvalid                                        StatusCode = 0x80410000
	StatusBadMonitoredItemIDInvalid                                       StatusCode = 0x80420000
	StatusBadMonitoredItemFilterInvalid                                   StatusCode = 0x80430000
	StatusBadMonitoredItemFilterUnsupported                               StatusCode = 0x80440000
	StatusBadFilterNotAllowed                                             StatusCode = 0x80450000
	StatusBadStructureMissing                                             StatusCode = 0x80460000
	StatusBadEventFilterInvalid                                           StatusCode = 0x80470000
	StatusBadContentFilterInvalid                                         StatusCode = 0x80480000
	StatusBadFilterOperatorInvalid                                        StatusCode = 0x80C10000
	StatusBadFilterOperatorUnsupported                                    StatusCode = 0x80C