1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | OwnerPayload : FB_Payload; //He manages the assigning of Pool Objects {info 'TODO: i-campbell: Need to write code to handle any array indexes. For now ONLY pass ARRAYS of starting index = 0'} myPropertySetValuesPool : ARRAY [*] OF FB_PayloadPropertyValue; myPropertySetsPool : ARRAY [*] OF FB_PayloadPropertySet; //myBodyPool : ARRAY [*] OF BYTE; // for example Payload.Metric[].Body VAR_OUTPUT xDecodeDone,xDecodeBusy,xDecodeError : BOOL; eDecodeError : ERROR; xEncodeDone,xEncodeBusy,xEncodeError : BOOL; eEncodeError : ERROR; VAR // message PropertyValue { // // optional uint32 type = 1; xHasType : BOOL; eType : PropertyDataType; // optional bool is_null = 2; xHasIs_null : BOOL; xIs_null : BOOL; // oneof value { eHasValue : PropertyProtobufsType; // uint32 int_value = 3; // uint64 long_value = 4; // bool boolean_value = 7; dzzValue : DecodedVarInt; // float float_value = 5; rValue : REAL; // double double_value = 6; lrValue : LREAL; // string string_value = 8; sValue : WSTRING; // PropertySet propertyset_value = 9; myPropertySet : FB_PayloadPropertySet; myPropertySetList : COL.LinkedList; // OF FB_PayloadPropertySet // PropertyValueExtension extension_value = 11; // } // message PropertyValueExtension { // extensions 1 to max; // } // NO EXTENSIONS |