Add startTimerRecording api to IHdmiControlService.

In order to support timer recording we need separate API,
startTimerRecording. Also added HdmiTimerRecordingSources
which is used to help creating timer recording information
such as timing information and program information.

Besides, in order to distinguish one touch record
and timer recording, rename startRecord with startOneTouchRecording.

Bug: 16160962
Change-Id: I8c3d4034665a2f84ddf07135aee73e17ac17cd82
diff --git a/core/java/android/hardware/hdmi/IHdmiControlService.aidl b/core/java/android/hardware/hdmi/IHdmiControlService.aidl
index 6f3763b..53b8b3f 100644
--- a/core/java/android/hardware/hdmi/IHdmiControlService.aidl
+++ b/core/java/android/hardware/hdmi/IHdmiControlService.aidl
@@ -55,13 +55,14 @@
     void setArcMode(boolean enabled);
     void setOption(int option, int value);
     void setProhibitMode(boolean enabled);
-    oneway void setSystemAudioVolume(int oldIndex, int newIndex, int maxIndex);
-    oneway void setSystemAudioMute(boolean mute);
+    void setSystemAudioVolume(int oldIndex, int newIndex, int maxIndex);
+    void setSystemAudioMute(boolean mute);
     void setInputChangeListener(IHdmiInputChangeListener listener);
     List<HdmiCecDeviceInfo> getInputDevices();
     void sendVendorCommand(int deviceType, int targetAddress, in byte[] params,
             boolean hasVendorId);
     void addVendorCommandListener(IHdmiVendorCommandListener listener, int deviceType);
-    void setRecordRequestListener(IHdmiRecordRequestListener listener);
-    void startRecord(int recorderAddress, in byte[] recordSource);
+    void setOneTouchRecordRequestListener(IHdmiRecordRequestListener listener);
+    void startOneTouchRecord(int recorderAddress, in byte[] recordSource);
+    void startTimerRecording(int recorderAddress, in byte[] recordSource);
 }