1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=ndk -Weverything -Wno-missing-permission-annotation --structured --version 3 --hash notfrozen -t --stability vintf --min_sdk_version current -pout/soong/.intermediates/hardware/interfaces/common/aidl/android.hardware.common_interface/2/preprocessed.aidl -pout/soong/.intermediates/hardware/interfaces/common/fmq/aidl/android.hardware.common.fmq_interface/1/preprocessed.aidl --previous_api_dir=hardware/interfaces/tv/tuner/aidl/aidl_api/android.hardware.tv.tuner/2 --previous_hash f8d74c149f04e76b6d622db2bd8e465dae24b08c --ninja -d out/soong/.intermediates/hardware/interfaces/tv/tuner/aidl/android.hardware.tv.tuner-V3-ndk-source/gen/staging/android/hardware/tv/tuner/IDescrambler.cpp.d -h out/soong/.intermediates/hardware/interfaces/tv/tuner/aidl/android.hardware.tv.tuner-V3-ndk-source/gen/include/staging -o out/soong/.intermediates/hardware/interfaces/tv/tuner/aidl/android.hardware.tv.tuner-V3-ndk-source/gen/staging -Nhardware/interfaces/tv/tuner/aidl hardware/interfaces/tv/tuner/aidl/android/hardware/tv/tuner/IDescrambler.aidl
4  *
5  * DO NOT CHECK THIS FILE INTO A CODE TREE (e.g. git, etc..).
6  * ALWAYS GENERATE THIS FILE FROM UPDATED AIDL COMPILER
7  * AS A BUILD INTERMEDIATE ONLY. THIS IS NOT SOURCE CODE.
8  */
9 #pragma once
10 
11 #include <cstdint>
12 #include <memory>
13 #include <optional>
14 #include <string>
15 #include <vector>
16 #include <android/binder_interface_utils.h>
17 #include <aidl/android/hardware/tv/tuner/DemuxPid.h>
18 #include <aidl/android/hardware/tv/tuner/IFilter.h>
19 #ifdef BINDER_STABILITY_SUPPORT
20 #include <android/binder_stability.h>
21 #endif  // BINDER_STABILITY_SUPPORT
22 
23 namespace aidl::android::hardware::tv::tuner {
24 class IFilter;
25 }  // namespace aidl::android::hardware::tv::tuner
26 namespace aidl {
27 namespace android {
28 namespace hardware {
29 namespace tv {
30 namespace tuner {
31 class IDescramblerDelegator;
32 
33 class IDescrambler : public ::ndk::ICInterface {
34 public:
35   typedef IDescramblerDelegator DefaultDelegator;
36   static const char* descriptor;
37   IDescrambler();
38   virtual ~IDescrambler();
39 
40   static inline const int32_t version = true ? 2 : 3;
41   static inline const std::string hash = true ? "f8d74c149f04e76b6d622db2bd8e465dae24b08c" : "notfrozen";
42   static constexpr uint32_t TRANSACTION_setDemuxSource = FIRST_CALL_TRANSACTION + 0;
43   static constexpr uint32_t TRANSACTION_setKeyToken = FIRST_CALL_TRANSACTION + 1;
44   static constexpr uint32_t TRANSACTION_addPid = FIRST_CALL_TRANSACTION + 2;
45   static constexpr uint32_t TRANSACTION_removePid = FIRST_CALL_TRANSACTION + 3;
46   static constexpr uint32_t TRANSACTION_close = FIRST_CALL_TRANSACTION + 4;
47 
48   static std::shared_ptr<IDescrambler> fromBinder(const ::ndk::SpAIBinder& binder);
49   static binder_status_t writeToParcel(AParcel* parcel, const std::shared_ptr<IDescrambler>& instance);
50   static binder_status_t readFromParcel(const AParcel* parcel, std::shared_ptr<IDescrambler>* instance);
51   static bool setDefaultImpl(const std::shared_ptr<IDescrambler>& impl);
52   static const std::shared_ptr<IDescrambler>& getDefaultImpl();
53   virtual ::ndk::ScopedAStatus setDemuxSource(int32_t in_demuxId) = 0;
54   virtual ::ndk::ScopedAStatus setKeyToken(const std::vector<uint8_t>& in_keyToken) = 0;
55   virtual ::ndk::ScopedAStatus addPid(const ::aidl::android::hardware::tv::tuner::DemuxPid& in_pid, const std::shared_ptr<::aidl::android::hardware::tv::tuner::IFilter>& in_optionalSourceFilter) = 0;
56   virtual ::ndk::ScopedAStatus removePid(const ::aidl::android::hardware::tv::tuner::DemuxPid& in_pid, const std::shared_ptr<::aidl::android::hardware::tv::tuner::IFilter>& in_optionalSourceFilter) = 0;
57   virtual ::ndk::ScopedAStatus close() = 0;
58   virtual ::ndk::ScopedAStatus getInterfaceVersion(int32_t* _aidl_return) = 0;
59   virtual ::ndk::ScopedAStatus getInterfaceHash(std::string* _aidl_return) = 0;
60 private:
61   static std::shared_ptr<IDescrambler> default_impl;
62 };
63 class IDescramblerDefault : public IDescrambler {
64 public:
65   ::ndk::ScopedAStatus setDemuxSource(int32_t in_demuxId) override;
66   ::ndk::ScopedAStatus setKeyToken(const std::vector<uint8_t>& in_keyToken) override;
67   ::ndk::ScopedAStatus addPid(const ::aidl::android::hardware::tv::tuner::DemuxPid& in_pid, const std::shared_ptr<::aidl::android::hardware::tv::tuner::IFilter>& in_optionalSourceFilter) override;
68   ::ndk::ScopedAStatus removePid(const ::aidl::android::hardware::tv::tuner::DemuxPid& in_pid, const std::shared_ptr<::aidl::android::hardware::tv::tuner::IFilter>& in_optionalSourceFilter) override;
69   ::ndk::ScopedAStatus close() override;
70   ::ndk::ScopedAStatus getInterfaceVersion(int32_t* _aidl_return) override;
71   ::ndk::ScopedAStatus getInterfaceHash(std::string* _aidl_return) override;
72   ::ndk::SpAIBinder asBinder() override;
73   bool isRemote() override;
74 };
75 }  // namespace tuner
76 }  // namespace tv
77 }  // namespace hardware
78 }  // namespace android
79 }  // namespace aidl
80