Implement config flags.
Bug: 69958423
Test: VTS
Change-Id: I6221d2bd2c6f1e31c93b105fce4cfc6d673e3b77
diff --git a/broadcastradio/2.0/ITunerSession.hal b/broadcastradio/2.0/ITunerSession.hal
index ae6cbb5..8a21768 100644
--- a/broadcastradio/2.0/ITunerSession.hal
+++ b/broadcastradio/2.0/ITunerSession.hal
@@ -77,6 +77,32 @@
cancel();
/**
+ * Fetches the current setting of a given config flag.
+ *
+ * The success/failure result must be consistent with setConfigFlag.
+ *
+ * @param flag Flag to fetch.
+ * @return result OK successfully fetched the flag.
+ * INVALID_STATE if the flag is not applicable right now.
+ * NOT_SUPPORTED if the flag is not supported at all.
+ * @return value The current value of the flag, if result is OK.
+ */
+ getConfigFlag(ConfigFlag flag) generates (Result result, bool value);
+
+ /**
+ * Sets the config flag.
+ *
+ * The success/failure result must be consistent with getConfigFlag.
+ *
+ * @param flag Flag to set.
+ * @param value The new value of a given flag.
+ * @return result OK successfully set the flag.
+ * INVALID_STATE if the flag is not applicable right now.
+ * NOT_SUPPORTED if the flag is not supported at all.
+ */
+ setConfigFlag(ConfigFlag flag, bool value) generates (Result result);
+
+ /**
* Generic method for setting vendor-specific parameter values.
* The framework does not interpret the parameters, they are passed
* in an opaque manner between a vendor application and HAL.