[r927]: / branches / develop / mqttsparkplug / mqttsparkplug / Sparkplug™ MQTT edge and host / Function Blocks / FB_Metric / FB_Property / svnobj  Maximize  Restore  History

Download this file

29 lines (27 with data), 5.4 kB

 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
//  tell it what datatype it should carry (which may NOT change during it's use), 
//  provide a process value 
//
// Example
// MyProperty : FB_Property;
// MyProperty.Key := "Property1"; // Choose a name (static)
// MyProperty.Value := TRUE; // Provide a value. Any process value changes are detected and signaled for sending automaticaly, you don't have to do anything special! 
{attribute 'call_after_init'}
    itfPropertyOwner : IPropertyOwner; // attach to a Property Owner, like an IMetric
END_VAR
VAR_OUTPUT
    {attribute 'no_copy'}
    itfProperty : IProperty := THIS^;
    _NotifyThem    : BOOL           := FALSE; // TRUE if the Value is changed in regard of the previous stored value  
	
	// IElement
    _itfPrev : IElement;
    _itfNext : IElement;
    _itfList : IList;
	//IValue
	_dataType : PropertyDataType := PropertyDataType.Unknown;
	_uLint    : ULINT;
	_lReal    : LREAL;
	_WSTRING  : WSTRING(gc_sparkplug.supported_string_lengths);
	//BYTES VALUE IS NOT IMPLEMENTED
IF THIS^.itfPropertyOwner <> 0 THEN
    itfPropertyOwner.RegisterProperty( THIS^ );
END_IF