--- a/branches/i-campbell/mqttsparkplugb/mqttsparkplugb/SparkplugB/Function Blocks/FB_Payload_1/FB_PayloadTemplate/svnobj
+++ b/branches/i-campbell/mqttsparkplugb/mqttsparkplugb/SparkplugB/Function Blocks/FB_Payload_1/FB_PayloadTemplate/svnobj
@@ -1,4 +1,4 @@
-Gx_lç!0…jüoÎFàÈoñàžSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
-TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagTextInterfaceL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}BFUNCTION_BLOCK FB_PayloadTemplateVAR_IN_OUTEND_VARVARX	// Payload.metrics[].template_value.version.    xHasVersion : BOOL;.    sVersion : WSTRING;Œ// Payload.metrics[].template_value.metrics[].   //(RECURSIVE Metrics)n    aMetrics      :COL.LinkedList;//of FB_PayloadMetricj// Payload.metrics[].template_value.parameters[].namej// Payload.metrics[].template_value.parameters[].typet// Payload.metrics[].template_value.parameters[].int_valuev// Payload.metrics[].template_value.parameters[].long_value x// Payload.metrics[].template_value.parameters[].float_value!z// Payload.metrics[].template_value.parameters[].double_value"|// Payload.metrics[].template_value.parameters[].boolean_value#z// Payload.metrics[].template_value.parameters[].string_value$Ž// Payload.metrics[].template_value.parameters[].extension_value //none%z    aParameters      :COL.LinkedList;//of FB_PayloadParameter&`// Payload.metrics[].template_value.template_ref'8    xHasTemplate_ref : BOOL;(8    sTemplate_ref : WSTRING;)b// Payload.metrics[].template_value.is_definition*:    xHasIs_definition : BOOL;+.	xIs_definition : BOOL;,p// Payload.metrics[].template_value.extensions[]  //none-"UniqueIdGenerator.127/POULevel0L{8e575c5b-1d37-49c6-941b-5c0ec7874787}1Standard2 ChildObjectGuids38System.Collections.ArrayList4,AddAttributeSubsequent5boolÐÐ-ÐÐ	E
+Gx_l&!0…jüoÍ^ã;R1Mö²úSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
+TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagTextInterfaceL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}BFUNCTION_BLOCK FB_PayloadTemplateVAR_INPUT6	(*Trigers for conversion*) 	xDecode : BOOL;"	xEncode : BOOL;	END_VARVAR_IN_OUTŒ	OwnerPayload : FB_Payload; //He manages the assigning of Pool Objectsä	ProtobufBlobIndex : DINT;  //For decoding, starts where the start of the Object is, ends on the last byte of the Object.  For Encoding, starts where the first byte the Object should be written to, ends on the next free byte after this objectö	{info 'TODO: i-campbell: Need to write code to handle any array indexes.  For now ONLY pass ARRAYS of starting index = 0'}æ    myProtobufBlob : ARRAY [*] OF BYTE;//array of bytes containing the protobuf payload.  If the array is the whole^	myMetricsPool : ARRAY [*] OF FB_PayloadMetric;l	//myKeysPool : ARRAY [*] OF LinkedListWStringElement; „	//myPropertySetValuesPool : ARRAY [*] OF FB_PayloadPropertyValue;!v	//myPorpertySetsPool : ARRAY [*] OF FB_PayloadPropertySet;"¼	//myDataSetColumnsPool : ARRAY[*] OF LinkedListWStringElement; //Maybe combine with KeysPool?#t	//myDataSetTypesPool : ARRAY[*] OF FB_PayloadDataSetType;$f	//myRowsPool         : ARRAY [*] OF FB_PayloadRow;%n	//myElementsPool     : ARRAY [*] OF FB_PayloadElement;&n	myParametersPool   : ARRAY [*] OF FB_PayloadParameter;'ž	//myBodyPool         : ARRAY [*] OF BYTE; // for example Payload.Metric[].Body(VAR_OUTPUT)Z	xDecodeDone,xDecodeBusy,xDecodeError : BOOL;*,	eDecodeError : ERROR;+Z	xEncodeDone,xEncodeBusy,xEncodeError : BOOL;,,	eEncodeError : ERROR;-VAR.X	// Payload.metrics[].template_value.version/.    xHasVersion : BOOL;0.    sVersion : WSTRING;1Œ// Payload.metrics[].template_value.metrics[].   //(RECURSIVE Metrics)2n    aMetrics      :COL.LinkedList;//of FB_PayloadMetric3j// Payload.metrics[].template_value.parameters[].name4j// Payload.metrics[].template_value.parameters[].type5t// Payload.metrics[].template_value.parameters[].int_value6v// Payload.metrics[].template_value.parameters[].long_value7x// Payload.metrics[].template_value.parameters[].float_value8z// Payload.metrics[].template_value.parameters[].double_value9|// Payload.metrics[].template_value.parameters[].boolean_value:z// Payload.metrics[].template_value.parameters[].string_value;Ž// Payload.metrics[].template_value.parameters[].extension_value //none<z    aParameters      :COL.LinkedList;//of FB_PayloadParameter=`// Payload.metrics[].template_value.template_ref>8    xHasTemplate_ref : BOOL;?8    sTemplate_ref : WSTRING;@b// Payload.metrics[].template_value.is_definitionA:    xHasIs_definition : BOOL;B.	xIs_definition : BOOL;Cp// Payload.metrics[].template_value.extensions[]  //noneD"UniqueIdGeneratorE153FPOULevelGL{8e575c5b-1d37-49c6-941b-5c0ec7874787}HStandardI ChildObjectGuidsJ8System.Collections.ArrayListK,AddAttributeSubsequentLboolÐÐ-ÐÐ	E
 ÐÐ
­	ÚÐ-ÐÐ	E
-ÐÐ
­EÚÐ-ÐÐ
­HÚÐ-ÐÐ
­`ÚÐ-ÐÐ
­aÚÐ-ÐÐ
­fÚÐ-ÐÐ
­iÚÐ-ÐÐ
­jÚÐ-ÐÐ
­kÚÐ-ÐÐ
­lÚÐ-ÐÐ
­mÚÐ-ÐÐ
­oÚÐ-ÐÐ
­pÚÐ-ÐÐ
­qÚÐ-ÐÐ
­rÚÐ-ÐÐ
­sÚÐ- ÐÐ
­tÚÐ-!ÐÐ
­uÚÐ-"ÐÐ
­vÚÐ-#ÐÐ
­wÚÐ-$ÐÐ
­yÚÐ-%ÐÐ
­zÚÐ-&ÐÐ
­{ÚÐ-'ÐÐ
­|ÚÐ-(ÐÐ
­}ÚÐ-)ÐÐ
­~ÚÐ-*ÐÐ
­ÚÐ-+ÐÐ
­gÚÐ-,ÐÐ
­hÚÐ-Ð--.Ð/0-123Ð45­
\ No newline at end of file
+4ÐÐ
­EÚÐ-ÐÐ
­€ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­‚ÚÐ-ÐÐ
­ƒÚÐ-ÐÐ
­„ÚÐ-ÐÐ
­…ÚÐ-ÐÐ
­†ÚÐ-ÐÐ
­‡ÚÐ-ÐÐ
­ˆÚÐ-ÐÐ
­‰ÚÐ-ÐÐ
­ŠÚÐ-ÐÐ
­‹ÚÐ-ÐÐ
­ŒÚÐ- ÐÐ
­ÚÐ-!ÐÐ
­ŽÚÐ-"ÐÐ
­ÚÐ-#ÐÐ
­ÚÐ-$ÐÐ
­‘ÚÐ-%ÐÐ
­’ÚÐ-&ÐÐ
­“ÚÐ-'ÐÐ
­”ÚÐ-ÐÐ
­•ÚÐ-(ÐÐ
­–ÚÐ-)ÐÐ
­—ÚÐ-*ÐÐ
­˜ÚÐ-+ÐÐ
­™ÚÐ-,ÐÐ
­aÚÐ-ÐÐ
­fÚÐ--ÐÐ
­iÚÐ-.ÐÐ
­jÚÐ-/ÐÐ
­kÚÐ-0ÐÐ
­lÚÐ-1ÐÐ
­mÚÐ-2ÐÐ
­oÚÐ-3ÐÐ
­pÚÐ-4ÐÐ
­qÚÐ-5ÐÐ
­rÚÐ-6ÐÐ
­sÚÐ-7ÐÐ
­tÚÐ-8ÐÐ
­uÚÐ-9ÐÐ
­vÚÐ-:ÐÐ
­wÚÐ-;ÐÐ
­yÚÐ-<ÐÐ
­zÚÐ-=ÐÐ
­{ÚÐ->ÐÐ
­|ÚÐ-?ÐÐ
­}ÚÐ-@ÐÐ
­~ÚÐ-AÐÐ
­ÚÐ-BÐÐ
­gÚÐ-CÐÐ
­hÚÐ-ÐD-EÐFG-HIJÐKL­
\ No newline at end of file