types

package
v0.2.3 Latest Latest
Warning

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

Go to latest
Published: Mar 17, 2026 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ADSReservedPortNone               = 0     // None
	ADSReservedPortRouter             = 1     // AMS Router (Port 1)
	ADSReservedPortDebugger           = 2     // AMS Debugger (Port 2)
	ADSReservedPortR0TComServer       = 10    // The TCom Server. Dpc or passive level.
	ADSReservedPortR0TComServerTask   = 11    // TCom Server Task. RT context.
	ADSReservedPortR0TComServerPL     = 12    // TCom Serve Task. Passive level.
	ADSReservedPortR0TcDebugger       = 20    // TwinCAT Debugger
	ADSReservedPortR0TcDebuggerTask   = 21    // TwinCAT Debugger Task
	ADSReservedPortR0LicenseServer    = 30    // The License Server (Port 30)
	ADSReservedPortLogger             = 100   // Logger (Port 100)
	ADSReservedPortEventLog           = 110   // Event Logger (Port 110)
	ADSReservedPortDeviceApplication  = 120   // application for coupler (EK), gateway (EL), etc.
	ADSReservedPortEventLogUM         = 130   // Event Logger UM
	ADSReservedPortEventLogRT         = 131   // Event Logger RT
	ADSReservedPortEventLogPublisher  = 132   // Event Logger Publisher
	ADSReservedPortR0Realtime         = 200   // R0 Realtime (Port 200)
	ADSReservedPortR0Trace            = 290   // R0 Trace (Port 290)
	ADSReservedPortR0IO               = 300   // R0 IO (Port 300)
	ADSReservedPortR0NC               = 500   // NC (R0) (Port 500)
	ADSReservedPortR0NCSAF            = 501   // R0 Satzausführung (Port 501)
	ADSReservedPortR0NCSVB            = 511   // R0 Satzvorbereitung (Port 511)
	ADSReservedPortR0NCINSTANCE       = 520   // Preconfigured Nc2-Nc3-Instance
	ADSReservedPortR0ISG              = 550   // R0 ISG (Port 550)
	ADSReservedPortR0CNC              = 600   // R0 CNC (Port 600)
	ADSReservedPortR0LINE             = 700   // R0 Line (Port 700)
	ADSReservedPortR0PLC              = 800   // R0 PLC (Port 800)
	ADSReservedPortTc2Plc1            = 801   // Tc2 PLC RuntimeSystem 1 (Port 801)
	ADSReservedPortTc2Plc2            = 811   // Tc2 PLC RuntimeSystem 2 (Port 811)
	ADSReservedPortTc2Plc3            = 821   // Tc2 PLC RuntimeSystem 3 (Port 821)
	ADSReservedPortTc2Plc4            = 831   // Tc2 PLC RuntimeSystem 4 (Port 831)
	ADSReservedPortR0RTS              = 850   // R0 RTS (Port 850)
	ADSReservedPortTc3Plc1            = 851   // Tc3 PLC RuntimeSystem 1 (Port 851)
	ADSReservedPortTc3Plc2            = 852   // Tc3 PLC RuntimeSystem 2 (Port 852)
	ADSReservedPortTc3Plc3            = 853   // Tc3 PLC RuntimeSystem 3 (Port 853)
	ADSReservedPortTc3Plc4            = 854   // Tc3 PLC RuntimeSystem 4 (Port 854)
	ADSReservedPortTc3Plc5            = 855   // Tc3 PLC RuntimeSystem 5 (Port 855)
	ADSReservedPortCamshaftController = 900   // Camshaft Controller (R0) (Port 900)
	ADSReservedPortR0CAMTOOL          = 950   // R0 CAM Tool (Port 950)
	ADSReservedPortR0USER             = 2000  // R0 User (Port 2000)
	ADSReservedPortR3CTRLPROG         = 10000 // (Port 10000)
	ADSReservedPortSystemService      = 10000 // System Service (AMSPORT_R3_SYSSERV, 10000)
	ADSReservedPortR3SYSCTRL          = 10001 // (Port 10001)
	ADSReservedPortR3SYSSAMPLER       = 10100 // Port 10100
	ADSReservedPortR3TCPRAWCONN       = 10200 // Port 10200
	ADSReservedPortR3TCPIPSERVER      = 10201 // Port 10201
	ADSReservedPortR3SYSMANAGER       = 10300 // Port 10300
	ADSReservedPortR3SMSSERVER        = 10400 // Port 10400
	ADSReservedPortR3MODBUSSERVER     = 10500 // Port 10500
	ADSReservedPortR3AMSLOGGER        = 10502 // Port 10502
	ADSReservedPortR3XMLDATASERVER    = 10600 // Port 10600
	ADSReservedPortR3AUTOCONFIG       = 10700 // Port 10700
	ADSReservedPortR3PLCCONTROL       = 10800 // Port 10800
	ADSReservedPortR3FTPCLIENT        = 10900 // Port 10900
	ADSReservedPortR3NCCTRL           = 11000 // Port 11000
	ADSReservedPortR3NCINTERPRETER    = 11500 // Port 11500
	ADSReservedPortR3GSTINTERPRETER   = 11600 // Port 11600
	ADSReservedPortR3STRECKECTRL      = 12000 // Port 12000
	ADSReservedPortR3CAMCTRL          = 13000 // Port 13000
	ADSReservedPortR3SCOPE            = 14000 // Port 14000
	ADSReservedPortR3CONDITIONMON     = 14100 // Port 14100
	ADSReservedPortR3SINECH1          = 15000 // Port 15000
	ADSReservedPortR3CONTROLNET       = 16000 // Port 16000
	ADSReservedPortR3OPCSERVER        = 17000 // Port 17000
	ADSReservedPortR3OPCCLIENT        = 17500 // Port 17500
	ADSReservedPortR3MAILSERVER       = 18000 // Port 18000
	ADSReservedPortR3EL60XX           = 19000 // Port 19000
	ADSReservedPortR3MANAGEMENT       = 19100 // Port 19100
	ADSReservedPortR3MIELEHOME        = 19200 // Port 19200
	ADSReservedPortR3CPLINK3          = 19300 // Port 19300
	ADSReservedPortR3VNSERVICE        = 19500 // Port 19500
	ADSReservedPortR3MULTIUSER        = 19600 // Multiuser (Port 19600)
	ADSReservedPortUSEDEFAULT         = 65535 // Default (AMS router assigns)
)

ADSReservedPorts contains reserved/known ADS ports. Source: TwinCAT.Ads.dll By Beckhoff

Variables

This section is empty.

Functions

func ADSDataTypeFlagsToStringArray

func ADSDataTypeFlagsToStringArray(flags ADSDataTypeFlags) []string

ADSDataTypeFlagsToStringArray converts the flags to a string array.

func ADSDataTypeToString

func ADSDataTypeToString(dataType ADSDataType) string

ADSDataTypeToString converts an ADSDataType to a string.

func ADSRcpMethodFlagsToStringArray

func ADSRcpMethodFlagsToStringArray(flags ADSRcpMethodFlags) []string

ADSRcpMethodFlagsToStringArray converts the flags to a string array.

func ADSRcpMethodParamFlagsToStringArray

func ADSRcpMethodParamFlagsToStringArray(flags ADSRcpMethodParamFlags) []string

ADSRcpMethodParamFlagsToStringArray converts the flags to a string array.

func ADSSymbolFlags2ToStringArray

func ADSSymbolFlags2ToStringArray(flags ADSSymbolFlags2) []string

ADSSymbolFlags2ToStringArray converts the extended flags to a string array.

func ADSSymbolFlagsToStringArray

func ADSSymbolFlagsToStringArray(flags ADSSymbolFlags) []string

ADSSymbolFlagsToStringArray converts the flags to a string array.

func ADSSystemServiceStateFlagsToStringArray

func ADSSystemServiceStateFlagsToStringArray(flags ADSSystemServiceStateFlags) []string

ADSSystemServiceStateFlagsToStringArray converts the flags to a string array.

func ADSUploadInfoFlagsToStringArray

func ADSUploadInfoFlagsToStringArray(flags ADSUploadInfoFlags) []string

ADSUploadInfoFlagsToStringArray converts the flags to a string array.

func AMSRouterStateToString

func AMSRouterStateToString(value AMSRouterState) string

AMSRouterStateToString returns the string key for the given router state value.

Types

type ADSCommand

type ADSCommand uint16

ADSCommand defines the ADS commands.

const (
	ADSCommandInvalid            ADSCommand = 0 // Invalid
	ADSCommandNone               ADSCommand = 0 // uninitialized
	ADSCommandReadDeviceInfo     ADSCommand = 1 // ReadDeviceInfo command
	ADSCommandRead               ADSCommand = 2 // Read Command
	ADSCommandWrite              ADSCommand = 3 // Write Command
	ADSCommandReadState          ADSCommand = 4 // Read State Command
	ADSCommandWriteControl       ADSCommand = 5 // WriteControl Command
	ADSCommandAddNotification    ADSCommand = 6 // Add Device notification
	ADSCommandDeleteNotification ADSCommand = 7 // Delete Device notification
	ADSCommandNotification       ADSCommand = 8 // Device notification
	ADSCommandReadWrite          ADSCommand = 9 // Read Write command
)

func (ADSCommand) String

func (c ADSCommand) String() string

type ADSDataType

type ADSDataType uint32

ADSDataType is the ADS data type

const (
	ADST_VOID     ADSDataType = 0  // ADST_VOID is a void type
	ADST_INT16    ADSDataType = 2  // ADST_INT16 is a 16-bit integer
	ADST_INT32    ADSDataType = 3  // ADST_INT32 is a 32-bit integer
	ADST_REAL32   ADSDataType = 4  // ADST_REAL32 is a 32-bit real
	ADST_REAL64   ADSDataType = 5  // ADST_REAL64 is a 64-bit real
	ADST_INT8     ADSDataType = 16 // ADST_INT8 is an 8-bit integer
	ADST_UINT8    ADSDataType = 17 // ADST_UINT8 is an 8-bit unsigned integer
	ADST_UINT16   ADSDataType = 18 // ADST_UINT16 is a 16-bit unsigned integer
	ADST_UINT32   ADSDataType = 19 // ADST_UINT32 is a 32-bit unsigned integer
	ADST_INT64    ADSDataType = 20 // ADST_INT64 is a 64-bit integer
	ADST_UINT64   ADSDataType = 21 // ADST_UINT64 is a 64-bit unsigned integer
	ADST_STRING   ADSDataType = 30 // ADST_STRING is a string
	ADST_WSTRING  ADSDataType = 31 // ADST_WSTRING is a wide string
	ADST_REAL80   ADSDataType = 32 // ADST_REAL80 is an 80-bit real
	ADST_BIT      ADSDataType = 33 // ADST_BIT is a bit
	ADST_MAXTYPES ADSDataType = 34 // ADST_MAXTYPES is the maximum number of types (internal only)
	ADST_BIGTYPE  ADSDataType = 65 // ADST_BIGTYPE is a big type
)

type ADSDataTypeFlags

type ADSDataTypeFlags uint32

ADSDataTypeFlags defines the flags for an ADS data type. Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSDataTypeFlagNone                       ADSDataTypeFlags = 0x0        // None / No Flag set
	ADSDataTypeFlagDataType                   ADSDataTypeFlags = 0x1        // ADSDATATYPEFLAG_DATATYPE
	ADSDataTypeFlagDataItem                   ADSDataTypeFlags = 0x2        // ADSDATATYPEFLAG_DATAITEM
	ADSDataTypeFlagReferenceTo                ADSDataTypeFlags = 0x4        // ADSDATATYPEFLAG_REFERENCETO
	ADSDataTypeFlagMethodDeref                ADSDataTypeFlags = 0x8        // ADSDATATYPEFLAG_METHODDEREF
	ADSDataTypeFlagOversample                 ADSDataTypeFlags = 0x10       // ADSDATATYPEFLAG_OVERSAMPLE
	ADSDataTypeFlagBitValues                  ADSDataTypeFlags = 0x20       // ADSDATATYPEFLAG_BITVALUES
	ADSDataTypeFlagPropItem                   ADSDataTypeFlags = 0x40       // ADSDATATYPEFLAG_PROPITEM
	ADSDataTypeFlagTypeGuid                   ADSDataTypeFlags = 0x80       // ADSDATATYPEFLAG_TYPEGUID
	ADSDataTypeFlagPersistent                 ADSDataTypeFlags = 0x100      // ADSDATATYPEFLAG_PERSISTENT
	ADSDataTypeFlagCopyMask                   ADSDataTypeFlags = 0x200      // ADSDATATYPEFLAG_COPYMASK
	ADSDataTypeFlagTComInterfacePtr           ADSDataTypeFlags = 0x400      // ADSDATATYPEFLAG_TCCOMIFACEPTR
	ADSDataTypeFlagMethodInfos                ADSDataTypeFlags = 0x800      // ADSDATATYPEFLAG_METHODINFOS
	ADSDataTypeFlagAttributes                 ADSDataTypeFlags = 0x1000     // ADSDATATYPEFLAG_ATTRIBUTES
	ADSDataTypeFlagEnumInfos                  ADSDataTypeFlags = 0x2000     // ADSDATATYPEFLAG_ENUMINFOS
	ADSDataTypeFlagAligned                    ADSDataTypeFlags = 0x10000    // ADSDATATYPEFLAG_ALIGNED
	ADSDataTypeFlagStatic                     ADSDataTypeFlags = 0x20000    // ADSDATATYPEFLAG_STATIC
	ADSDataTypeFlagSoftwareProtectionLvls     ADSDataTypeFlags = 0x40000    // Has Software Protection Levels for DataTypes
	ADSDataTypeFlagIgnorePersist              ADSDataTypeFlags = 0x80000    // ADSDATATYPEFLAG_IGNOREPERSIST
	ADSDataTypeFlagAnySizeArray               ADSDataTypeFlags = 0x100000   // ADSDATATYPEFLAG_ANYSIZEARRAY
	ADSDataTypeFlagPersistantDatatype         ADSDataTypeFlags = 0x200000   // ADSDATATYPEFLAG_PERSIST_DT
	ADSDataTypeFlagInitOnReset                ADSDataTypeFlags = 0x400000   // ADSDATATYPEFLAG_INITONRESET
	ADSDataTypeFlagPlcPointerType             ADSDataTypeFlags = 0x800000   // ADSDATATYPEFLAG_PLCPOINTERTYPE
	ADSDataTypeFlagRefactorInfo               ADSDataTypeFlags = 0x1000000  // ADSDATATYPEFLAG_REFACTORINFO
	ADSDataTypeFlagHideSubItems               ADSDataTypeFlags = 0x2000000  // ADSDATATYPEFLAG_HIDESUBITEMS
	ADSDataTypeFlagIncomplete                 ADSDataTypeFlags = 0x4000000  // ADSDATATYPEFLAG_INCOMPLETE
	ADSDataTypeFlagContainsOnlineChangePtrRef ADSDataTypeFlags = 0x8000000  // ADSDATATYPEFLAG_OCPTRREFTYPE
	ADSDataTypeFlagDeRefTypeItem              ADSDataTypeFlags = 0x10000000 // ADSDATATYPEFLAG_DEREFTYPEITEM
	ADSDataTypeFlagExtendedEnumInfos          ADSDataTypeFlags = 0x20000000 // ADSDATATYPEFLAG_EXTENUMINFOS
	ADSDataTypeFlagExtendedFlags              ADSDataTypeFlags = 0x80000000 // ADSDATATYPEFLAG_EXTENDEDFLAGS
)

type ADSRcpMethodFlags

type ADSRcpMethodFlags uint32

ADSRcpMethodFlags defines the flags for an ADS RCP method. Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSRcpMethodFlagPlcCallingConvention ADSRcpMethodFlags = 0x1 // (ADSMETHODFLAG_PLC_CALLINGCONVENTION)
	ADSRcpMethodFlagCallUnlocked         ADSRcpMethodFlags = 0x2 // (ADSMETHODFLAG_CALL_UNLOCKED)
	ADSRcpMethodFlagNotCallable          ADSRcpMethodFlags = 0x4 // (ADSMETHODFLAG_NOTCALLABLE)
	ADSRcpMethodFlagAttributes           ADSRcpMethodFlags = 0x8 // (ADSMETHODFLAG_ATTRIBUTES)
)

type ADSRcpMethodParamFlags

type ADSRcpMethodParamFlags uint32

ADSRcpMethodParamFlags defines the flags for ADS RCP method parameters. Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSRcpMethodParamFlagIn              ADSRcpMethodParamFlags = 0x1  // Input Parameter (ADSMETHODPARAFLAG_IN)
	ADSRcpMethodParamFlagOut             ADSRcpMethodParamFlags = 0x2  // Output Parameter (ADSMETHODPARAFLAG_OUT)
	ADSRcpMethodParamFlagByReference     ADSRcpMethodParamFlags = 0x4  // By reference Parameter (ADSMETHODPARAFLAG_BYREFERENCE / ADSMETHODPARAFLAG_RPC_OUTPTR)
	ADSRcpMethodParamFlagMaskRpcArrayDim ADSRcpMethodParamFlags = 0x30 // (ADSMETHODPARAFLAG_RPC_ARRAYDIM_MASK)
	ADSRcpMethodParamFlagAttributes      ADSRcpMethodParamFlags = 0x40 // Attributes (ADSMETHODPARAFLAG_ATTRIBUTES)
)

type ADSReservedIndexGroup

type ADSReservedIndexGroup uint32

Reserved ADS index groups Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSReservedIndexGroupPlcRWIB                  ADSReservedIndexGroup = 16384  // 0x00004000
	ADSReservedIndexGroupPlcRWOB                  ADSReservedIndexGroup = 16400  // 0x00004010
	ADSReservedIndexGroupPlcRWMB                  ADSReservedIndexGroup = 16416  // 0x00004020
	ADSReservedIndexGroupPlcRWRB                  ADSReservedIndexGroup = 16432  // 0x00004030
	ADSReservedIndexGroupPlcRWDB                  ADSReservedIndexGroup = 16448  // 0x00004040
	ADSReservedIndexGroupSymbolTable              ADSReservedIndexGroup = 61440  // 0x0000F000
	ADSReservedIndexGroupSymbolName               ADSReservedIndexGroup = 61441  // 0x0000F001
	ADSReservedIndexGroupSymbolValue              ADSReservedIndexGroup = 61442  // 0x0000F002
	ADSReservedIndexGroupSymbolHandleByName       ADSReservedIndexGroup = 61443  // 0x0000F003
	ADSReservedIndexGroupSymbolValueByName        ADSReservedIndexGroup = 61444  // 0x0000F004
	ADSReservedIndexGroupSymbolValueByHandle      ADSReservedIndexGroup = 61445  // 0x0000F005
	ADSReservedIndexGroupSymbolReleaseHandle      ADSReservedIndexGroup = 61446  // 0x0000F006
	ADSReservedIndexGroupSymbolInfoByName         ADSReservedIndexGroup = 61447  // 0x0000F007
	ADSReservedIndexGroupSymbolVersion            ADSReservedIndexGroup = 61448  // 0x0000F008
	ADSReservedIndexGroupSymbolInfoByNameEx       ADSReservedIndexGroup = 61449  // 0x0000F009
	ADSReservedIndexGroupSymbolDownload           ADSReservedIndexGroup = 61450  // 0x0000F00A
	ADSReservedIndexGroupSymbolUpload             ADSReservedIndexGroup = 61451  // 0x0000F00B
	ADSReservedIndexGroupSymbolUploadInfo         ADSReservedIndexGroup = 61452  // 0x0000F00C
	ADSReservedIndexGroupSymbolDownload2          ADSReservedIndexGroup = 0xF00D // Added, not from .dll
	ADSReservedIndexGroupSymbolDataTypeUpload     ADSReservedIndexGroup = 0xF00E // Added, not from .dll
	ADSReservedIndexGroupSymbolUploadInfo2        ADSReservedIndexGroup = 0xF00F // Added, not from .dll - 24 bytes of info, uploadinfo3 would contain 64 bytes
	ADSReservedIndexGroupSymbolNote               ADSReservedIndexGroup = 61456  // 0x0000F010
	ADSReservedIndexGroupDataDataTypeInfoByNameEx ADSReservedIndexGroup = 0xF011 // Added, not from .dll
	ADSReservedIndexGroupIOImageRWIB              ADSReservedIndexGroup = 61472  // 0x0000F020
	ADSReservedIndexGroupIOImageRWIX              ADSReservedIndexGroup = 61473  // 0x0000F021
	ADSReservedIndexGroupIOImageRWOB              ADSReservedIndexGroup = 61488  // 0x0000F030
	ADSReservedIndexGroupIOImageRWOX              ADSReservedIndexGroup = 61489  // 0x0000F031
	ADSReservedIndexGroupIOImageClearI            ADSReservedIndexGroup = 61504  // 0x0000F040
	ADSReservedIndexGroupIOImageClearO            ADSReservedIndexGroup = 61520  // 0x0000F050
	ADSReservedIndexGroupSumCommandRead           ADSReservedIndexGroup = 61568  // 0x0000F080
	ADSReservedIndexGroupSumCommandWrite          ADSReservedIndexGroup = 61569  // 0x0000F081
	ADSReservedIndexGroupSumCommandReadWrite      ADSReservedIndexGroup = 61570  // 0x0000F082
	ADSReservedIndexGroupSumCommandReadEx         ADSReservedIndexGroup = 61571  // 0x0000F083
	ADSReservedIndexGroupSumCommandReadEx2        ADSReservedIndexGroup = 61572  // 0x0000F084
	ADSReservedIndexGroupSumCommandAddDevNote     ADSReservedIndexGroup = 61573  // 0x0000F085
	ADSReservedIndexGroupSumCommandDelDevNote     ADSReservedIndexGroup = 61574  // 0x0000F086
	ADSReservedIndexGroupDeviceData               ADSReservedIndexGroup = 61696  // 0x0000F100
)

func (ADSReservedIndexGroup) ADSReservedIndexGroupToString

func (group ADSReservedIndexGroup) ADSReservedIndexGroupToString() string

ADSReservedIndexGroupToString returns the name of the reserved ADS index group by value, or "UNKNOWN"

type ADSState

type ADSState int

ADSState represents the state of ADS (from TwinCAT.Ads.dll by Beckhoff)

const (
	ADSStateInvalid      ADSState = iota
	ADSStateIdle         ADSState = 1
	ADSStateReset        ADSState = 2
	ADSStateInitialize   ADSState = 3
	ADSStateStart        ADSState = 4
	ADSStateRun          ADSState = 5
	ADSStateStop         ADSState = 6
	ADSStateSaveConfig   ADSState = 7
	ADSStateLoadConfig   ADSState = 8
	ADSStatePowerFailure ADSState = 9
	ADSStatePowerGood    ADSState = 10
	ADSStateError        ADSState = 11
	ADSStateShutdown     ADSState = 12
	ADSStateSuspend      ADSState = 13
	ADSStateResume       ADSState = 14
	ADSStateConfig       ADSState = 15
	ADSStateReconfig     ADSState = 16
	ADSStateStopping     ADSState = 17
	ADSStateIncompatible ADSState = 18
	ADSStateException    ADSState = 19
)

func (ADSState) String

func (s ADSState) String() string

String returns the string representation of ADSState (like toString in TypeScript)

type ADSStateFlags

type ADSStateFlags uint16

ADSStateFlags defines the ADS state flags (from TwinCAT.Ads.dll by Beckhoff)

const (
	ADSStateFlagResponse       ADSStateFlags = 1     // AMSCMDSF_RESPONSE
	ADSStateFlagNoReturn       ADSStateFlags = 2     // AMSCMDSF_NORETURN
	ADSStateFlagAdsCommand     ADSStateFlags = 4     // AdsCommand
	ADSStateFlagSysCommand     ADSStateFlags = 8     // AMSCMDSF_SYSCMD
	ADSStateFlagHighPriority   ADSStateFlags = 16    // AMSCMDSF_HIGHPRIO
	ADSStateFlagTimeStampAdded ADSStateFlags = 32    // AMSCMDSF_TIMESTAMPADDED
	ADSStateFlagUdp            ADSStateFlags = 64    // AMSCMDSF_UDP
	ADSStateFlagInitCmd        ADSStateFlags = 128   // AMSCMDSF_INITCMD
	ADSStateFlagBroadcast      ADSStateFlags = 32768 // AMSCMDSF_BROADCAST
)

func (ADSStateFlags) String

func (f ADSStateFlags) String() string

String returns the flags as a comma separated list, with special cases for Tcp/Request.

type ADSSymbolFlags

type ADSSymbolFlags uint32

ADSSymbolFlags defines the flags for an ADS symbol.

const (
	ADSSymbolFlagPersistent      ADSSymbolFlags = 0x1    // ADSSymbolFlagPersistent
	ADSSymbolFlagBitValue        ADSSymbolFlags = 0x2    // ADSSymbolFlagBitValue
	ADSSymbolFlagReferenceTo     ADSSymbolFlags = 0x4    // ADSSymbolFlagReferenceTo
	ADSSymbolFlagTypeGuid        ADSSymbolFlags = 0x8    // ADSSymbolFlagTypeGuid
	ADSSymbolFlagTComIfacePtr    ADSSymbolFlags = 0x10   // ADSSymbolFlagTComIfacePtr
	ADSSymbolFlagReadOnly        ADSSymbolFlags = 0x20   // ADSSymbolFlagReadOnly
	ADSSymbolFlagItfMethodAccess ADSSymbolFlags = 0x40   // ADSSymbolFlagItfMethodAccess
	ADSSymbolFlagMethodDeref     ADSSymbolFlags = 0x80   // ADSSymbolFlagMethodDeref
	ADSSymbolFlagContextMask     ADSSymbolFlags = 0xF00  // ADSSymbolFlagContextMask
	ADSSymbolFlagAttributes      ADSSymbolFlags = 0x1000 // ADSSymbolFlagAttributes
	ADSSymbolFlagStatic          ADSSymbolFlags = 0x2000 // ADSSymbolFlagStatic
	ADSSymbolFlagInitOnReset     ADSSymbolFlags = 0x4000 // ADSSymbolFlagInitOnReset
	ADSSymbolFlagExtendedFlags   ADSSymbolFlags = 0x8000 // ADSSymbolFlagExtendedFlags
)

type ADSSymbolFlags2

type ADSSymbolFlags2 uint32

ADSSymbolFlags2 defines the extended flags for an ADS symbol.

const (
	ADSSymbolFlag2None                   ADSSymbolFlags2 = 0x0  // None
	ADSSymbolFlag2PlcPointerType         ADSSymbolFlags2 = 0x1  // PLC pointer type (ADSSYMBOLFLAG2_PLCPOINTERTYPE)
	ADSSymbolFlag2RedundancyIgnore       ADSSymbolFlags2 = 0x2  // Ignore symbol while equalizing redundancy projects (ADSSYMBOLFLAG2_RDIGNORE)
	ADSSymbolFlag2RefactorInfo           ADSSymbolFlags2 = 0x4  // Contains refactoring information (ADSSYMBOLFLAG2_REFACTORINFO)
	ADSSymbolFlag2OnlineChangePtrRefType ADSSymbolFlags2 = 0x8  // Online change PTR reference type (ADSSYMBOLFLAG2_OCPTRREFTYPE)
	ADSSymbolFlag2VariantType            ADSSymbolFlags2 = 0x10 // Symbol is a Variant Type (ADSSYMBOLFLAG2_VARIANT)
)

type ADSSystemServiceStateFlags

type ADSSystemServiceStateFlags uint32

ADSSystemServiceStateFlags defines the flags for system service state. Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSSystemServiceStateFlagRouterModeOnly      ADSSystemServiceStateFlags = 0x1   // The router mode only
	ADSSystemServiceStateFlagRedundancySystem    ADSSystemServiceStateFlags = 0x2   // System is part of a controller redundancy
	ADSSystemServiceStateFlagRedundancyPrimary   ADSSystemServiceStateFlags = 0x4   // System is the primary controller
	ADSSystemServiceStateFlagRedundancyActive    ADSSystemServiceStateFlags = 0x10  // System is currently active -> controlling the machine
	ADSSystemServiceStateFlagDataFolderSupport   ADSSystemServiceStateFlags = 0x20  // The data folder support
	ADSSystemServiceStateFlagRedundancyInOp      ADSSystemServiceStateFlags = 0x40  // Redundancy is currently down -> not synchronized
	ADSSystemServiceStateFlagRedundancySuspended ADSSystemServiceStateFlags = 0x80  // Standby system is currently suspended - e.g. while online change
	ADSSystemServiceStateFlagNewCurrentConfig    ADSSystemServiceStateFlags = 0x100 // Creates new currentconfig
)

type ADSTransMode

type ADSTransMode uint32

ADSTransMode defines ADS notification transmission mode. Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSTransModeNone              ADSTransMode = 0
	ADSTransModeClientCycle       ADSTransMode = 1
	ADSTransModeClientOnChange    ADSTransMode = 2
	ADSTransModeCyclic            ADSTransMode = 3
	ADSTransModeOnChange          ADSTransMode = 4
	ADSTransModeCyclicInContext   ADSTransMode = 5
	ADSTransModeOnChangeInContext ADSTransMode = 6
)

func (ADSTransMode) String

func (mode ADSTransMode) String() string

ADSTransModeToString returns the name of the ADS transmission mode for a given value.

type ADSUploadInfoFlags

type ADSUploadInfoFlags uint32

ADSUploadInfoFlags defines the flags for ADS symbol upload info. Source: TwinCAT.Ads.dll By Beckhoff

const (
	ADSUploadInfoFlagNone                  ADSUploadInfoFlags = 0x0 // None / Uninitialized
	ADSUploadInfoFlagIs64BitPlatform       ADSUploadInfoFlags = 0x1 // Target is 64 Bit Platform
	ADSUploadInfoFlagIncludesBaseTypes     ADSUploadInfoFlags = 0x2 // Symbol Server includes Base types
	ADSUploadInfoFlagUtf8EncodedStringData ADSUploadInfoFlags = 0x4 // String data is encoded in UTF-8 (All PLC STRING data is encoded in UTF8. This flag is used from TwinCAT 4026 on.)
)

type AMSHeaderFlag

type AMSHeaderFlag uint16

AMSHeaderFlag defines the AMS command flags.

const (
	AMSTCPPortAMSCommand AMSHeaderFlag = 0    // 0x0000 - Used for ADS commands
	AMSTCPPortClose      AMSHeaderFlag = 1    // 0x0001 - Port close command
	AMSTCPPortConnect    AMSHeaderFlag = 4096 // 0x1000 - Port connect command
	AMSTCPPortRouterNote AMSHeaderFlag = 4097 // 0x1001 - Router notification
	GetLocalNetID        AMSHeaderFlag = 4098 // 0x1002 - Requests local AmsNetId
)

func (AMSHeaderFlag) String

func (f AMSHeaderFlag) String() string

Returns the corresponding key as string by given value (number)

type AMSRouterState

type AMSRouterState uint32

AMSRouterState defines possible AMS router states. Source: TwinCAT.Ads.dll By Beckhoff

const (
	AMSRouterStateStop    AMSRouterState = 0 // Router is stopped
	AMSRouterStateStart   AMSRouterState = 1 // Router is started
	AMSRouterStateRemoved AMSRouterState = 2 // Router is removed (unavailable?)
)

type AdsArrayInfo

type AdsArrayInfo struct {
	StartIndex int32
	Length     uint32
}

AdsArrayInfo represents information about an array.

type AdsAttribute

type AdsAttribute struct {
	Name  string
	Value string
}

AdsAttribute represents an attribute of a data type.

type AdsDataType

type AdsDataType struct {
	Name          string
	Type          string // Added Type field
	Version       uint32
	HashValue     uint32
	TypeHash      uint32
	Size          uint32
	Offset        uint32
	DataType      ADSDataType
	Flags         ADSDataTypeFlags
	ArrayDim      uint16
	SubItems      []AdsDataType // Changed to AdsDataType
	Comment       string
	ArrayInfo     []AdsArrayInfo
	EnumInfo      []AdsEnumInfo
	Attributes    []AdsAttribute
	Methods       []AdsMethod
	GUID          string
	ExtendedFlags uint32
	CopyMask      uint32
}

AdsDataType represents an ADS data type.

type AdsDataTypeSubItem

type AdsDataTypeSubItem struct {
	EntryLength   uint32
	Version       uint32
	HashValue     uint32
	TypeHash      uint32
	Size          uint32
	Offset        uint32
	DataType      ADSDataType
	Flags         ADSSymbolFlags
	ArrayDim      uint16
	NameLength    uint16
	TypeLength    uint16
	CommentLength uint16
	Name          string
	Type          string
	Comment       string
}

AdsDataTypeSubItem represents a sub-item within an ADS data type declaration.

type AdsEnumInfo

type AdsEnumInfo struct {
	Name       string
	Value      int64
	Comment    string
	Attributes []AdsAttribute
}

AdsEnumInfo represents information about an enumeration.

type AdsMethod

type AdsMethod struct {
	Name       string
	ReturnType string
	Params     []AdsMethodParam
}

AdsMethod represents a method of a data type.

type AdsMethodParam

type AdsMethodParam struct {
	Name string
	Type string
}

AdsMethodParam represents a parameter of a method.

type AdsSymbol

type AdsSymbol struct {
	IndexGroup    uint32
	IndexOffset   uint32
	Size          uint32
	DataType      ADSDataType
	Flags         ADSSymbolFlags
	NameLength    uint16
	TypeLength    uint16
	CommentLength uint16
	Name          string
	Type          string
	Comment       string
}

AdsSymbol represents an ADS symbol.

Jump to

Keyboard shortcuts

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