Index: sources/model/hd/alarm/MAlarmTriggered.cpp =================================================================== diff -u -r27cc308ff5113a9386899d3c8f8b29962a8498e1 -r3561f79af1a92356eea01d5d0c3297c69d2ecdf2 --- sources/model/hd/alarm/MAlarmTriggered.cpp (.../MAlarmTriggered.cpp) (revision 27cc308ff5113a9386899d3c8f8b29962a8498e1) +++ sources/model/hd/alarm/MAlarmTriggered.cpp (.../MAlarmTriggered.cpp) (revision 3561f79af1a92356eea01d5d0c3297c69d2ecdf2) @@ -21,6 +21,34 @@ using namespace Model; +QVariantList MAlarmTriggered::parameters() const +{ + QVariantList params = MAbstractDynamic::parameters(); + params += _xata.mPriority .value; + params += _xata.mRank .value; + params += _xata.mClearTop .value; + return params; +} + +bool MAlarmTriggered::fromByteArray(const QByteArray &vByteArray, int *vIndex) +{ + int index = 0; // message data start position + if ( ! MAbstractDynamic::fromByteArray(vByteArray, &index)) + return false; + + index = _xata_start; // the message parameters are dynamic and the second set may not be sent + // and MAbstractDynamic returns true but since it hasn't have proper type it won't increment the index + // so the extra data (xata) needs to have its own start setup correctly. + if (GetValue(vByteArray, index, _xata.mPriority )) + if (GetValue(vByteArray, index, _xata.mRank )) + if (GetValue(vByteArray, index, _xata.mClearTop )) + return true ; + else { if(vIndex) *vIndex = index; return false; } + else { if(vIndex) *vIndex = index; return false; } + else { if(vIndex) *vIndex = index; return false; } + if ( vIndex ) *vIndex = index; +} + /*! * \brief MAlarmTriggered::data * \details Provides model's Data from the received messages data values @@ -29,16 +57,23 @@ MAlarmTriggered::Data MAlarmTriggered::data() const { Data data; data.mAlarmID = _data.mID .value; + data.mFieldDescriptor1 = _data.mFieldDescriptor1 .value; data.mDataFieldU1 = _data.mDataFieldU1 .value; data.mDataFieldS1 = _data.mDataFieldS1 .value; data.mDataFieldF1 = _data.mDataFieldF1 .value; data.mDataFieldB1 = _data.mDataFieldB1 .value ? true : false; + data.mFieldDescriptor2 = _data.mFieldDescriptor2 .value; data.mDataFieldU2 = _data.mDataFieldU2 .value; data.mDataFieldS2 = _data.mDataFieldS2 .value; data.mDataFieldF2 = _data.mDataFieldF2 .value; data.mDataFieldB2 = _data.mDataFieldB2 .value ? true : false; + + data.mPriority = _xata.mPriority .value; + data.mRank = _xata.mRank .value; + data.mClearTop = _xata.mClearTop .value ? true : false; + return data; }