[r818]: / branches / FeatureBranches / Debuglogging / SparkplugB / Functions / FindChanges / svnobj  Maximize  Restore  History

Download this file

5 lines (5 with data), 20.5 kB

Gx_lP!0…jüoÉ71$½Š‹ì$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
longTagTextDFindChanges     := ERROR.NO_ERROR;2ErrorDetected   := FALSE;2ChangeDetected  := FALSE;*NumberOfChanges := 0;vSysTimeRtc.SysTimeRtcHighResGet( pTimestamp := Timestamp );¸FOR Index := LOWER_BOUND( arSparkplugBoolean, 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 THENX            FindChanges   := AddMetricError;D            ErrorDetected := TRUE;        END_IF^        NumberOfChanges := NumberOfChanges + 1;l        arSparkplugBoolean[Index].AcknowledgeNotify();     END_IF!END_FOR"#¸FOR Index := LOWER_BOUND( arSparkplugDateTime,1 ) TO UPPER_BOUND( arSparkplugDateTime,1 ) DO$Z    IF arSparkplugDateTime[Index].Notify THEN%Ò                                                           SparkPlugObject := arSparkplugDateTime[Index],&n        arSparkplugDateTime[Index].AcknowledgeNotify();'°FOR Index := LOWER_BOUND( arSparkplugFloat, 1 ) TO UPPER_BOUND( arSparkplugFloat, 1 ) DO(T    IF arSparkplugFloat[Index].Notify THEN)Ì                                                           SparkPlugObject := arSparkplugFloat[Index],*h        arSparkplugFloat[Index].AcknowledgeNotify();+¶FOR Index := LOWER_BOUND( arSparkplugDouble, 1 ) TO UPPER_BOUND( arSparkplugDouble,  1 ) DO,V    IF arSparkplugDouble[Index].Notify THEN-Î                                                           SparkPlugObject := arSparkplugDouble[Index],.j        arSparkplugDouble[Index].AcknowledgeNotify();/¬FOR Index := LOWER_BOUND( arSparkplugInt8, 1 ) TO UPPER_BOUND( arSparkplugInt8, 1 ) DO0R    IF arSparkplugInt8[Index].Notify THEN1Ê                                                           SparkPlugObject := arSparkplugInt8[Index],2f        arSparkplugInt8[Index].AcknowledgeNotify();3°FOR Index := LOWER_BOUND( arSparkplugInt16, 1 ) TO UPPER_BOUND( arSparkplugInt16, 1 ) DO4T    IF arSparkplugInt16[Index].Notify THEN5Ì                                                           SparkPlugObject := arSparkplugInt16[Index],6h        arSparkplugInt16[Index].AcknowledgeNotify();7°FOR Index := LOWER_BOUND( arSparkplugInt32, 1 ) TO UPPER_BOUND( arSparkplugInt32, 1 ) DO8T    IF arSparkplugInt32[Index].Notify THEN9Ì                                                           SparkPlugObject := arSparkplugInt32[Index],:h        arSparkplugInt32[Index].AcknowledgeNotify();;°FOR Index := LOWER_BOUND( arSparkplugInt64, 1 ) TO UPPER_BOUND( arSparkplugInt64, 1 ) DO<T    IF arSparkplugInt64[Index].Notify THEN=Ì                                                           SparkPlugObject := arSparkplugInt64[Index],>h        arSparkplugInt64[Index].AcknowledgeNotify();?°FOR Index := LOWER_BOUND( arSparkplugUInt8, 1 ) TO UPPER_BOUND( arSparkplugUInt8, 1 ) DO@T    IF arSparkplugUInt8[Index].Notify THENAÌ                                                           SparkPlugObject := arSparkplugUInt8[Index],Bh        arSparkplugUInt8[Index].AcknowledgeNotify();C´FOR Index := LOWER_BOUND( arSparkplugUInt16, 1 ) TO UPPER_BOUND( arSparkplugUInt16, 1 ) DODV    IF arSparkplugUInt16[Index].Notify THENEÎ                                                           SparkPlugObject := arSparkplugUInt16[Index],Fj        arSparkplugUInt16[Index].AcknowledgeNotify();G´FOR Index := LOWER_BOUND( arSparkplugUInt32, 1 ) TO UPPER_BOUND( arSparkplugUInt32, 1 ) DOHV    IF arSparkplugUInt32[Index].Notify THENIÎ                                                           SparkPlugObject := arSparkplugUInt32[Index],Jj        arSparkplugUInt32[Index].AcknowledgeNotify();K´FOR Index := LOWER_BOUND( arSparkplugUInt64, 1 ) TO UPPER_BOUND( arSparkplugUInt64, 1 ) DOLV    IF arSparkplugUInt64[Index].Notify THENMÎ                                                           SparkPlugObject := arSparkplugUInt64[Index],Nj        arSparkplugUInt64[Index].AcknowledgeNotify();O¬FOR Index := LOWER_BOUND( arSparkplugUUID, 1 ) TO UPPER_BOUND( arSparkplugUUID, 1 ) DOPR    IF arSparkplugUUID[Index].Notify THENQÊ                                                           SparkPlugObject := arSparkplugUUID[Index],Rf        arSparkplugUUID[Index].AcknowledgeNotify();S¨FOR Index := LOWER_BOUND( arSparkplugText,1 ) TO UPPER_BOUND( arSparkplugText,1 ) DOTR    IF arSparkplugText[Index].Notify THENUÊ                                                           SparkPlugObject := arSparkplugText[Index],Vf        arSparkplugText[Index].AcknowledgeNotify();W´FOR Index := LOWER_BOUND( arSparkplugString, 1 ) TO UPPER_BOUND( arSparkplugString, 1 ) DOXV    IF arSparkplugString[Index].Notify THENYÎ                                                           SparkPlugObject := arSparkplugString[Index],Zj        arSparkplugString[Index].AcknowledgeNotify();[RChangeDetected := (NumberOfChanges <> 0);\Interface]L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}^(*_¨    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).`’    When the Element has been processed, the notifier gets acknowledged. aR    Be sure to run this code continously!b*)c${attribute 'hide'}d8FUNCTION FindChanges : ERROReVAR_IN_OUTft    arSparkplugBoolean  : ARRAY[*] OF FB_SparkplugBoolean;gv    arSparkplugDateTime : ARRAY[*] OF FB_SparkplugDateTime;hp    arSparkplugFloat    : ARRAY[*] OF FB_SparkplugFloat;ir    arSparkplugDouble   : ARRAY[*] OF FB_SparkplugDouble;jn    arSparkplugInt8     : ARRAY[*] OF FB_SparkplugInt8;kp    arSparkplugInt16    : ARRAY[*] OF FB_SparkplugInt16;lp    arSparkplugInt32    : ARRAY[*] OF FB_SparkplugInt32;mp    arSparkplugInt64    : ARRAY[*] OF FB_SparkplugInt64;np    arSparkplugUInt8    : ARRAY[*] OF FB_SparkplugUInt8;or    arSparkplugUInt16   : ARRAY[*] OF FB_SparkplugUInt16;pr    arSparkplugUInt32   : ARRAY[*] OF FB_SparkplugUInt32;qr    arSparkplugUInt64   : ARRAY[*] OF FB_SparkplugUInt64;rn    arSparkplugUUID     : ARRAY[*] OF FB_SparkplugUUID;sn    arSparkplugText     : ARRAY[*] OF FB_SparkplugText;tr    arSparkplugString   : ARRAY[*] OF FB_SparkplugString;u     AllMetricsList      : LIST; // AllMetricsList in which the changes are addedvEND_VARwVAR_INPUTxb    pSparkplugB : POINTER TO FB_SparkplugBSimple;yVAR_OUTPUTzš    ChangeDetected  : BOOL;  // At least one Signal change has been detected;{d    ErrorDetected   : BOOL;  // Some Error Occured|¶    NumberOfChanges : UDINT; // Number of detected changes, each changes reflects 1 Signal }VAR~4    Index          : DINT;@    TimeStamp      : T_DateTime;€6    AddMetricError : ERROR;"UniqueIdGenerator‚1914ƒPOULevel„L{8e575c5b-1d37-49c6-941b-5c0ec7874787}…Standard† ChildObjectGuids‡8System.Collections.ArrayListˆ,AddAttributeSubsequent‰boolÐÐ-ÐÐ	E
ØÐÐ
­hÚÐ-ÐÐ
­iÚÐ-ÐÐ
­jÚÐ-ÐÐ
­kÚÐ-ÐÐ
­lÚÐ-ÐÐ
­mÚÐ-ÐÐ
­pÚÐ-ÐÐ
­qÚÐ-ÐÐ
­rÚÐ-ÐÐ
­sÚÐ-ÐÐ
­uÚÐ-ÐÐ
­vÚÐ-ÐÐ
­wÚÐ-ÐÐ
­xÚÐ-ÐÐ
­zÚÐ-ÐÐ
­{ÚÐ-ÐÐ
­|ÚÐ- ÐÐ
­}ÚÐ-!ÐÐ
­~ÚÐ-"ÐÐ
­ÚÐ-#ÐÐ
­‚ÚÐ-$ÐÐ
­ƒÚÐ-ÐÐ
­„ÚÐ-%ÐÐ
­…ÚÐ-ÐÐ
­†ÚÐ-"ÐÐ
­‡ÚÐ-ÐÐ
­ˆÚÐ-ÐÐ
­‰ÚÐ-ÐÐ
­ŠÚÐ-ÐÐ
­ŒÚÐ-ÐÐ
­ÚÐ-&ÐÐ
­ŽÚÐ- ÐÐ
­ÚÐ-!ÐÐ
­ÚÐ-"ÐÐ
­‘ÚÐ-'ÐÐ
­”ÚÐ-(ÐÐ
­•ÚÐ-ÐÐ
­–ÚÐ-)ÐÐ
­—ÚÐ-ÐÐ
­™ÚÐ-ÐÐ
­šÚÐ-ÐÐ
­›ÚÐ-ÐÐ
­œÚÐ-ÐÐ
­žÚÐ-ÐÐ
­ŸÚÐ-*ÐÐ
­ ÚÐ- ÐÐ
­¡ÚÐ-!ÐÐ
­¢ÚÐ-"ÐÐ
­£ÚÐ-+ÐÐ
­¦ÚÐ-,ÐÐ
­§ÚÐ-ÐÐ
­¨ÚÐ--ÐÐ
­©ÚÐ-ÐÐ
­«ÚÐ-ÐÐ
­¬ÚÐ-ÐÐ
­­ÚÐ-ÐÐ
­®ÚÐ-ÐÐ
­°ÚÐ-ÐÐ
­±ÚÐ-.ÐÐ
­²ÚÐ- ÐÐ
­³ÚÐ-!ÐÐ
­´ÚÐ-"ÐÐ
­µÚÐ-/ÐÐ
­¸ÚÐ-0ÐÐ
­¹ÚÐ-ÐÐ
­ºÚÐ-1ÐÐ
­»ÚÐ-ÐÐ
­½ÚÐ-ÐÐ
­¾ÚÐ-ÐÐ
­¿ÚÐ-ÐÐ
­ÀÚÐ-ÐÐ
­ÂÚÐ-ÐÐ
­ÃÚÐ-2ÐÐ
­ÄÚÐ- ÐÐ
­ÅÚÐ-!ÐÐ
­ÆÚÐ-"ÐÐ
­ÇÚÐ-3ÐÐ
­ÊÚÐ-4ÐÐ
­ËÚÐ-ÐÐ
­ÌÚÐ-5ÐÐ
­ÍÚÐ-ÐÐ
­ÏÚÐ-ÐÐ
­ÐÚÐ-ÐÐ
­ÑÚÐ-ÐÐ
­ÒÚÐ-ÐÐ
­ÔÚÐ-ÐÐ
­ÕÚÐ-6ÐÐ
­ÖÚÐ- ÐÐ
­×ÚÐ-!ÐÐ
­ØÚÐ-"ÐÐ
­ÙÚÐ-7ÐÐ
­ÜÚÐ-8ÐÐ
­ÝÚÐ-ÐÐ
­ÞÚÐ-9ÐÐ
­ßÚÐ-ÐÐ
­áÚÐ-ÐÐ
­âÚÐ-ÐÐ
­ãÚÐ-ÐÐ
­äÚÐ-ÐÐ
­æÚÐ-ÐÐ
­çÚÐ-:ÐÐ
­èÚÐ- ÐÐ
­éÚÐ-!ÐÐ
­êÚÐ-"ÐÐ
­ëÚÐ-;ÐÐ
­îÚÐ-<ÐÐ
­ïÚÐ-ÐÐ
­ðÚÐ-=ÐÐ
­ñÚÐ-ÐÐ
­óÚÐ-ÐÐ
­ôÚÐ-ÐÐ
­õÚÐ-ÐÐ
­öÚÐ-ÐÐ
­øÚÐ-ÐÐ
­ùÚÐ->ÐÐ
­úÚÐ- ÐÐ
­ûÚÐ-!ÐÐ
­üÚÐ-"ÐÐ
­ýÚÐ-?ÐÐ
­ÚÐ-@ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-AÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­
ÚÐ-ÐÐ
­ÚÐ-BÐÐ
­ÚÐ- ÐÐ
­
ÚÐ-!ÐÐ
­ÚÐ-"ÐÐ
­ÚÐ-CÐÐ
­ÚÐ-DÐÐ
­ÚÐ-ÐÐ
­ÚÐ-EÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-FÐÐ
­ÚÐ- ÐÐ
­ÚÐ-!ÐÐ
­ ÚÐ-"ÐÐ
­!ÚÐ-GÐÐ
­$ÚÐ-HÐÐ
­%ÚÐ-ÐÐ
­&ÚÐ-IÐÐ
­'ÚÐ-ÐÐ
­)ÚÐ-ÐÐ
­*ÚÐ-ÐÐ
­+ÚÐ-ÐÐ
­,ÚÐ-ÐÐ
­.ÚÐ-ÐÐ
­/ÚÐ-JÐÐ
­0ÚÐ- ÐÐ
­1ÚÐ-!ÐÐ
­2ÚÐ-"ÐÐ
­3ÚÐ-KÐÐ
­6ÚÐ-LÐÐ
­7ÚÐ-ÐÐ
­8ÚÐ-MÐÐ
­9ÚÐ-ÐÐ
­;ÚÐ-ÐÐ
­<ÚÐ-ÐÐ
­=ÚÐ-ÐÐ
­>ÚÐ-ÐÐ
­@ÚÐ-ÐÐ
­AÚÐ-NÐÐ
­BÚÐ- ÐÐ
­CÚÐ-!ÐÐ
­DÚÐ-"ÐÐ
­EÚÐ-OÐÐ
­HÚÐ-PÐÐ
­IÚÐ-ÐÐ
­JÚÐ-QÐÐ
­KÚÐ-ÐÐ
­MÚÐ-ÐÐ
­NÚÐ-ÐÐ
­OÚÐ-ÐÐ
­PÚÐ-ÐÐ
­RÚÐ-ÐÐ
­SÚÐ-RÐÐ
­TÚÐ- ÐÐ
­UÚÐ-!ÐÐ
­VÚÐ-"ÐÐ
­WÚÐ-SÐÐ
­ZÚÐ-TÐÐ
­[ÚÐ-ÐÐ
­\ÚÐ-UÐÐ
­]ÚÐ-ÐÐ
­_ÚÐ-ÐÐ
­`ÚÐ-ÐÐ
­aÚÐ-ÐÐ
­bÚÐ-ÐÐ
­dÚÐ-ÐÐ
­eÚÐ-VÐÐ
­fÚÐ- ÐÐ
­gÚÐ-!ÐÐ
­hÚÐ-"ÐÐ
­iÚÐ-WÐÐ
­lÚÐ-XÐÐ
­mÚÐ-ÐÐ
­nÚÐ-YÐÐ
­oÚÐ-ÐÐ
­qÚÐ-ÐÐ
­rÚÐ-ÐÐ
­sÚÐ-ÐÐ
­tÚÐ-ÐÐ
­vÚÐ-ÐÐ
­wÚÐ-ZÐÐ
­xÚÐ- ÐÐ
­yÚÐ-!ÐÐ
­ÚÐ-[Ð\]Ð	E
&ÐÐ
­CÚÐ-^ÐÐ
­DÚÐ-_ÐÐ
­EÚÐ-`ÐÐ
­FÚÐ-aÐÐ
­GÚÐ-bÐÐ
­HÚÐ-cÐÐ
­IÚÐ-dÐÐ
­JÚÐ-eÐÐ
­KÚÐ-fÐÐ
­LÚÐ-gÐÐ
­MÚÐ-hÐÐ
­NÚÐ-iÐÐ
­OÚÐ-jÐÐ
­PÚÐ-kÐÐ
­QÚÐ-lÐÐ
­RÚÐ-mÐÐ
­SÚÐ-nÐÐ
­TÚÐ-oÐÐ
­UÚÐ-pÐÐ
­VÚÐ-qÐÐ
­WÚÐ-rÐÐ
­XÚÐ-sÐÐ
­YÚÐ-tÐÐ
­ZÚÐ-uÐÐ
­[ÚÐ-vÐÐ
­\ÚÐ-wÐÐ
­]ÚÐ-xÐÐ
­^ÚÐ-vÐÐ
­_ÚÐ-yÐÐ
­`ÚÐ-zÐÐ
­aÚÐ-{ÐÐ
­bÚÐ-|ÐÐ
­cÚÐ-vÐÐ
­dÚÐ-}ÐÐ
­eÚÐ-~ÐÐ
­fÚÐ-ÐÐ
­gÚÐ-€ÐÐ
­ÚÐ-vЁ-‚Ѓ„-…†‡Ј‰­