[r656]: / branches / h-hermsen / mqttsparkplugb / SparkplugB / Functions / FindChanges / svnobj  Maximize  Restore  History

Download this file

5 lines (5 with data), 20.5 kB

Gx_lОO!0┘jЭo─7Ц╟DwG+─VSystem.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
longTagText<FindChanges := ERROR.NO_ERROR;.ErrorDetected := FALSE;0ChangeDetected := FALSE;*NumberOfChanges := 0;rSysTimeRtc.SysTimeRtcHighResGet(pTimestamp := Timestamp);іFOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugBoolean,1) DOX    IF arSparkplugBoolean[Index].Notify THENі        AddMetricError := pSparkplugB^._Encoder.AddMetric( TimeStamp := Timestamp, І                                              SparkPlugObject := arSparkplugBoolean[Index],╬                                              AllMetricsWhichWillEverReport := AllMetricsList);`        IF AddMetricError <> ERROR.NO_ERROR THENT            FindChanges := AddMetricError;D            ErrorDetected := TRUE;0		END_IF                ^        NumberOfChanges := NumberOfChanges + 1; l        arSparkplugBoolean[Index].AcknowledgeNotify();!	END_IF"END_FOR#╗FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugDateTime,1) DO$Z    IF arSparkplugDateTime[Index].Notify THEN%╦                                              SparkPlugObject := arSparkplugDateTime[Index],&n        arSparkplugDateTime[Index].AcknowledgeNotify();'	END_IF  (╒FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugFloat,1) DO)T    IF arSparkplugFloat[Index].Notify THEN*╡                                              SparkPlugObject := arSparkplugFloat[Index],+p        arSparkplugFloat[Index].AcknowledgeNotify();    ,єFOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugDouble,1) DO-V    IF arSparkplugDouble[Index].Notify THEN.Є                                              SparkPlugObject := arSparkplugDouble[Index],/н                                              AllMetricsWhichWillEverReport := AllMetricsList);        0r        arSparkplugDouble[Index].AcknowledgeNotify();    1═FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugInt8,1) DO2R    IF arSparkplugInt8[Index].Notify THEN3╟                                              SparkPlugObject := arSparkplugInt8[Index],4n        arSparkplugInt8[Index].AcknowledgeNotify();    5╒FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugInt16,1) DO6T    IF arSparkplugInt16[Index].Notify THEN7╡                                              SparkPlugObject := arSparkplugInt16[Index],8p        arSparkplugInt16[Index].AcknowledgeNotify();    9╒FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugInt32,1) DO:T    IF arSparkplugInt32[Index].Notify THEN;╡                                              SparkPlugObject := arSparkplugInt32[Index],<x        arSparkplugInt32[Index].AcknowledgeNotify();        =╒FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugInt64,1) DO>T    IF arSparkplugInt64[Index].Notify THEN?╡                                              SparkPlugObject := arSparkplugInt64[Index],@x        arSparkplugInt64[Index].AcknowledgeNotify();        A╒FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugUInt8,1) DOBT    IF arSparkplugUInt8[Index].Notify THENC╡                                              SparkPlugObject := arSparkplugUInt8[Index],Dx        arSparkplugUInt8[Index].AcknowledgeNotify();        EєFOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugUInt16,1) DOFV    IF arSparkplugUInt16[Index].Notify THENGЄ                                              SparkPlugObject := arSparkplugUInt16[Index],Hz        arSparkplugUInt16[Index].AcknowledgeNotify();        IєFOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugUInt32,1) DOJV    IF arSparkplugUInt32[Index].Notify THENKЄ                                              SparkPlugObject := arSparkplugUInt32[Index],Lz        arSparkplugUInt32[Index].AcknowledgeNotify();        MєFOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugUInt64,1) DONV    IF arSparkplugUInt64[Index].Notify THENOЄ                                              SparkPlugObject := arSparkplugUInt64[Index],Pz        arSparkplugUInt64[Index].AcknowledgeNotify();        Q═FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugUUID,1) DORR    IF arSparkplugUUID[Index].Notify THENS╟                                              SparkPlugObject := arSparkplugUUID[Index],Tv        arSparkplugUUID[Index].AcknowledgeNotify();        U═FOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugText,1) DOVR    IF arSparkplugText[Index].Notify THENW╟                                              SparkPlugObject := arSparkplugText[Index],X`        NumberOfChanges := NumberOfChanges + 1; Yv        arSparkplugText[Index].AcknowledgeNotify();        ZєFOR Index := LOWER_BOUND(arSparkplugInt8,1) TO UPPER_BOUND(arSparkplugString,1) DO[V    IF arSparkplugString[Index].Notify THEN\Є                                              SparkPlugObject := arSparkplugString[Index],]z        arSparkplugString[Index].AcknowledgeNotify();        ^RChangeDetected := (NumberOfChanges <> 0);_Interface`L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}a(*b╗    Parses every Array Element and adds it to the Encoder metrics List if the Element notifies a change (the value has been changed during runtime).c▓    When the Element has been processed, the notifier gets acknowledged. dR    Be sure to run this code continously!e*)f${attribute 'hide'}g8FUNCTION FindChanges : ERRORhVAR_IN_OUTit    arSparkplugBoolean : ARRAY [*] OF FB_SparkplugBoolean;jv    arSparkplugDateTime: ARRAY [*] OF FB_SparkplugDateTime;kp    arSparkplugFloat   : ARRAY [*] OF FB_SparkplugFloat;lz    arSparkplugDouble  : ARRAY [*] OF FB_SparkplugDouble;    mn    arSparkplugInt8    : ARRAY [*] OF FB_SparkplugInt8;n─    arSparkplugInt16   : ARRAY [*] OF FB_SparkplugInt16;        op    arSparkplugInt32   : ARRAY [*] OF FB_SparkplugInt32;pp    arSparkplugInt64   : ARRAY [*] OF FB_SparkplugInt64;qp    arSparkplugUInt8   : ARRAY [*] OF FB_SparkplugUInt8;r┌    arSparkplugUInt16  : ARRAY [*] OF FB_SparkplugUInt16;        sr    arSparkplugUInt32  : ARRAY [*] OF FB_SparkplugUInt32;tv    arSparkplugUInt64  : ARRAY [*] OF FB_SparkplugUInt64;  un    arSparkplugUUID    : ARRAY [*] OF FB_SparkplugUUID;vn    arSparkplugText    : ARRAY [*] OF FB_SparkplugText;w╡    arSparkplugString  : ARRAY [*] OF FB_SparkplugString;                                x√    AllMetricsList : LIST; // AllMetricsList in which the changes are addedyEND_VARzVAR_INPUT{b    pSparkplugB : POINTER TO FB_SparkplugBSimple;|VAR_OUTPUT}≤    ChangeDetected : BOOL;  // At least one Signal change has been detected;~^    ErrorDetected : BOOL; // Some Error OccuredІ    NumberOfChanges : UDINT; // Number of detected changes, each changes reflects 1 Signal ─VAR│"    Index : DINT;┌6    TimeStamp : T_DateTime;┐6    AddMetricError : ERROR;└"UniqueIdGenerator┘287├POULevel┤L{8e575c5b-1d37-49c6-941b-5c0ec7874787}┬Standard┴ ChildObjectGuids┼8System.Collections.ArrayList▀,AddAttributeSubsequent▄boolпп-пп	E
зпп
ґ'зп-пп
ґ(зп-пп
ґ)зп-пп
ґ*зп-пп
ґ+зп-пп
ґ,зп-пп
ґ-зп-пп
ґ.зп-пп
ґ/зп-пп
ґ0зп-пп
ґ1зп-пп
ґ2зп-пп
ґ3зп-пп
ґ4зп-пп
ґ5зп-пп
ґ6зп-пп
ґ7зп-пп
ґ8зп- пп
ґ9зп-!пп
ґ:зп-"пп
ґ;зп-пп
ґ<зп-#пп
ґ=зп-$пп
ґ>зп-пп
ґ?зп-%пп
ґ@зп-пп
ґAзп-пп
ґBзп-пп
ґCзп-пп
ґDзп-пп
ґEзп-пп
ґFзп-&пп
ґGзп-'пп
ґHзп-"пп
ґIзп-пп
ґJзп-(пп
ґKзп-)пп
ґLзп-пп
ґMзп-*пп
ґNзп-пп
ґOзп-пп
ґPзп-пп
ґQзп-пп
ґRзп-пп
ґSзп-пп
ґTзп-+пп
ґUзп-!пп
ґVзп-"пп
ґWзп-пп
ґXзп-,пп
ґYзп--пп
ґZзп-пп
ґ[зп-.пп
ґ\зп-/пп
ґ]зп-пп
ґ^зп-пп
ґ_зп-пп
ґ`зп-пп
ґaзп-пп
ґbзп-0пп
ґcзп-!пп
ґdзп-"пп
ґeзп-пп
ґfзп-1пп
ґgзп-2пп
ґhзп-пп
ґiзп-3пп
ґjзп-/пп
ґkзп-пп
ґlзп-пп
ґmзп-пп
ґnзп-пп
ґoзп-пп
ґpзп-4пп
ґqзп-!пп
ґrзп-"пп
ґsзп-пп
ґtзп-5пп
ґuзп-6пп
ґvзп-пп
ґwзп-7пп
ґxзп-/пп
ґyзп-пп
ґzзп-пп
ґ{зп-пп
ґ|зп-пп
ґ}зп-пп
ґ~зп-8пп
ґзп-!пп
ґ─зп-"пп
ґ│зп-пп
ґ┌зп-9пп
ґ┐зп-:пп
ґ└зп-пп
ґ┘зп-;пп
ґ├зп-/пп
ґ┤зп-пп
ґ┬зп-пп
ґ┴зп-пп
ґ┼зп-пп
ґ▀зп-пп
ґ▄зп-<пп
ґ█зп-!пп
ґ▌зп-"пп
ґ▐зп-пп
ґ░зп-=пп
ґ▒зп->пп
ґ▓зп-пп
ґ⌠зп-?пп
ґ■зп-/пп
ґ∙зп-пп
ґ√зп-пп
ґ≈зп-пп
ґ≤зп-пп
ґ≥зп-пп
ґ зп-@пп
ґ⌡зп-!пп
ґ°зп-"пп
ґ²зп-пп
ґ·зп-Aпп
ґ÷зп-Bпп
ґ═зп-пп
ґ║зп-Cпп
ґ╒зп-/пп
ґёзп-пп
ґєзп-пп
ґ╔зп-пп
ґізп-пп
ґїзп-пп
ґ╗зп-Dпп
ґ╘зп-!пп
ґ╙зп-"пп
ґ╚зп-пп
ґ╛зп-Eпп
ґґзп-Fпп
ґ╝зп-пп
ґ╞зп-Gпп
ґ╟зп-/пп
ґ╠зп-пп
ґ╡зп-пп
ґЁзп-пп
ґЄзп-пп
ґ╣зп-пп
ґІзп-Hпп
ґЇзп-!пп
ґ╦зп-"пп
ґ╧зп-пп
ґ╨зп-Iпп
ґ╩зп-Jпп
ґ╪зп-пп
ґҐзп-Kпп
ґ╬зп-/пп
ґ©зп-пп
ґюзп-пп
ґазп-пп
ґбзп-пп
ґцзп-пп
ґдзп-Lпп
ґезп-!пп
ґфзп-"пп
ґгзп-пп
ґхзп-Mпп
ґизп-Nпп
ґйзп-пп
ґкзп-Oпп
ґлзп-/пп
ґмзп-пп
ґнзп-пп
ґозп-пп
ґпзп-пп
ґязп-пп
ґрзп-Pпп
ґсзп-!пп
ґтзп-"пп
ґузп-пп
ґжзп-Qпп
ґвзп-Rпп
ґьзп-пп
ґызп-Sпп
ґззп-/пп
ґшзп-пп
ґэзп-пп
ґщзп-пп
ґчзп-пп
ґъзп-пп
ґЮзп-Tпп
ґАзп-!пп
ґБзп-"пп
ґЦзп-пп
ґДзп-Uпп
ґЕзп-Vпп
ґФзп-пп
ґГзп-Wпп
ґХзп-/пп
ґИзп-пп
ґЙзп-пп
ґКзп-пп
ґЛзп-пп
ґМзп-Xпп
ґНзп-Yпп
ґОзп-!пп
ґПзп-"пп
ґЯзп-пп
ґРзп-Zпп
ґСзп-[пп
ґТзп-пп
ґУзп-\пп
ґЖзп-/пп
ґВзп-пп
ґЬзп-пп
ґЫзп-пп
ґЗзп-пп
ґШзп-пп
ґЭзп-]пп
ґЩзп-!пп
ґЧзп-"пп
ґЪзп-пп
ґзп-^п_`п	E
&пп
ґ$зп-aпп
ґ%зп-bпп
ґзп-cпп
ґ&зп-dпп
ґ#зп-eпп
ґзп-fпп
ґзп-gпп
ґзп-hпп
ґзп-iпп
ґзп-jпп
ґзп-kпп
ґзп-lпп
ґзп-mпп
ґзп-nпп
ґзп-oпп
ґзп-pпп
ґ	зп-qпп
ґ
зп-rпп
ґзп-sпп
ґзп-tпп
ґ
зп-uпп
ґзп-vпп
ґзп-wпп
ґзп-xпп
ґзп-yпп
ґзп-zпп
ґзп-{пп
ґзп-yпп
ґзп-|пп
ґзп-}пп
ґзп-~пп
ґзп-пп
ґзп-yпп
ґзп-─пп
ґзп-│пп
ґзп-┌пп
ґзп-┐пп
ґзп-yп└-┘п├┤-┬┴┼п▀▄ґ