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/IHintSession.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/IHintSession.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/WorkDuration.h>
18 #ifdef BINDER_STABILITY_SUPPORT
19 #include <android/binder_stability.h>
20 #endif  // BINDER_STABILITY_SUPPORT
21 
22 namespace aidl::android::hardware::power {
23 class WorkDuration;
24 }  // namespace aidl::android::hardware::power
25 namespace aidl {
26 namespace android {
27 namespace os {
28 class IHintSessionDelegator;
29 
30 class IHintSession : public ::ndk::ICInterface {
31 public:
32   typedef IHintSessionDelegator DefaultDelegator;
33   static const char* descriptor;
34   IHintSession();
35   virtual ~IHintSession();
36 
37   static constexpr uint32_t TRANSACTION_updateTargetWorkDuration = FIRST_CALL_TRANSACTION + 0;
38   static constexpr uint32_t TRANSACTION_reportActualWorkDuration = FIRST_CALL_TRANSACTION + 1;
39   static constexpr uint32_t TRANSACTION_close = FIRST_CALL_TRANSACTION + 2;
40   static constexpr uint32_t TRANSACTION_sendHint = FIRST_CALL_TRANSACTION + 3;
41   static constexpr uint32_t TRANSACTION_setMode = FIRST_CALL_TRANSACTION + 4;
42   static constexpr uint32_t TRANSACTION_reportActualWorkDuration2 = FIRST_CALL_TRANSACTION + 5;
43   static constexpr uint32_t TRANSACTION_associateToLayers = FIRST_CALL_TRANSACTION + 6;
44 
45   static std::shared_ptr<IHintSession> fromBinder(const ::ndk::SpAIBinder& binder);
46   static binder_status_t writeToParcel(AParcel* parcel, const std::shared_ptr<IHintSession>& instance);
47   static binder_status_t readFromParcel(const AParcel* parcel, std::shared_ptr<IHintSession>* instance);
48   static bool setDefaultImpl(const std::shared_ptr<IHintSession>& impl);
49   static const std::shared_ptr<IHintSession>& getDefaultImpl();
50   virtual ::ndk::ScopedAStatus updateTargetWorkDuration(int64_t in_targetDurationNanos) = 0;
51   virtual ::ndk::ScopedAStatus reportActualWorkDuration(const std::vector<int64_t>& in_actualDurationNanos, const std::vector<int64_t>& in_timeStampNanos) = 0;
52   virtual ::ndk::ScopedAStatus close() = 0;
53   virtual ::ndk::ScopedAStatus sendHint(int32_t in_hint) = 0;
54   virtual ::ndk::ScopedAStatus setMode(int32_t in_mode, bool in_enabled) = 0;
55   virtual ::ndk::ScopedAStatus reportActualWorkDuration2(const std::vector<::aidl::android::hardware::power::WorkDuration>& in_workDurations) = 0;
56   virtual ::ndk::ScopedAStatus associateToLayers(const std::vector<::ndk::SpAIBinder>& in_layerTokens) = 0;
57 private:
58   static std::shared_ptr<IHintSession> default_impl;
59 };
60 class IHintSessionDefault : public IHintSession {
61 public:
62   ::ndk::ScopedAStatus updateTargetWorkDuration(int64_t in_targetDurationNanos) override;
63   ::ndk::ScopedAStatus reportActualWorkDuration(const std::vector<int64_t>& in_actualDurationNanos, const std::vector<int64_t>& in_timeStampNanos) override;
64   ::ndk::ScopedAStatus close() override;
65   ::ndk::ScopedAStatus sendHint(int32_t in_hint) override;
66   ::ndk::ScopedAStatus setMode(int32_t in_mode, bool in_enabled) override;
67   ::ndk::ScopedAStatus reportActualWorkDuration2(const std::vector<::aidl::android::hardware::power::WorkDuration>& in_workDurations) override;
68   ::ndk::ScopedAStatus associateToLayers(const std::vector<::ndk::SpAIBinder>& in_layerTokens) override;
69   ::ndk::SpAIBinder asBinder() override;
70   bool isRemote() override;
71 };
72 }  // namespace os
73 }  // namespace android
74 }  // namespace aidl
75