Since in generated C++ code class enums are used, the names of enum
values are scoped anyway, thus carrying the prefix only clutters
code.
For C enums, newly introduced "value_prefix" annotation is used
to add the required prefix.
Added annotations for effects HAL types are just informational,
but can be used would C headers generation ever be required.
Also:
- renamed AudioInputFlags -> AudioInputFlag for consistency;
- moved AUDIO_INTERLEAVE_... constants into their own enum.
Bug: 31800672
Change-Id: I5b325f3440e0057ca98c4617040c7e5a89d2283d
Test: make
Created after hardware/audio_effect.h with the following changes:
- names changed to satisfy HAL style guide;
- defined an interface per effect, an interface method
per command, and getter / setter methods for properties;
- retained methods for executing proprietary commands
and accessing proprietary properties, only to be used
for third-party software effects;
- HIDL vector type is used instead of count / array pairs;
- provider callback changed to be used over RPC;
- 'dump' is method is already defined by generated code.
Note that audio data is currently transferred using AudioBuffers,
which is not effective due to memory copy and HwBinder transaction
involved. The transfer method will be changed to FastMessageQueue.
Bug: 30222631
Test: make
Change-Id: Ic8ea5c19688610ebe642c7597d2bcfa3226977e7