Is this a divide by zero check? Should use if ( fabs(cpi) >= NEARLY_ZERO ) to do F32 divide by zero check. I don't know if cpi can be negative - probably not. But if it's zero or negative, should that be a s/w fault?
When an alarm is received, if it is high priority, a red notification dialog will be shown. If an alarm has been acknowledged by the user, it's not necessary to show the dialog every second as this will prevent the user from being able to continue using the application. So, a previously acknowledged alarm is not shown. alarmID is needed to obtain the value of that alarm ID prior to updating the Q_PROPERTY so that the QML doesn't show the previously acknowledged alarm
How many classes will use the new macros? Using too many macros to generate code (e.g. the signal slot connections) obfuscates the connections between classes. It adds many layers of indirection where the intent of the code is no longer clear since it is generated. I really don't see the benefit of adding even more. Just define these in their respective classes so when you view those classes you don't have to come here and deduce the written code.
This function starts the heater immediately. I think it's better practice to have a command/request function like this set a pending request flag or something like that and then have the exec state machine (when it is next called) check the flag and handle the state transition. This gives the exec complete control of its state machine and allows it to make the determination of whether or not it will allow the transition. Same comment on stop and on start/stop functions for trimmer heater.
This is the TI copyright that we got these API files originally. Yes, they are different from the other TI files that are generated by HALCoGen but they are still TI files and not ours. When I was working on the copyright script, I realized the script did not realize they are not our files and added our copyright. I enhanced the algorithm that checks whether a file belongs to Diality or not, so this issue will not happen. At the same time, I removed the Diality copyright. I am not sure why there is a "?" in their copyright that does not affect the script's parsing capabilities.
Clarification: The beauty of QML is that the MouseArea doesn't have to be bound to any sibling or even any object so it give a lot of flexibility in desin. To utilize this feature it has to be used that way.