audio: Make StreamDescriptor::Command a union
Previously StreamDescriptor::Command used to be a parcelable holding a command code (enum) + a command argument which was used for one command only. This got replaced with an equivalent union, where each command w/o arguments is represented by a 'Void' variant, and the command with an argument with a variant of a corresponding type. This has the following benefits: - the union guarantees that the argument is only set for commands that actually use it, thus all related comments and validations can be removed; - the command dispatch can be turned into an exhaustive switch. To be able to use an exhaustive switch, the 'exit' command has been exposed at the interface, but marked as 'hal_reserved'. Bug: 205884982 Test: atest VtsHalAudioCoreTargetTest Change-Id: I3f2c27a48e4d0b7cfce1171244b2eddc1637005f
Loading
Please register or sign in to comment