Constants ¶ ParamConstants (GVL)
ParamConstants (GVL) ¶ InOut: Scope Name Type Initial Comment Constant dwPARAMID_SAFETYIOSERVICE_INSTANCE DWORD 2147506942 Store instance pointer in DeviceParameter ‘0x80005AFE’=’2147506942’.
Enums ¶ This library contains one Enum-definition: SafetyIoServicesResult The type used for delivering the result of the interface-methods. SafetyIoServicesResult (Enum)
SafetyIoServicesResult (ENUM) ¶ TYPE SafetyIoServicesResult : Possible return codes of function calls. InOut: Name Initial Comment SISR_OK 16#0 no error SISR_PENDING 16#1 operation returned before completed SISR_FAILED 16#10 general error
Interfaces ¶ This library contains one Interface-definition: ISafetyIoServices It describes the methods for the data exchange. Two Methods are provided: Receive Send ISafetyIoServices (Interface) Receive (Method) Send (Method)
ISafetyIoServices (ITF) ¶ INTERFACE ISafetyIoServices EXTENDS __SYSTEM.IQueryInterface This interface defines communication methods used to exchange module-related service requests with the Safety runtime-system. Methods: Receive Send Structure: Receive (Method) Send (Method)
ISafetyIoServices.Receive (METH) ¶ METHOD Receive : SafetyIoServicesResult This method receives io-service-data from the IoServices. InOut: Scope Name Type Comment Return Receive SafetyIoServicesResult SISR_OK - if data was received successfully; SISR_PENDING - if no data has been received yet; SISR_FAILED - if an error occurred. Input udiModuleId UDINT The id of the module to receive io-service-data for. uiProtocolTypeId UINT The id of the protocol type. pbyMemData POINTER TO BYTE Pointer to the reserved memory for the io-service-data. udiMemDataSize UDINT Size of the reserved memory. Output udiDataSize UDINT Size of provided io-service-data at pbyMemData.
ISafetyIoServices.Send (METH) ¶ METHOD Send : SafetyIoServicesResult This method sends io-service-data to the IoServices. InOut: Scope Name Type Comment Return Send SafetyIoServicesResult SISR_OK - if data was sent successfully; SISR_PENDING - if data has not been sent yet; SISR_FAILED - if an error occurred. Input udiModuleId UDINT The id of the module to send io-service-data for. uiProtocolTypeId UINT The id of the protocol type. pbyData POINTER TO BYTE Pointer to the io-service-data. udiDataSize UDINT Size of the io-service-data to send.
Unions ¶ This library contains one Union-definition: ISafetyIoServices_Converter It is used to convert a memory address (aka pointer) to a typed reference. It’s a common trick to keep the compiler relaxed when converting between types without having a cast-operator. ISafetyIoServices_Converter (Union)
ISafetyIoServices_Converter (UNION) ¶ TYPE ISafetyIoServices_Converter : UNION Helps to ‘convert’ a POINTER/__XWORD into a reference of type ISafetyIoServices without generating warning/errors in the compiler. This is needed when reading and writing the instance to/from Parameters. Use instead of not-available type-casts. how to use Create a variable of this union-type. Write your memory address / pointer to the val -member of the variable. Get your typed reference to the interface ISafetyIoServices from the itf -member of the variable. InOut: Name Type Comment itf ISafetyIoServices typed access val __XWORD memory address