20#ifndef SOPC_ENCODER_H_
21#define SOPC_ENCODER_H_
133 uint32_t nestedStructLevel);
149 uint32_t nestedStructLevel);
153 uint32_t nestedStructLevel);
161 uint32_t nestedStructLevel);
167 uint32_t nestedStructLevel);
174 uint32_t nestedStructLevel);
179 uint32_t nestedStructLevel);
183 uint32_t nestedStructLevel);
207 uint32_t nestedStructLevel);
209 const int32_t*
const noOfElts,
210 const void*
const* eltsArray,
213 uint32_t nestedStructLevel);
227 void** encodeableObj);
244 const void* srcValue,
A buffer of bytes with a maximum size, length and position.
int8_t SOPC_SByte
Definition sopc_builtintypes.h:142
#define SOPC_BUILTINID_MAX
Definition sopc_builtintypes.h:136
uint8_t SOPC_Byte
Definition sopc_builtintypes.h:138
SOPC_Byte SOPC_Boolean
Definition sopc_builtintypes.h:140
int64_t SOPC_DateTime
OPC UA timestamp format which is 100 nanoseconds from 1601/01/01 00:00:00 UTC.
Definition sopc_builtintypes.h:160
uint32_t SOPC_StatusCode
Definition sopc_builtintypes.h:36
EncodeableType and services on encodeable object.
SOPC_ReturnStatus SOPC_EncodeableObject_PfnEncode(const void *value, SOPC_Buffer *buffer, uint32_t nestedStructLevel)
Encoding function generic signature for an encodeable object *.
Definition sopc_encodeabletype.h:74
void SOPC_EncodeableObject_PfnInitialize(void *value)
Initialization function generic signature for an encodeable object.
Definition sopc_encodeabletype.h:56
void SOPC_EncodeableObject_PfnClear(void *value)
Clear function generic signature for an encodeable object.
Definition sopc_encodeabletype.h:61
SOPC_ReturnStatus SOPC_EncodeableObject_PfnDecode(void *value, SOPC_Buffer *buffer, uint32_t nestedStructLevel)
Decoding function generic signature for an encodeable object.
Definition sopc_encodeabletype.h:89
struct SOPC_BuiltInType_Encoding SOPC_BuiltInType_Encoding
Generic built-in type encoding. Provides all the generic service functions for encoding and decoding ...
SOPC_ReturnStatus SOPC_QualifiedName_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Variant_ReadAux_Nested(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Byte_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Read_Array(SOPC_Buffer *msgBuf, int32_t *noOfElts, void **eltsArray, size_t sizeOfElt, SOPC_EncodeableObject_PfnDecode *decodeFct, SOPC_EncodeableObject_PfnInitialize *initializeFct, SOPC_EncodeableObject_PfnClear *clearFct, uint32_t nestedStructLevel)
SOPC_DiagInfo_EncodingFlag
Definition sopc_encoder.h:42
@ SOPC_DiagInfoEncoding_LocalizedTest
Definition sopc_encoder.h:45
@ SOPC_DiagInfoEncoding_AdditionalInfo
Definition sopc_encoder.h:47
@ SOPC_DiagInfoEncoding_SymbolicId
Definition sopc_encoder.h:43
@ SOPC_DiagInfoEncoding_Namespace
Definition sopc_encoder.h:44
@ SOPC_DiagInfoEncoding_InnerDianosticInfo
Definition sopc_encoder.h:49
@ SOPC_DiagInfoEncoding_Locale
Definition sopc_encoder.h:46
@ SOPC_DiagInfoEncoding_InnerStatusCode
Definition sopc_encoder.h:48
SOPC_ReturnStatus SOPC_String_ReadWithLimitedLength(SOPC_String *str, int32_t maxLength, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_String_Write(const SOPC_String *str, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int32_Write(const int32_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ByteString_Read(SOPC_ByteString *str, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt64_Write(const uint64_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DataValue_WriteAux_Nested(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Byte_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DateTime_Read(SOPC_DateTime *date, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt16_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Variant_Read(SOPC_Variant *variant, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt32_Read(uint32_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Boolean_Read(SOPC_Boolean *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_XmlElement_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Float_Read(float *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExpandedNodeId_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ByteString_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExtensionObject_Read(SOPC_ExtensionObject *extObj, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_XmlElement_Write(const SOPC_XmlElement *xml, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int32_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Double_Write(const double *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_StatusCode_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt64_Read(uint64_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_StatusCode_Write(const SOPC_StatusCode *status, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_LocalizedText_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DiagnosticInfo_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_String_Read(SOPC_String *str, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_EncodeableObject_EncodeToByteString(SOPC_EncodeableType *type, const void *srcValue, SOPC_ByteString *destByteString)
Encode an encodeable object of the given encodeable type into an OPC UA ByteString.
SOPC_ReturnStatus SOPC_DataValue_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_NodeId_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt16_Read(uint16_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int32_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int16_Read(int16_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt32_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_QualifiedName_Read(SOPC_QualifiedName *qname, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_String_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_String_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt32_Write(const uint32_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Variant_WriteAux_Nested(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DataValue_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExtensionObject_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DataValue_ReadAux_Nested(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Guid_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Variant_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DiagnosticInfo_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_QualifiedName_Write(const SOPC_QualifiedName *qname, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Float_Write(const float *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ByteString_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Guid_Read(SOPC_Guid *guid, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Byte_Read(SOPC_Byte *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DateTime_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_StatusCode_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Boolean_Write(const SOPC_Boolean *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DiagnosticInfo_Write(const SOPC_DiagnosticInfo *diagInfo, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_SByte_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Double_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_DataValue_EncodingFlag
Definition sopc_encoder.h:59
@ SOPC_DataValue_NotGoodStatusCode
Definition sopc_encoder.h:61
@ SOPC_DataValue_NotZeroServerPico
Definition sopc_encoder.h:65
@ SOPC_DataValue_NotZeroSourcePico
Definition sopc_encoder.h:64
@ SOPC_DataValue_NotNullValue
Definition sopc_encoder.h:60
@ SOPC_DataValue_NotMinSourceDate
Definition sopc_encoder.h:62
@ SOPC_DataValue_NotMinServerDate
Definition sopc_encoder.h:63
SOPC_ReturnStatus SOPC_NodeId_Read(SOPC_NodeId *nodeId, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Guid_Write(const SOPC_Guid *guid, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_SByte_Read(SOPC_SByte *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_EncodeableObject_DecodeFromByteString(SOPC_EncodeableType *type, const SOPC_ByteString *srcByteString, void *destValue)
Decode an encodeable object of the given encodeable type from an OPC UA ByteString.
SOPC_ReturnStatus SOPC_Int16_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DataValue_Read(SOPC_DataValue *dataValue, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt16_Write(const uint16_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExpandedNodeId_Read(SOPC_ExpandedNodeId *expNodeId, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_LocalizedText_Write(const SOPC_LocalizedText *localizedText, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DateTime_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Write_Array(SOPC_Buffer *msgBuf, const int32_t *const noOfElts, const void *const *eltsArray, size_t sizeOfElt, SOPC_EncodeableObject_PfnEncode *encodeFct, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_XmlElement_Read(SOPC_XmlElement *xml, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ByteString_Write(const SOPC_ByteString *str, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DecodeMsg_HeaderOrBody(SOPC_Buffer *buffer, SOPC_EncodeableType *msgEncType, void **encodeableObj)
SOPC_ReturnStatus SOPC_Int64_Write(const int64_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Variant_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_SByte_Write(const SOPC_SByte *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_LocalizedText_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Float_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExtensionObject_Write(const SOPC_ExtensionObject *extObj, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExpandedNodeId_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Variant_Write(const SOPC_Variant *variant, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Boolean_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt64_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_MsgBodyType_Read(SOPC_Buffer *buf, SOPC_EncodeableType **receivedEncType)
SOPC_ReturnStatus SOPC_DiagnosticInfo_Read(SOPC_DiagnosticInfo *diagInfo, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExpandedNodeId_Write(const SOPC_ExpandedNodeId *expNodeId, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Byte_Write(const SOPC_Byte *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int64_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Float_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_ExtensionObject_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int32_Read(int32_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Boolean_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt16_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_LocalizedText_EncodingFlag
Definition sopc_encoder.h:53
@ SOPC_LocalizedText_Locale
Definition sopc_encoder.h:54
@ SOPC_LocalizedText_Text
Definition sopc_encoder.h:55
SOPC_ReturnStatus SOPC_QualifiedName_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_XmlElement_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_LocalizedText_Read(SOPC_LocalizedText *localizedText, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt32_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_SByte_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DateTime_Write(const SOPC_DateTime *date, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Double_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int64_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_DataValue_Write(const SOPC_DataValue *dataValue, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_NodeId_WriteAux(const void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int16_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_NodeId_DataEncoding
Definition sopc_encoder.h:29
@ SOPC_NodeIdEncoding_Invalid
Definition sopc_encoder.h:38
@ SOPC_NodeIdEncoding_Guid
Definition sopc_encoder.h:34
@ SOPC_NodeIdEncoding_NamespaceUriFlag
Definition sopc_encoder.h:36
@ SOPC_NodeIdEncoding_String
Definition sopc_encoder.h:33
@ SOPC_NodeIdEncoding_ByteString
Definition sopc_encoder.h:35
@ SOPC_NodeIdEncoding_TwoBytes
Definition sopc_encoder.h:30
@ SOPC_NodeIdEncoding_ServerIndexFlag
Definition sopc_encoder.h:37
@ SOPC_NodeIdEncoding_FourBytes
Definition sopc_encoder.h:31
@ SOPC_NodeIdEncoding_Numeric
Definition sopc_encoder.h:32
SOPC_ReturnStatus SOPC_Int16_Write(const int16_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
const SOPC_BuiltInType_Encoding SOPC_BuiltInType_EncodingTable[SOPC_BUILTINID_MAX+1]
Table of all built-in type encoding. To be indexed with a SOPC_BuiltinId. Provides all the generic en...
SOPC_ReturnStatus SOPC_EncodeMsg_Type_Header_Body(SOPC_Buffer *buf, SOPC_EncodeableType *encType, SOPC_EncodeableType *headerType, void *msgHeader, void *msgBody)
SOPC_ReturnStatus SOPC_Guid_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_NodeId_Write(const SOPC_NodeId *nodeId, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_StatusCode_Read(SOPC_StatusCode *status, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Int64_Read(int64_t *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_UInt64_ReadAux(void *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
SOPC_ReturnStatus SOPC_Double_Read(double *value, SOPC_Buffer *buf, uint32_t nestedStructLevel)
enum _SOPC_ReturnStatus SOPC_ReturnStatus
Common enumerations for S2OPC.
Bytes buffer structure.
Definition sopc_buffer.h:38
Generic built-in type encoding. Provides all the generic service functions for encoding and decoding ...
Definition sopc_encoder.h:272
SOPC_EncodeableObject_PfnDecode * decode
Definition sopc_encoder.h:274
SOPC_EncodeableObject_PfnEncode * encode
Definition sopc_encoder.h:273
Each attribute in OPC UA has a DataValue caracterized by the following structure.
Definition sopc_builtintypes.h:385
This structure provides vendor specific diagnostic information.
Definition sopc_builtintypes.h:217
Encodeable object type structure definition. It provides all the services functions associated with t...
Definition sopc_encodeabletype.h:177
ExpandedNodeId allows the namespace to be specified explicitly as a string or with an index in the Se...
Definition sopc_builtintypes.h:207
An ExtensionObject is a container for any Structured DataTypes which cannot be encoded as one of the ...
Definition sopc_builtintypes.h:262
Definition sopc_builtintypes.h:163
Definition sopc_builtintypes.h:234
This structure describes a basic NodeID in OPC UA.
Definition sopc_builtintypes.h:189
Definition sopc_builtintypes.h:228
This structure provides string encapsulation.
Definition sopc_builtintypes.h:148
This structure provides variant encapsulation.
Definition sopc_builtintypes.h:374