Diff of /branches/develop/mqttsparkplug/mqttsparkplug/Sparkplug™ MQTT edge and host/Function Blocks/FB_WStringBuilder/FB_WStringBuilder/InsertAt/svnobj [r915] .. [r916]  Maximize  Restore

Switch to unified view

a/branches/develop/mqttsparkplug/mqttsparkplug/Sparkplug™ MQTT edge and host/Function Blocks/FB_WStringBuilder/FB_WStringBuilder/InsertAt/svnobj b/branches/develop/mqttsparkplug/mqttsparkplug/Sparkplug™ MQTT edge and host/Function Blocks/FB_WStringBuilder/FB_WStringBuilder/InsertAt/svnobj
1
Gx_l!0…jüoæà
1
Gx_lF!0…jüou
¡ØN©8JhíSystem.StringL{f8a58466-d7f6-439f-bbb8-d4600e41d099}ImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocumentL{f3878285-8e4f-490b-bb1b-9acbb7eb04db}TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}  Id
2
…ò.‹»System.StringL{f8a58466-d7f6-439f-bbb8-d4600e41d099}ImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocumentL{f3878285-8e4f-490b-bb1b-9acbb7eb04db}TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}  Id
2
longTagText
¬(************************************************************************************)P(* Init: internal pointer and counter *)H  pwTempDestStr := ADR(_workWSTRING);4   pwTempStr1      := ADR(Text);¬(*----------------------------------------------------------------------------------*)@CurrentLength    := THIS^.Len();XAdditionalLength := Stu.StrLenW(pwTempStr1);jTotalLength      := CurrentLength + AdditionalLength;V(* Loop: Move the rightmost to make room *)~FOR i := MIN(TotalLength,GC_sparkplug.supported_string_lengths)\     TO (Position + AdditionalLength) BY -1 DO~    pwTempDestStr[i -1] := pwTempDestStr[i -1 - AdditionalLength];END_FORD(* Loop: Insert additional Text *)FOR i := 0 ®     TO MIN(GC_sparkplug.supported_string_lengths - Position, AdditionalLength) BY 1 DOd  pwTempDestStr[Position + i - 1] := pwTempStr1[i];0(* Set: End of string *) š    pwTempDestStr[MIN(TotalLength,GC_sparkplug.supported_string_lengths)+1]:= 0;!.(* Set: Return value *)"& InsertAt := THIS^;#Interface$L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}%t// If there are too many characters to fit in the buffer, &// this funciton will always trim the rightmost charcaters of the result'BMETHOD InsertAt : IWSTRINGBuilder(&VAR_IN_OUT CONSTANT)t    Text : WSTRING(GC_sparkplug.supported_string_lengths);*END_VAR+VAR_INPUT,v    Position : INT; // to insert at the start, it will be 1-VAR.B    pwTempDestStr : POINTER TO WORD;/D pwTempStr1     : POINTER TO WORD;0   i : DINT;10   AdditionalLength: DINT;2*   CurrentLength: DINT;3& TotalLength: DINT;ÐÐÐE(ÐÐ  
3
longTagText
L_workWSTRING := WINSERT( _WorkWSTRING,<                         Text,H                         Position );$InsertAt := THIS^;InterfaceL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}BMETHOD InsertAt : IWSTRINGBuilderVAR_INPUT2    Text : WSTRING(4096);&    Position : INT;END_VARÐÐÐEÐÐ    
3
­QÚÐ-
ÐÐ  
4
­GÚÐ-
ÐÐ  
4
­RÚÐ-ÐÐ  
5
­:ÚÐ-ÐÐ  
5
­SÚÐ-
ÐÐ  
6
­;ÚÐ-ÐÐ  
6
­TÚÐ-ÐÐ  
7
­ÚÐ-ÐÐEÐÐ    
7
­UÚÐ-ÐÐ  
8
­5ÚÐ-ÐÐ  
8
­XÚÐ-ÐÐ  
9
­6ÚÐ-ÐÐ  
9
­YÚÐ-ÐÐ  
10
­7ÚÐ-ÐÐ  
10
­ZÚÐ-ÐÐ  
11
­8ÚÐ-ÐÐ  
11
­™ÚÐ-ÐÐ  
12
­ÚÐ-ÐÐ  
12
­žÚÐ-ÐÐ  
13
­?ÚÐ-
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
­˜ÚÐ-"ÐÐ  
41
­;ÚÐ-ÐÐ  
42
­ÚÐ-Ð#$ÐEÐÐ    
43
­ŸÚÐ-%ÐÐ  
44
­ ÚÐ-&ÐÐ  
45
­5ÚÐ-'ÐÐ  
46
­6ÚÐ-(ÐÐ  
47
­7ÚÐ-)ÐÐ  
48
­HÚÐ-*ÐÐ  
49
­IÚÐ-+ÐÐ  
50
­8ÚÐ-,ÐÐ  
51
­ÚÐ-*ÐÐ  
52
­šÚÐ-ÐÐ  
53
­›ÚÐ--ÐÐ  
54
­œÚÐ-.ÐÐ  
55
­®ÚÐ-/ÐÐ  
56
­¦ÚÐ-0ÐÐ  
57
­§ÚÐ-ÐÐ  
58
­¨ÚÐ-1ÐÐ  
59
­©ÚÐ-2ÐÐ  
60
­ªÚÐ-3ÐÐ  
61
­?ÚÐ-*