blob: 33838755d4700561081e0f86fb142d589f12dfbb [file] [log] [blame]
Scott Randolph46bc1282017-07-27 18:26:27 -07001#ifndef ANDROID_HARDWARE_AUTOMOTIVE_AUDIOCONTROL_V1_0_AUDIOCONTROL_H
2#define ANDROID_HARDWARE_AUTOMOTIVE_AUDIOCONTROL_V1_0_AUDIOCONTROL_H
3
4#include <android/hardware/automotive/audiocontrol/1.0/IAudioControl.h>
5#include <hidl/MQDescriptor.h>
6#include <hidl/Status.h>
7
8namespace android {
9namespace hardware {
10namespace automotive {
11namespace audiocontrol {
12namespace V1_0 {
13namespace implementation {
14
15using ::android::hardware::hidl_array;
16using ::android::hardware::hidl_memory;
17using ::android::hardware::hidl_string;
18using ::android::hardware::hidl_vec;
19using ::android::hardware::Return;
20using ::android::hardware::Void;
21using ::android::sp;
22
23struct AudioControl : public IAudioControl {
24public:
25 // Methods from ::android::hardware::automotive::audiocontrol::V1_0::IAudioControl follow.
26 Return<AudioResult> setCallback(const sp<IAudioControlCallback>& notificationObject) override;
27 Return<int32_t> getBusForContext(uint32_t contextNumber) override;
28 Return<void> setBalanceTowardRight(float value) override;
29 Return<void> setFadeTowardFront(float value) override;
30
31 // Implementation details
32 AudioControl();
33
34private:
35 sp<IAudioControlCallback> callback;
36};
37
38} // namespace implementation
39} // namespace V1_0
40} // namespace audiocontrol
41} // namespace automotive
42} // namespace hardware
43} // namespace android
44
45#endif // ANDROID_HARDWARE_AUTOMOTIVE_AUDIOCONTROL_V1_0_AUDIOCONTROL_H