blob: 55f4831f679a17709bfbf153df522d07fffad047 [file] [log] [blame]
#ifndef HIDL_GENERATED_ANDROID_HIDL_BASE_V1_0_TYPES_H
#define HIDL_GENERATED_ANDROID_HIDL_BASE_V1_0_TYPES_H
#include <hidl/HidlSupport.h>
#include <hidl/MQDescriptor.h>
#include <utils/NativeHandle.h>
#include <utils/misc.h>
namespace android {
namespace hidl {
namespace base {
namespace V1_0 {
// Forward declaration for forward reference support:
struct DebugInfo;
/*
* The returned object for getDebugInfo.
* pid: pid of current process. -1 if not available.
* ptr: address of this object
* arch: 64bit or 32bit
*/
struct DebugInfo final {
// Forward declaration for forward reference support:
enum class Architecture : int32_t;
enum class Architecture : int32_t {
UNKNOWN = 0,
IS_64BIT = 1 /* ::android::hidl::base::V1_0::DebugInfo::Architecture.UNKNOWN implicitly + 1 */,
IS_32BIT = 2 /* ::android::hidl::base::V1_0::DebugInfo::Architecture.IS_64BIT implicitly + 1 */,
};
int32_t pid __attribute__ ((aligned(4)));
uint64_t ptr __attribute__ ((aligned(8)));
::android::hidl::base::V1_0::DebugInfo::Architecture arch __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hidl::base::V1_0::DebugInfo, pid) == 0, "wrong offset");
static_assert(offsetof(::android::hidl::base::V1_0::DebugInfo, ptr) == 8, "wrong offset");
static_assert(offsetof(::android::hidl::base::V1_0::DebugInfo, arch) == 16, "wrong offset");
static_assert(sizeof(::android::hidl::base::V1_0::DebugInfo) == 24, "wrong size");
static_assert(__alignof(::android::hidl::base::V1_0::DebugInfo) == 8, "wrong alignment");
//
// type declarations for package
//
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hidl::base::V1_0::DebugInfo::Architecture o);
static inline void PrintTo(::android::hidl::base::V1_0::DebugInfo::Architecture o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hidl::base::V1_0::DebugInfo::Architecture lhs, const ::android::hidl::base::V1_0::DebugInfo::Architecture rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hidl::base::V1_0::DebugInfo::Architecture rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hidl::base::V1_0::DebugInfo::Architecture lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hidl::base::V1_0::DebugInfo::Architecture lhs, const ::android::hidl::base::V1_0::DebugInfo::Architecture rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hidl::base::V1_0::DebugInfo::Architecture rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hidl::base::V1_0::DebugInfo::Architecture lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hidl::base::V1_0::DebugInfo::Architecture e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hidl::base::V1_0::DebugInfo::Architecture e) {
v &= static_cast<int32_t>(e);
return v;
}
static inline std::string toString(const ::android::hidl::base::V1_0::DebugInfo& o);
static inline void PrintTo(const ::android::hidl::base::V1_0::DebugInfo& o, ::std::ostream*);
static inline bool operator==(const ::android::hidl::base::V1_0::DebugInfo& lhs, const ::android::hidl::base::V1_0::DebugInfo& rhs);
static inline bool operator!=(const ::android::hidl::base::V1_0::DebugInfo& lhs, const ::android::hidl::base::V1_0::DebugInfo& rhs);
//
// type header definitions for package
//
template<>
inline std::string toString<::android::hidl::base::V1_0::DebugInfo::Architecture>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hidl::base::V1_0::DebugInfo::Architecture> flipped = 0;
bool first = true;
if ((o & ::android::hidl::base::V1_0::DebugInfo::Architecture::UNKNOWN) == static_cast<int32_t>(::android::hidl::base::V1_0::DebugInfo::Architecture::UNKNOWN)) {
os += (first ? "" : " | ");
os += "UNKNOWN";
first = false;
flipped |= ::android::hidl::base::V1_0::DebugInfo::Architecture::UNKNOWN;
}
if ((o & ::android::hidl::base::V1_0::DebugInfo::Architecture::IS_64BIT) == static_cast<int32_t>(::android::hidl::base::V1_0::DebugInfo::Architecture::IS_64BIT)) {
os += (first ? "" : " | ");
os += "IS_64BIT";
first = false;
flipped |= ::android::hidl::base::V1_0::DebugInfo::Architecture::IS_64BIT;
}
if ((o & ::android::hidl::base::V1_0::DebugInfo::Architecture::IS_32BIT) == static_cast<int32_t>(::android::hidl::base::V1_0::DebugInfo::Architecture::IS_32BIT)) {
os += (first ? "" : " | ");
os += "IS_32BIT";
first = false;
flipped |= ::android::hidl::base::V1_0::DebugInfo::Architecture::IS_32BIT;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hidl::base::V1_0::DebugInfo::Architecture o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hidl::base::V1_0::DebugInfo::Architecture::UNKNOWN) {
return "UNKNOWN";
}
if (o == ::android::hidl::base::V1_0::DebugInfo::Architecture::IS_64BIT) {
return "IS_64BIT";
}
if (o == ::android::hidl::base::V1_0::DebugInfo::Architecture::IS_32BIT) {
return "IS_32BIT";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hidl::base::V1_0::DebugInfo::Architecture o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hidl::base::V1_0::DebugInfo& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".pid = ";
os += ::android::hardware::toString(o.pid);
os += ", .ptr = ";
os += ::android::hardware::toString(o.ptr);
os += ", .arch = ";
os += ::android::hidl::base::V1_0::toString(o.arch);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hidl::base::V1_0::DebugInfo& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hidl::base::V1_0::DebugInfo& lhs, const ::android::hidl::base::V1_0::DebugInfo& rhs) {
if (lhs.pid != rhs.pid) {
return false;
}
if (lhs.ptr != rhs.ptr) {
return false;
}
if (lhs.arch != rhs.arch) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hidl::base::V1_0::DebugInfo& lhs, const ::android::hidl::base::V1_0::DebugInfo& rhs){
return !(lhs == rhs);
}
} // namespace V1_0
} // namespace base
} // namespace hidl
} // namespace android
//
// global type declarations for package
//
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hidl::base::V1_0::DebugInfo::Architecture, 3> hidl_enum_values<::android::hidl::base::V1_0::DebugInfo::Architecture> = {
::android::hidl::base::V1_0::DebugInfo::Architecture::UNKNOWN,
::android::hidl::base::V1_0::DebugInfo::Architecture::IS_64BIT,
::android::hidl::base::V1_0::DebugInfo::Architecture::IS_32BIT,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
#endif // HIDL_GENERATED_ANDROID_HIDL_BASE_V1_0_TYPES_H