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/packages/modules/Virtualization/android/virtualizationservice/aidl/android.system.virtualizationcommon_interface/preprocessed.aidl --ninja -d out/soong/.intermediates/packages/modules/Virtualization/android/virtualizationservice/aidl/android.system.virtualizationservice-ndk-source/gen/staging/android/system/virtualizationservice/VirtualMachineRawConfig.cpp.d -h out/soong/.intermediates/packages/modules/Virtualization/android/virtualizationservice/aidl/android.system.virtualizationservice-ndk-source/gen/include/staging -o out/soong/.intermediates/packages/modules/Virtualization/android/virtualizationservice/aidl/android.system.virtualizationservice-ndk-source/gen/staging -Npackages/modules/Virtualization/android/virtualizationservice/aidl packages/modules/Virtualization/android/virtualizationservice/aidl/android/system/virtualizationservice/VirtualMachineRawConfig.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 #include <aidl/android/system/virtualizationservice/AudioConfig.h>
20 #include <aidl/android/system/virtualizationservice/CpuTopology.h>
21 #include <aidl/android/system/virtualizationservice/DiskImage.h>
22 #include <aidl/android/system/virtualizationservice/DisplayConfig.h>
23 #include <aidl/android/system/virtualizationservice/GpuConfig.h>
24 #include <aidl/android/system/virtualizationservice/InputDevice.h>
25 #include <aidl/android/system/virtualizationservice/SharedPath.h>
26 #include <aidl/android/system/virtualizationservice/UsbConfig.h>
27 #ifdef BINDER_STABILITY_SUPPORT
28 #include <android/binder_stability.h>
29 #endif  // BINDER_STABILITY_SUPPORT
30 
31 namespace aidl::android::system::virtualizationservice {
32 class AudioConfig;
33 class DiskImage;
34 class DisplayConfig;
35 class GpuConfig;
36 class SharedPath;
37 class UsbConfig;
38 }  // namespace aidl::android::system::virtualizationservice
39 namespace aidl {
40 namespace android {
41 namespace system {
42 namespace virtualizationservice {
43 class VirtualMachineRawConfig {
44 public:
45   typedef std::false_type fixed_size;
46   static const char* descriptor;
47 
48   std::string name;
49   std::array<uint8_t, 64> instanceId = {{}};
50   ::ndk::ScopedFileDescriptor kernel;
51   ::ndk::ScopedFileDescriptor initrd;
52   std::optional<std::string> params;
53   ::ndk::ScopedFileDescriptor bootloader;
54   std::vector<::aidl::android::system::virtualizationservice::DiskImage> disks;
55   std::vector<::aidl::android::system::virtualizationservice::SharedPath> sharedPaths;
56   bool protectedVm = false;
57   int32_t memoryMib = 0;
58   ::aidl::android::system::virtualizationservice::CpuTopology cpuTopology = ::aidl::android::system::virtualizationservice::CpuTopology::ONE_CPU;
59   std::string platformVersion;
60   int32_t gdbPort = 0;
61   bool hugePages = false;
62   std::vector<std::string> devices;
63   std::optional<::aidl::android::system::virtualizationservice::DisplayConfig> displayConfig;
64   std::vector<::aidl::android::system::virtualizationservice::InputDevice> inputDevices;
65   bool networkSupported = false;
66   std::optional<std::string> consoleInputDevice;
67   bool boostUclamp = false;
68   std::optional<::aidl::android::system::virtualizationservice::GpuConfig> gpuConfig;
69   std::optional<::aidl::android::system::virtualizationservice::AudioConfig> audioConfig;
70   bool noBalloon = false;
71   std::optional<::aidl::android::system::virtualizationservice::UsbConfig> usbConfig;
72   std::vector<std::string> teeServices;
73 
74   binder_status_t readFromParcel(const AParcel* parcel);
75   binder_status_t writeToParcel(AParcel* parcel) const;
76 
77   inline bool operator==(const VirtualMachineRawConfig& _rhs) const {
78     return std::tie(name, instanceId, kernel, initrd, params, bootloader, disks, sharedPaths, protectedVm, memoryMib, cpuTopology, platformVersion, gdbPort, hugePages, devices, displayConfig, inputDevices, networkSupported, consoleInputDevice, boostUclamp, gpuConfig, audioConfig, noBalloon, usbConfig, teeServices) == std::tie(_rhs.name, _rhs.instanceId, _rhs.kernel, _rhs.initrd, _rhs.params, _rhs.bootloader, _rhs.disks, _rhs.sharedPaths, _rhs.protectedVm, _rhs.memoryMib, _rhs.cpuTopology, _rhs.platformVersion, _rhs.gdbPort, _rhs.hugePages, _rhs.devices, _rhs.displayConfig, _rhs.inputDevices, _rhs.networkSupported, _rhs.consoleInputDevice, _rhs.boostUclamp, _rhs.gpuConfig, _rhs.audioConfig, _rhs.noBalloon, _rhs.usbConfig, _rhs.teeServices);
79   }
80   inline bool operator<(const VirtualMachineRawConfig& _rhs) const {
81     return std::tie(name, instanceId, kernel, initrd, params, bootloader, disks, sharedPaths, protectedVm, memoryMib, cpuTopology, platformVersion, gdbPort, hugePages, devices, displayConfig, inputDevices, networkSupported, consoleInputDevice, boostUclamp, gpuConfig, audioConfig, noBalloon, usbConfig, teeServices) < std::tie(_rhs.name, _rhs.instanceId, _rhs.kernel, _rhs.initrd, _rhs.params, _rhs.bootloader, _rhs.disks, _rhs.sharedPaths, _rhs.protectedVm, _rhs.memoryMib, _rhs.cpuTopology, _rhs.platformVersion, _rhs.gdbPort, _rhs.hugePages, _rhs.devices, _rhs.displayConfig, _rhs.inputDevices, _rhs.networkSupported, _rhs.consoleInputDevice, _rhs.boostUclamp, _rhs.gpuConfig, _rhs.audioConfig, _rhs.noBalloon, _rhs.usbConfig, _rhs.teeServices);
82   }
83   inline bool operator!=(const VirtualMachineRawConfig& _rhs) const {
84     return !(*this == _rhs);
85   }
86   inline bool operator>(const VirtualMachineRawConfig& _rhs) const {
87     return _rhs < *this;
88   }
89   inline bool operator>=(const VirtualMachineRawConfig& _rhs) const {
90     return !(*this < _rhs);
91   }
92   inline bool operator<=(const VirtualMachineRawConfig& _rhs) const {
93     return !(_rhs < *this);
94   }
95 
96   static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_LOCAL;
toString()97   inline std::string toString() const {
98     std::ostringstream _aidl_os;
99     _aidl_os << "VirtualMachineRawConfig{";
100     _aidl_os << "name: " << ::android::internal::ToString(name);
101     _aidl_os << ", instanceId: " << ::android::internal::ToString(instanceId);
102     _aidl_os << ", kernel: " << ::android::internal::ToString(kernel);
103     _aidl_os << ", initrd: " << ::android::internal::ToString(initrd);
104     _aidl_os << ", params: " << ::android::internal::ToString(params);
105     _aidl_os << ", bootloader: " << ::android::internal::ToString(bootloader);
106     _aidl_os << ", disks: " << ::android::internal::ToString(disks);
107     _aidl_os << ", sharedPaths: " << ::android::internal::ToString(sharedPaths);
108     _aidl_os << ", protectedVm: " << ::android::internal::ToString(protectedVm);
109     _aidl_os << ", memoryMib: " << ::android::internal::ToString(memoryMib);
110     _aidl_os << ", cpuTopology: " << ::android::internal::ToString(cpuTopology);
111     _aidl_os << ", platformVersion: " << ::android::internal::ToString(platformVersion);
112     _aidl_os << ", gdbPort: " << ::android::internal::ToString(gdbPort);
113     _aidl_os << ", hugePages: " << ::android::internal::ToString(hugePages);
114     _aidl_os << ", devices: " << ::android::internal::ToString(devices);
115     _aidl_os << ", displayConfig: " << ::android::internal::ToString(displayConfig);
116     _aidl_os << ", inputDevices: " << ::android::internal::ToString(inputDevices);
117     _aidl_os << ", networkSupported: " << ::android::internal::ToString(networkSupported);
118     _aidl_os << ", consoleInputDevice: " << ::android::internal::ToString(consoleInputDevice);
119     _aidl_os << ", boostUclamp: " << ::android::internal::ToString(boostUclamp);
120     _aidl_os << ", gpuConfig: " << ::android::internal::ToString(gpuConfig);
121     _aidl_os << ", audioConfig: " << ::android::internal::ToString(audioConfig);
122     _aidl_os << ", noBalloon: " << ::android::internal::ToString(noBalloon);
123     _aidl_os << ", usbConfig: " << ::android::internal::ToString(usbConfig);
124     _aidl_os << ", teeServices: " << ::android::internal::ToString(teeServices);
125     _aidl_os << "}";
126     return _aidl_os.str();
127   }
128 };
129 }  // namespace virtualizationservice
130 }  // namespace system
131 }  // namespace android
132 }  // namespace aidl
133