1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=ndk --structured --version 1 --hash d4c3897135ef9475dee2021ac39a41ae79c7690e -t --stability vintf --min_sdk_version 30 -pout/soong/.intermediates/hardware/interfaces/common/aidl/android.hardware.common_interface/2/preprocessed.aidl -pout/soong/.intermediates/hardware/interfaces/media/bufferpool/aidl/android.hardware.media.bufferpool2_interface/2/preprocessed.aidl --ninja -d out/soong/.intermediates/hardware/interfaces/media/c2/aidl/android.hardware.media.c2-V1-ndk-source/gen/staging/android/hardware/media/c2/FrameData.cpp.d -h out/soong/.intermediates/hardware/interfaces/media/c2/aidl/android.hardware.media.c2-V1-ndk-source/gen/include/staging -o out/soong/.intermediates/hardware/interfaces/media/c2/aidl/android.hardware.media.c2-V1-ndk-source/gen/staging -Iframeworks/native/aidl/gui -Iframeworks/base/core/java -Nhardware/interfaces/media/c2/aidl/aidl_api/android.hardware.media.c2/1 hardware/interfaces/media/c2/aidl/aidl_api/android.hardware.media.c2/1/android/hardware/media/c2/FrameData.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/hardware/media/c2/Buffer.h>
20 #include <aidl/android/hardware/media/c2/InfoBuffer.h>
21 #include <aidl/android/hardware/media/c2/Params.h>
22 #include <aidl/android/hardware/media/c2/WorkOrdinal.h>
23 #ifdef BINDER_STABILITY_SUPPORT
24 #include <android/binder_stability.h>
25 #endif  // BINDER_STABILITY_SUPPORT
26 
27 namespace aidl::android::hardware::media::c2 {
28 class Buffer;
29 class InfoBuffer;
30 class Params;
31 class WorkOrdinal;
32 }  // namespace aidl::android::hardware::media::c2
33 namespace aidl {
34 namespace android {
35 namespace hardware {
36 namespace media {
37 namespace c2 {
38 class FrameData {
39 public:
40   typedef std::false_type fixed_size;
41   static const char* descriptor;
42 
43   int32_t flags = 0;
44   ::aidl::android::hardware::media::c2::WorkOrdinal ordinal;
45   std::vector<::aidl::android::hardware::media::c2::Buffer> buffers;
46   ::aidl::android::hardware::media::c2::Params configUpdate;
47   std::vector<::aidl::android::hardware::media::c2::InfoBuffer> infoBuffers;
48 
49   binder_status_t readFromParcel(const AParcel* parcel);
50   binder_status_t writeToParcel(AParcel* parcel) const;
51 
52   inline bool operator==(const FrameData& _rhs) const {
53     return std::tie(flags, ordinal, buffers, configUpdate, infoBuffers) == std::tie(_rhs.flags, _rhs.ordinal, _rhs.buffers, _rhs.configUpdate, _rhs.infoBuffers);
54   }
55   inline bool operator<(const FrameData& _rhs) const {
56     return std::tie(flags, ordinal, buffers, configUpdate, infoBuffers) < std::tie(_rhs.flags, _rhs.ordinal, _rhs.buffers, _rhs.configUpdate, _rhs.infoBuffers);
57   }
58   inline bool operator!=(const FrameData& _rhs) const {
59     return !(*this == _rhs);
60   }
61   inline bool operator>(const FrameData& _rhs) const {
62     return _rhs < *this;
63   }
64   inline bool operator>=(const FrameData& _rhs) const {
65     return !(*this < _rhs);
66   }
67   inline bool operator<=(const FrameData& _rhs) const {
68     return !(_rhs < *this);
69   }
70 
71   static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF;
72   enum : int32_t { DROP_FRAME = 1 };
73   enum : int32_t { END_OF_STREAM = 2 };
74   enum : int32_t { DISCARD_FRAME = 4 };
75   enum : int32_t { FLAG_INCOMPLETE = 8 };
76   enum : int32_t { CODEC_CONFIG = -2147483648 };
toString()77   inline std::string toString() const {
78     std::ostringstream _aidl_os;
79     _aidl_os << "FrameData{";
80     _aidl_os << "flags: " << ::android::internal::ToString(flags);
81     _aidl_os << ", ordinal: " << ::android::internal::ToString(ordinal);
82     _aidl_os << ", buffers: " << ::android::internal::ToString(buffers);
83     _aidl_os << ", configUpdate: " << ::android::internal::ToString(configUpdate);
84     _aidl_os << ", infoBuffers: " << ::android::internal::ToString(infoBuffers);
85     _aidl_os << "}";
86     return _aidl_os.str();
87   }
88 };
89 }  // namespace c2
90 }  // namespace media
91 }  // namespace hardware
92 }  // namespace android
93 }  // namespace aidl
94