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 -t --min_sdk_version current -pout/soong/.intermediates/hardware/interfaces/power/aidl/android.hardware.power_interface/6/preprocessed.aidl --ninja -d out/soong/.intermediates/frameworks/base/core/java/android.os.hintmanager_aidl-ndk-source/gen/staging/android/os/IHintManager.cpp.d -h out/soong/.intermediates/frameworks/base/core/java/android.os.hintmanager_aidl-ndk-source/gen/include/staging -o out/soong/.intermediates/frameworks/base/core/java/android.os.hintmanager_aidl-ndk-source/gen/staging -Nframeworks/base/core/java frameworks/base/core/java/android/os/IHintManager.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/power/ChannelConfig.h>
18 #include <aidl/android/hardware/power/CpuHeadroomResult.h>
19 #include <aidl/android/hardware/power/GpuHeadroomResult.h>
20 #include <aidl/android/hardware/power/SessionConfig.h>
21 #include <aidl/android/hardware/power/SessionTag.h>
22 #include <aidl/android/os/CpuHeadroomParamsInternal.h>
23 #include <aidl/android/os/GpuHeadroomParamsInternal.h>
24 #include <aidl/android/os/IHintSession.h>
25 #include <aidl/android/os/SessionCreationConfig.h>
26 #ifdef BINDER_STABILITY_SUPPORT
27 #include <android/binder_stability.h>
28 #endif  // BINDER_STABILITY_SUPPORT
29 
30 namespace aidl::android::hardware::power {
31 class ChannelConfig;
32 class SessionConfig;
33 }  // namespace aidl::android::hardware::power
34 namespace aidl::android::os {
35 class CpuHeadroomParamsInternal;
36 class GpuHeadroomParamsInternal;
37 class IHintSession;
38 class SessionCreationConfig;
39 }  // namespace aidl::android::os
40 namespace aidl {
41 namespace android {
42 namespace os {
43 class IHintManagerDelegator;
44 
45 class IHintManager : public ::ndk::ICInterface {
46 public:
47   typedef IHintManagerDelegator DefaultDelegator;
48   static const char* descriptor;
49   IHintManager();
50   virtual ~IHintManager();
51 
52   static constexpr uint32_t TRANSACTION_createHintSessionWithConfig = FIRST_CALL_TRANSACTION + 0;
53   static constexpr uint32_t TRANSACTION_getHintSessionPreferredRate = FIRST_CALL_TRANSACTION + 1;
54   static constexpr uint32_t TRANSACTION_setHintSessionThreads = FIRST_CALL_TRANSACTION + 2;
55   static constexpr uint32_t TRANSACTION_getHintSessionThreadIds = FIRST_CALL_TRANSACTION + 3;
56   static constexpr uint32_t TRANSACTION_getSessionChannel = FIRST_CALL_TRANSACTION + 4;
57   static constexpr uint32_t TRANSACTION_closeSessionChannel = FIRST_CALL_TRANSACTION + 5;
58   static constexpr uint32_t TRANSACTION_getCpuHeadroom = FIRST_CALL_TRANSACTION + 6;
59   static constexpr uint32_t TRANSACTION_getCpuHeadroomMinIntervalMillis = FIRST_CALL_TRANSACTION + 7;
60   static constexpr uint32_t TRANSACTION_getGpuHeadroom = FIRST_CALL_TRANSACTION + 8;
61   static constexpr uint32_t TRANSACTION_getGpuHeadroomMinIntervalMillis = FIRST_CALL_TRANSACTION + 9;
62   static constexpr uint32_t TRANSACTION_getMaxGraphicsPipelineThreadsCount = FIRST_CALL_TRANSACTION + 10;
63   static constexpr uint32_t TRANSACTION_passSessionManagerBinder = FIRST_CALL_TRANSACTION + 11;
64 
65   static std::shared_ptr<IHintManager> fromBinder(const ::ndk::SpAIBinder& binder);
66   static binder_status_t writeToParcel(AParcel* parcel, const std::shared_ptr<IHintManager>& instance);
67   static binder_status_t readFromParcel(const AParcel* parcel, std::shared_ptr<IHintManager>* instance);
68   static bool setDefaultImpl(const std::shared_ptr<IHintManager>& impl);
69   static const std::shared_ptr<IHintManager>& getDefaultImpl();
70   virtual ::ndk::ScopedAStatus createHintSessionWithConfig(const ::ndk::SpAIBinder& in_token, ::aidl::android::hardware::power::SessionTag in_tag, const ::aidl::android::os::SessionCreationConfig& in_creationConfig, ::aidl::android::hardware::power::SessionConfig* out_config, std::shared_ptr<::aidl::android::os::IHintSession>* _aidl_return) = 0;
71   virtual ::ndk::ScopedAStatus getHintSessionPreferredRate(int64_t* _aidl_return) = 0;
72   virtual ::ndk::ScopedAStatus setHintSessionThreads(const std::shared_ptr<::aidl::android::os::IHintSession>& in_hintSession, const std::vector<int32_t>& in_tids) = 0;
73   virtual ::ndk::ScopedAStatus getHintSessionThreadIds(const std::shared_ptr<::aidl::android::os::IHintSession>& in_hintSession, std::vector<int32_t>* _aidl_return) = 0;
74   virtual ::ndk::ScopedAStatus getSessionChannel(const ::ndk::SpAIBinder& in_token, std::optional<::aidl::android::hardware::power::ChannelConfig>* _aidl_return) = 0;
75   virtual ::ndk::ScopedAStatus closeSessionChannel() = 0;
76   virtual ::ndk::ScopedAStatus getCpuHeadroom(const ::aidl::android::os::CpuHeadroomParamsInternal& in_params, std::optional<::aidl::android::hardware::power::CpuHeadroomResult>* _aidl_return) = 0;
77   virtual ::ndk::ScopedAStatus getCpuHeadroomMinIntervalMillis(int64_t* _aidl_return) = 0;
78   virtual ::ndk::ScopedAStatus getGpuHeadroom(const ::aidl::android::os::GpuHeadroomParamsInternal& in_params, std::optional<::aidl::android::hardware::power::GpuHeadroomResult>* _aidl_return) = 0;
79   virtual ::ndk::ScopedAStatus getGpuHeadroomMinIntervalMillis(int64_t* _aidl_return) = 0;
80   virtual ::ndk::ScopedAStatus getMaxGraphicsPipelineThreadsCount(int32_t* _aidl_return) = 0;
81   virtual ::ndk::ScopedAStatus passSessionManagerBinder(const ::ndk::SpAIBinder& in_sessionManager) = 0;
82 private:
83   static std::shared_ptr<IHintManager> default_impl;
84 };
85 class IHintManagerDefault : public IHintManager {
86 public:
87   ::ndk::ScopedAStatus createHintSessionWithConfig(const ::ndk::SpAIBinder& in_token, ::aidl::android::hardware::power::SessionTag in_tag, const ::aidl::android::os::SessionCreationConfig& in_creationConfig, ::aidl::android::hardware::power::SessionConfig* out_config, std::shared_ptr<::aidl::android::os::IHintSession>* _aidl_return) override;
88   ::ndk::ScopedAStatus getHintSessionPreferredRate(int64_t* _aidl_return) override;
89   ::ndk::ScopedAStatus setHintSessionThreads(const std::shared_ptr<::aidl::android::os::IHintSession>& in_hintSession, const std::vector<int32_t>& in_tids) override;
90   ::ndk::ScopedAStatus getHintSessionThreadIds(const std::shared_ptr<::aidl::android::os::IHintSession>& in_hintSession, std::vector<int32_t>* _aidl_return) override;
91   ::ndk::ScopedAStatus getSessionChannel(const ::ndk::SpAIBinder& in_token, std::optional<::aidl::android::hardware::power::ChannelConfig>* _aidl_return) override;
92   ::ndk::ScopedAStatus closeSessionChannel() override;
93   ::ndk::ScopedAStatus getCpuHeadroom(const ::aidl::android::os::CpuHeadroomParamsInternal& in_params, std::optional<::aidl::android::hardware::power::CpuHeadroomResult>* _aidl_return) override;
94   ::ndk::ScopedAStatus getCpuHeadroomMinIntervalMillis(int64_t* _aidl_return) override;
95   ::ndk::ScopedAStatus getGpuHeadroom(const ::aidl::android::os::GpuHeadroomParamsInternal& in_params, std::optional<::aidl::android::hardware::power::GpuHeadroomResult>* _aidl_return) override;
96   ::ndk::ScopedAStatus getGpuHeadroomMinIntervalMillis(int64_t* _aidl_return) override;
97   ::ndk::ScopedAStatus getMaxGraphicsPipelineThreadsCount(int32_t* _aidl_return) override;
98   ::ndk::ScopedAStatus passSessionManagerBinder(const ::ndk::SpAIBinder& in_sessionManager) override;
99   ::ndk::SpAIBinder asBinder() override;
100   bool isRemote() override;
101 };
102 }  // namespace os
103 }  // namespace android
104 }  // namespace aidl
105