Add TunerTimeFilter/Lnb interface and add openLnb in TunerService

Note that this CL also does some clean up on the namespace of
TunerService and TunerFrontend.

Also replaced the ITuner with IFrontend in TunerFrontend.

Test: make
Bug: 159067322
Change-Id: I3d32511a20b69b323331471c222762aa306a8eab
diff --git a/services/tuner/TunerService.h b/services/tuner/TunerService.h
index 021ed26..82b6fcd 100644
--- a/services/tuner/TunerService.h
+++ b/services/tuner/TunerService.h
@@ -28,6 +28,7 @@
 using ::aidl::android::hardware::common::fmq::SynchronizedReadWrite;
 using ::aidl::android::media::tv::tuner::BnTunerService;
 using ::aidl::android::media::tv::tuner::ITunerFrontend;
+using ::aidl::android::media::tv::tuner::ITunerLnb;
 using ::aidl::android::media::tv::tuner::TunerFrontendInfo;
 
 using ::android::hardware::details::logError;
@@ -55,8 +56,16 @@
 
 using Status = ::ndk::ScopedAStatus;
 
+using namespace std;
+
 namespace android {
 
+typedef enum {
+    FRONTEND,
+    LNB,
+    DEMUX,
+    DESCRAMBLER,
+} TunerResourceType;
 
 struct FilterCallback : public IFilterCallback {
     ~FilterCallback() {}
@@ -80,16 +89,18 @@
     virtual ~TunerService();
 
     // TODO: create a map between resource id and handles.
-    static int getResourceIdFromHandle(int resourceHandle) {
+    static int getResourceIdFromHandle(int resourceHandle, int /*type*/) {
         return (resourceHandle & 0x00ff0000) >> 16;
     }
 
-    Status getFrontendIds(std::vector<int32_t>* ids, int32_t* _aidl_return) override;
+    Status getFrontendIds(vector<int32_t>* ids, int32_t* _aidl_return) override;
     Status getFrontendInfo(int32_t frontendHandle, TunerFrontendInfo* _aidl_return) override;
     Status openFrontend(
-            int32_t frontendHandle, std::shared_ptr<ITunerFrontend>* _aidl_return) override;
+            int32_t frontendHandle, shared_ptr<ITunerFrontend>* _aidl_return) override;
     Status getFmqSyncReadWrite(
             MQDescriptor<int8_t, SynchronizedReadWrite>* mqDesc, bool* _aidl_return) override;
+    Status openLnb(int lnbHandle, shared_ptr<ITunerLnb>* _aidl_return) override;
+    Status openLnbByName(const string& lnbName, shared_ptr<ITunerLnb>* _aidl_return) override;
 
 private:
     template <typename HidlPayload, typename AidlPayload, typename AidlFlavor>