added function property state

This commit is contained in:
Mike 2023-03-15 13:50:38 +01:00
parent d6348d2c80
commit cf73ec36a6
3 changed files with 21 additions and 0 deletions

View File

@ -171,5 +171,7 @@ class BusAccessUnit
#ifdef USE_FUNCTIONPROPERTYCALLBACK #ifdef USE_FUNCTIONPROPERTYCALLBACK
virtual void functionPropertyCallback(FunctionPropertyCallback func); virtual void functionPropertyCallback(FunctionPropertyCallback func);
virtual FunctionPropertyCallback functionPropertyCallback(); virtual FunctionPropertyCallback functionPropertyCallback();
virtual void functionPropertyStateCallback(FunctionPropertyCallback func);
virtual FunctionPropertyCallback functionPropertyStateCallback();
#endif #endif
}; };

View File

@ -341,7 +341,14 @@ void BauSystemB::functionPropertyStateIndication(Priority priority, HopCountType
} }
else else
{ {
#ifdef USE_FUNCTIONPROPERTYCALLBACK
if(_functionPropertyState != 0)
_functionPropertyState(objectIndex, propertyId, length, data, resultData, resultLength);
else
resultLength = 0;
#else
resultLength = 0; // We must not send a return code or any data fields resultLength = 0; // We must not send a return code or any data fields
#endif
} }
} }
@ -656,4 +663,13 @@ FunctionPropertyCallback BauSystemB::functionPropertyCallback()
{ {
return _functionProperty; return _functionProperty;
} }
void BauSystemB::functionPropertyStateCallback(FunctionPropertyCallback func)
{
_functionPropertyState = func;
}
FunctionPropertyCallback BauSystemB::functionPropertyStateCallback()
{
return _functionPropertyState;
}
#endif #endif

View File

@ -46,6 +46,8 @@ class BauSystemB : protected BusAccessUnit
#ifdef USE_FUNCTIONPROPERTYCALLBACK #ifdef USE_FUNCTIONPROPERTYCALLBACK
void functionPropertyCallback(FunctionPropertyCallback func); void functionPropertyCallback(FunctionPropertyCallback func);
FunctionPropertyCallback functionPropertyCallback(); FunctionPropertyCallback functionPropertyCallback();
void functionPropertyStateCallback(FunctionPropertyCallback func);
FunctionPropertyCallback functionPropertyStateCallback();
#endif #endif
protected: protected:
@ -119,5 +121,6 @@ class BauSystemB : protected BusAccessUnit
BeforeRestartCallback _beforeRestart = 0; BeforeRestartCallback _beforeRestart = 0;
#ifdef USE_FUNCTIONPROPERTYCALLBACK #ifdef USE_FUNCTIONPROPERTYCALLBACK
FunctionPropertyCallback _functionProperty = 0; FunctionPropertyCallback _functionProperty = 0;
FunctionPropertyCallback _functionPropertyState = 0;
#endif #endif
}; };