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 4 --hash notfrozen -t --stability vintf --min_sdk_version 33 --previous_api_dir=hardware/interfaces/contexthub/aidl/aidl_api/android.hardware.contexthub/3 --previous_hash 03f1982c8e20e58494a4ff8c9736b1c257dfeb6c --ninja -d out/soong/.intermediates/hardware/interfaces/contexthub/aidl/android.hardware.contexthub-V4-ndk-source/gen/staging/android/hardware/contexthub/NanoappBinary.cpp.d -h out/soong/.intermediates/hardware/interfaces/contexthub/aidl/android.hardware.contexthub-V4-ndk-source/gen/include/staging -o out/soong/.intermediates/hardware/interfaces/contexthub/aidl/android.hardware.contexthub-V4-ndk-source/gen/staging -Nhardware/interfaces/contexthub/aidl hardware/interfaces/contexthub/aidl/android/hardware/contexthub/NanoappBinary.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 <android/binder_parcelable_utils.h>
18 #include <android/binder_to_string.h>
19 #ifdef BINDER_STABILITY_SUPPORT
20 #include <android/binder_stability.h>
21 #endif  // BINDER_STABILITY_SUPPORT
22 
23 namespace aidl {
24 namespace android {
25 namespace hardware {
26 namespace contexthub {
27 class NanoappBinary {
28 public:
29   typedef std::false_type fixed_size;
30   static const char* descriptor;
31 
32   int64_t nanoappId = 0L;
33   int32_t nanoappVersion = 0;
34   int32_t flags = 0;
35   int8_t targetChreApiMajorVersion = 0;
36   int8_t targetChreApiMinorVersion = 0;
37   std::vector<uint8_t> customBinary;
38 
39   binder_status_t readFromParcel(const AParcel* parcel);
40   binder_status_t writeToParcel(AParcel* parcel) const;
41 
42   inline bool operator==(const NanoappBinary& _rhs) const {
43     return std::tie(nanoappId, nanoappVersion, flags, targetChreApiMajorVersion, targetChreApiMinorVersion, customBinary) == std::tie(_rhs.nanoappId, _rhs.nanoappVersion, _rhs.flags, _rhs.targetChreApiMajorVersion, _rhs.targetChreApiMinorVersion, _rhs.customBinary);
44   }
45   inline bool operator<(const NanoappBinary& _rhs) const {
46     return std::tie(nanoappId, nanoappVersion, flags, targetChreApiMajorVersion, targetChreApiMinorVersion, customBinary) < std::tie(_rhs.nanoappId, _rhs.nanoappVersion, _rhs.flags, _rhs.targetChreApiMajorVersion, _rhs.targetChreApiMinorVersion, _rhs.customBinary);
47   }
48   inline bool operator!=(const NanoappBinary& _rhs) const {
49     return !(*this == _rhs);
50   }
51   inline bool operator>(const NanoappBinary& _rhs) const {
52     return _rhs < *this;
53   }
54   inline bool operator>=(const NanoappBinary& _rhs) const {
55     return !(*this < _rhs);
56   }
57   inline bool operator<=(const NanoappBinary& _rhs) const {
58     return !(_rhs < *this);
59   }
60 
61   static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF;
62   enum : int32_t { FLAG_SIGNED = 1 };
63   enum : int32_t { FLAG_ENCRYPTED = 2 };
64   enum : int32_t { FLAG_TCM_CAPABLE = 4 };
toString()65   inline std::string toString() const {
66     std::ostringstream _aidl_os;
67     _aidl_os << "NanoappBinary{";
68     _aidl_os << "nanoappId: " << ::android::internal::ToString(nanoappId);
69     _aidl_os << ", nanoappVersion: " << ::android::internal::ToString(nanoappVersion);
70     _aidl_os << ", flags: " << ::android::internal::ToString(flags);
71     _aidl_os << ", targetChreApiMajorVersion: " << ::android::internal::ToString(targetChreApiMajorVersion);
72     _aidl_os << ", targetChreApiMinorVersion: " << ::android::internal::ToString(targetChreApiMinorVersion);
73     _aidl_os << ", customBinary: " << ::android::internal::ToString(customBinary);
74     _aidl_os << "}";
75     return _aidl_os.str();
76   }
77 };
78 }  // namespace contexthub
79 }  // namespace hardware
80 }  // namespace android
81 }  // namespace aidl
82