What is the difference between the altiaCacheOuput() API function and the altiaCacheOutput built-in animation?
They do not have exactly the same behavior.
The altiaCacheOutput() API function does not suppress display updates as a result of timer events or regular stimulus. These automatically cause updates. This is the behavior for Altia Design, Runtime, and DeepScreen.
Another way to think of it is that the altiaCacheOutput() API function is only caching the specific client's events, not any other clients' events (for Altia Design or Runtime where there can be multiple clients) and not events generated internally by Altia (Design, Runtime, or DeepScreen). The intent of the altiaCacheOutput() API function is to minimize the transfer of data events from the client application to Altia. A side-effect is that display updates that would result from these events are suppressed while the data is being "cached" for transfer. Under the hood, there is more to it than this. This is an easy way to think of it.
The altiaCacheOutput built-in is much more aggressive. It suppresses updates from timer events, regular stimulus, and all clients. It has supreme power over the drawing universe! If the altiaCacheOutput built-in is set to 1 and never set back to 0, the Altia interface is visually dead (although it is happily cranking away under the hood and probably using very few CPU cycles).
So they are not exactly the same. As a matter of fact, client code might want to call the altiaCacheOutput built-in animation if it wants to shut down all forms of display updates.