HELLO·Android
系统源代码
IT资讯
技术文章
我的收藏
注册
登录
-
我收藏的文章
创建代码块
我的代码块
我的账号
Android 10
|
10.0.0_r6
下载
查看原文件
收藏
根目录
system
chre
host
common
include
chre_host
host_messages_generated.h
// automatically generated by the FlatBuffers compiler, do not modify #ifndef FLATBUFFERS_GENERATED_HOSTMESSAGES_CHRE_FBS_H_ #define FLATBUFFERS_GENERATED_HOSTMESSAGES_CHRE_FBS_H_ #include "flatbuffers/flatbuffers.h" namespace chre { namespace fbs { struct NanoappMessage; struct NanoappMessageT; struct HubInfoRequest; struct HubInfoRequestT; struct HubInfoResponse; struct HubInfoResponseT; struct NanoappListRequest; struct NanoappListRequestT; struct NanoappListEntry; struct NanoappListEntryT; struct NanoappListResponse; struct NanoappListResponseT; struct LoadNanoappRequest; struct LoadNanoappRequestT; struct LoadNanoappResponse; struct LoadNanoappResponseT; struct UnloadNanoappRequest; struct UnloadNanoappRequestT; struct UnloadNanoappResponse; struct UnloadNanoappResponseT; struct LogMessage; struct LogMessageT; struct TimeSyncMessage; struct TimeSyncMessageT; struct DebugDumpRequest; struct DebugDumpRequestT; struct DebugDumpData; struct DebugDumpDataT; struct DebugDumpResponse; struct DebugDumpResponseT; struct TimeSyncRequest; struct TimeSyncRequestT; struct LowPowerMicAccessRequest; struct LowPowerMicAccessRequestT; struct LowPowerMicAccessRelease; struct LowPowerMicAccessReleaseT; struct HostAddress; struct MessageContainer; struct MessageContainerT; /// A union that joins together all possible messages. Note that in FlatBuffers, /// unions have an implicit type enum class ChreMessage : uint8_t { NONE = 0, NanoappMessage = 1, HubInfoRequest = 2, HubInfoResponse = 3, NanoappListRequest = 4, NanoappListResponse = 5, LoadNanoappRequest = 6, LoadNanoappResponse = 7, UnloadNanoappRequest = 8, UnloadNanoappResponse = 9, LogMessage = 10, TimeSyncMessage = 11, DebugDumpRequest = 12, DebugDumpData = 13, DebugDumpResponse = 14, TimeSyncRequest = 15, LowPowerMicAccessRequest = 16, LowPowerMicAccessRelease = 17, MIN = NONE, MAX = LowPowerMicAccessRelease }; inline const char **EnumNamesChreMessage() { static const char *names[] = { "NONE", "NanoappMessage", "HubInfoRequest", "HubInfoResponse", "NanoappListRequest", "NanoappListResponse", "LoadNanoappRequest", "LoadNanoappResponse", "UnloadNanoappRequest", "UnloadNanoappResponse", "LogMessage", "TimeSyncMessage", "DebugDumpRequest", "DebugDumpData", "DebugDumpResponse", "TimeSyncRequest", "LowPowerMicAccessRequest", "LowPowerMicAccessRelease", nullptr }; return names; } inline const char *EnumNameChreMessage(ChreMessage e) { const size_t index = static_cast
(e); return EnumNamesChreMessage()[index]; } template
struct ChreMessageTraits { static const ChreMessage enum_value = ChreMessage::NONE; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::NanoappMessage; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::HubInfoRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::HubInfoResponse; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::NanoappListRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::NanoappListResponse; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::LoadNanoappRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::LoadNanoappResponse; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::UnloadNanoappRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::UnloadNanoappResponse; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::LogMessage; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::TimeSyncMessage; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::DebugDumpRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::DebugDumpData; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::DebugDumpResponse; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::TimeSyncRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::LowPowerMicAccessRequest; }; template<> struct ChreMessageTraits
{ static const ChreMessage enum_value = ChreMessage::LowPowerMicAccessRelease; }; struct ChreMessageUnion { ChreMessage type; flatbuffers::NativeTable *table; ChreMessageUnion() : type(ChreMessage::NONE), table(nullptr) {} ChreMessageUnion(ChreMessageUnion&& u): type(std::move(u.type)), table(std::move(u.table)) {} ChreMessageUnion(const ChreMessageUnion &); ChreMessageUnion &operator=(const ChreMessageUnion &); ~ChreMessageUnion() { Reset(); } void Reset(); template
void Set(T&& value) { Reset(); type = ChreMessageTraits
::enum_value; if (type != ChreMessage::NONE) { table = new T(std::forward
(value)); } } static flatbuffers::NativeTable *UnPack(const void *obj, ChreMessage type, const flatbuffers::resolver_function_t *resolver); flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const; NanoappMessageT *AsNanoappMessage() { return type == ChreMessage::NanoappMessage ? reinterpret_cast
(table) : nullptr; } HubInfoRequestT *AsHubInfoRequest() { return type == ChreMessage::HubInfoRequest ? reinterpret_cast
(table) : nullptr; } HubInfoResponseT *AsHubInfoResponse() { return type == ChreMessage::HubInfoResponse ? reinterpret_cast
(table) : nullptr; } NanoappListRequestT *AsNanoappListRequest() { return type == ChreMessage::NanoappListRequest ? reinterpret_cast
(table) : nullptr; } NanoappListResponseT *AsNanoappListResponse() { return type == ChreMessage::NanoappListResponse ? reinterpret_cast
(table) : nullptr; } LoadNanoappRequestT *AsLoadNanoappRequest() { return type == ChreMessage::LoadNanoappRequest ? reinterpret_cast
(table) : nullptr; } LoadNanoappResponseT *AsLoadNanoappResponse() { return type == ChreMessage::LoadNanoappResponse ? reinterpret_cast
(table) : nullptr; } UnloadNanoappRequestT *AsUnloadNanoappRequest() { return type == ChreMessage::UnloadNanoappRequest ? reinterpret_cast
(table) : nullptr; } UnloadNanoappResponseT *AsUnloadNanoappResponse() { return type == ChreMessage::UnloadNanoappResponse ? reinterpret_cast
(table) : nullptr; } LogMessageT *AsLogMessage() { return type == ChreMessage::LogMessage ? reinterpret_cast
(table) : nullptr; } TimeSyncMessageT *AsTimeSyncMessage() { return type == ChreMessage::TimeSyncMessage ? reinterpret_cast
(table) : nullptr; } DebugDumpRequestT *AsDebugDumpRequest() { return type == ChreMessage::DebugDumpRequest ? reinterpret_cast
(table) : nullptr; } DebugDumpDataT *AsDebugDumpData() { return type == ChreMessage::DebugDumpData ? reinterpret_cast
(table) : nullptr; } DebugDumpResponseT *AsDebugDumpResponse() { return type == ChreMessage::DebugDumpResponse ? reinterpret_cast
(table) : nullptr; } TimeSyncRequestT *AsTimeSyncRequest() { return type == ChreMessage::TimeSyncRequest ? reinterpret_cast
(table) : nullptr; } LowPowerMicAccessRequestT *AsLowPowerMicAccessRequest() { return type == ChreMessage::LowPowerMicAccessRequest ? reinterpret_cast
(table) : nullptr; } LowPowerMicAccessReleaseT *AsLowPowerMicAccessRelease() { return type == ChreMessage::LowPowerMicAccessRelease ? reinterpret_cast
(table) : nullptr; } }; bool VerifyChreMessage(flatbuffers::Verifier &verifier, const void *obj, ChreMessage type); bool VerifyChreMessageVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector
> *values, const flatbuffers::Vector
*types); MANUALLY_ALIGNED_STRUCT(2) HostAddress FLATBUFFERS_FINAL_CLASS { private: uint16_t client_id_; public: HostAddress() { memset(this, 0, sizeof(HostAddress)); } HostAddress(const HostAddress &_o) { memcpy(this, &_o, sizeof(HostAddress)); } HostAddress(uint16_t _client_id) : client_id_(flatbuffers::EndianScalar(_client_id)) { } uint16_t client_id() const { return flatbuffers::EndianScalar(client_id_); } void mutate_client_id(uint16_t _client_id) { flatbuffers::WriteScalar(&client_id_, _client_id); } }; STRUCT_END(HostAddress, 2); struct NanoappMessageT : public flatbuffers::NativeTable { typedef NanoappMessage TableType; uint64_t app_id; uint32_t message_type; uint16_t host_endpoint; std::vector
message; NanoappMessageT() : app_id(0), message_type(0), host_endpoint(65534) { } }; /// Represents a message sent to/from a nanoapp from/to a client on the host struct NanoappMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef NanoappMessageT NativeTableType; enum { VT_APP_ID = 4, VT_MESSAGE_TYPE = 6, VT_HOST_ENDPOINT = 8, VT_MESSAGE = 10 }; uint64_t app_id() const { return GetField
(VT_APP_ID, 0); } bool mutate_app_id(uint64_t _app_id) { return SetField(VT_APP_ID, _app_id); } uint32_t message_type() const { return GetField
(VT_MESSAGE_TYPE, 0); } bool mutate_message_type(uint32_t _message_type) { return SetField(VT_MESSAGE_TYPE, _message_type); } /// Identifies the host-side endpoint on the host that sent or should receive /// this message. The default value is a special value defined in the HAL and /// elsewhere that indicates that the endpoint is unspecified. uint16_t host_endpoint() const { return GetField
(VT_HOST_ENDPOINT, 65534); } bool mutate_host_endpoint(uint16_t _host_endpoint) { return SetField(VT_HOST_ENDPOINT, _host_endpoint); } /// Vector containing arbitrary application-specific message data const flatbuffers::Vector
*message() const { return GetPointer
*>(VT_MESSAGE); } flatbuffers::Vector
*mutable_message() { return GetPointer
*>(VT_MESSAGE); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField
(verifier, VT_APP_ID) && VerifyField
(verifier, VT_MESSAGE_TYPE) && VerifyField
(verifier, VT_HOST_ENDPOINT) && VerifyFieldRequired
(verifier, VT_MESSAGE) && verifier.Verify(message()) && verifier.EndTable(); } NanoappMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(NanoappMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const NanoappMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct NanoappMessageBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_app_id(uint64_t app_id) { fbb_.AddElement
(NanoappMessage::VT_APP_ID, app_id, 0); } void add_message_type(uint32_t message_type) { fbb_.AddElement
(NanoappMessage::VT_MESSAGE_TYPE, message_type, 0); } void add_host_endpoint(uint16_t host_endpoint) { fbb_.AddElement
(NanoappMessage::VT_HOST_ENDPOINT, host_endpoint, 65534); } void add_message(flatbuffers::Offset
> message) { fbb_.AddOffset(NanoappMessage::VT_MESSAGE, message); } NanoappMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } NanoappMessageBuilder &operator=(const NanoappMessageBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 4); auto o = flatbuffers::Offset
(end); fbb_.Required(o, NanoappMessage::VT_MESSAGE); return o; } }; inline flatbuffers::Offset
CreateNanoappMessage( flatbuffers::FlatBufferBuilder &_fbb, uint64_t app_id = 0, uint32_t message_type = 0, uint16_t host_endpoint = 65534, flatbuffers::Offset
> message = 0) { NanoappMessageBuilder builder_(_fbb); builder_.add_app_id(app_id); builder_.add_message(message); builder_.add_message_type(message_type); builder_.add_host_endpoint(host_endpoint); return builder_.Finish(); } inline flatbuffers::Offset
CreateNanoappMessageDirect( flatbuffers::FlatBufferBuilder &_fbb, uint64_t app_id = 0, uint32_t message_type = 0, uint16_t host_endpoint = 65534, const std::vector
*message = nullptr) { return chre::fbs::CreateNanoappMessage( _fbb, app_id, message_type, host_endpoint, message ? _fbb.CreateVector
(*message) : 0); } flatbuffers::Offset
CreateNanoappMessage(flatbuffers::FlatBufferBuilder &_fbb, const NanoappMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct HubInfoRequestT : public flatbuffers::NativeTable { typedef HubInfoRequest TableType; HubInfoRequestT() { } }; struct HubInfoRequest FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef HubInfoRequestT NativeTableType; bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && verifier.EndTable(); } HubInfoRequestT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(HubInfoRequestT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const HubInfoRequestT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct HubInfoRequestBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; HubInfoRequestBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } HubInfoRequestBuilder &operator=(const HubInfoRequestBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 0); auto o = flatbuffers::Offset
(end); return o; } }; inline flatbuffers::Offset
CreateHubInfoRequest( flatbuffers::FlatBufferBuilder &_fbb) { HubInfoRequestBuilder builder_(_fbb); return builder_.Finish(); } flatbuffers::Offset
CreateHubInfoRequest(flatbuffers::FlatBufferBuilder &_fbb, const HubInfoRequestT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct HubInfoResponseT : public flatbuffers::NativeTable { typedef HubInfoResponse TableType; std::vector
name; std::vector
vendor; std::vector
toolchain; uint32_t platform_version; uint32_t toolchain_version; float peak_mips; float stopped_power; float sleep_power; float peak_power; uint32_t max_msg_len; uint64_t platform_id; uint32_t chre_platform_version; HubInfoResponseT() : platform_version(0), toolchain_version(0), peak_mips(0.0f), stopped_power(0.0f), sleep_power(0.0f), peak_power(0.0f), max_msg_len(0), platform_id(0), chre_platform_version(0) { } }; struct HubInfoResponse FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef HubInfoResponseT NativeTableType; enum { VT_NAME = 4, VT_VENDOR = 6, VT_TOOLCHAIN = 8, VT_PLATFORM_VERSION = 10, VT_TOOLCHAIN_VERSION = 12, VT_PEAK_MIPS = 14, VT_STOPPED_POWER = 16, VT_SLEEP_POWER = 18, VT_PEAK_POWER = 20, VT_MAX_MSG_LEN = 22, VT_PLATFORM_ID = 24, VT_CHRE_PLATFORM_VERSION = 26 }; /// The name of the hub. Nominally a UTF-8 string, but note that we're not /// using the built-in "string" data type from FlatBuffers here, because the /// generated C++ uses std::string which is not well-supported in CHRE. This /// applies for vendor and toolchain as well. const flatbuffers::Vector
*name() const { return GetPointer
*>(VT_NAME); } flatbuffers::Vector
*mutable_name() { return GetPointer
*>(VT_NAME); } const flatbuffers::Vector
*vendor() const { return GetPointer
*>(VT_VENDOR); } flatbuffers::Vector
*mutable_vendor() { return GetPointer
*>(VT_VENDOR); } const flatbuffers::Vector
*toolchain() const { return GetPointer
*>(VT_TOOLCHAIN); } flatbuffers::Vector
*mutable_toolchain() { return GetPointer
*>(VT_TOOLCHAIN); } /// Legacy platform version reported in the HAL; semantics not strictly /// defined uint32_t platform_version() const { return GetField
(VT_PLATFORM_VERSION, 0); } bool mutate_platform_version(uint32_t _platform_version) { return SetField(VT_PLATFORM_VERSION, _platform_version); } /// Toolchain version reported in the HAL; semantics not strictly defined uint32_t toolchain_version() const { return GetField
(VT_TOOLCHAIN_VERSION, 0); } bool mutate_toolchain_version(uint32_t _toolchain_version) { return SetField(VT_TOOLCHAIN_VERSION, _toolchain_version); } float peak_mips() const { return GetField
(VT_PEAK_MIPS, 0.0f); } bool mutate_peak_mips(float _peak_mips) { return SetField(VT_PEAK_MIPS, _peak_mips); } float stopped_power() const { return GetField
(VT_STOPPED_POWER, 0.0f); } bool mutate_stopped_power(float _stopped_power) { return SetField(VT_STOPPED_POWER, _stopped_power); } float sleep_power() const { return GetField
(VT_SLEEP_POWER, 0.0f); } bool mutate_sleep_power(float _sleep_power) { return SetField(VT_SLEEP_POWER, _sleep_power); } float peak_power() const { return GetField
(VT_PEAK_POWER, 0.0f); } bool mutate_peak_power(float _peak_power) { return SetField(VT_PEAK_POWER, _peak_power); } /// Maximum size message that can be sent to a nanoapp uint32_t max_msg_len() const { return GetField
(VT_MAX_MSG_LEN, 0); } bool mutate_max_msg_len(uint32_t _max_msg_len) { return SetField(VT_MAX_MSG_LEN, _max_msg_len); } /// @see chreGetPlatformId() uint64_t platform_id() const { return GetField
(VT_PLATFORM_ID, 0); } bool mutate_platform_id(uint64_t _platform_id) { return SetField(VT_PLATFORM_ID, _platform_id); } /// @see chreGetVersion() uint32_t chre_platform_version() const { return GetField
(VT_CHRE_PLATFORM_VERSION, 0); } bool mutate_chre_platform_version(uint32_t _chre_platform_version) { return SetField(VT_CHRE_PLATFORM_VERSION, _chre_platform_version); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField
(verifier, VT_NAME) && verifier.Verify(name()) && VerifyField
(verifier, VT_VENDOR) && verifier.Verify(vendor()) && VerifyField
(verifier, VT_TOOLCHAIN) && verifier.Verify(toolchain()) && VerifyField
(verifier, VT_PLATFORM_VERSION) && VerifyField
(verifier, VT_TOOLCHAIN_VERSION) && VerifyField
(verifier, VT_PEAK_MIPS) && VerifyField
(verifier, VT_STOPPED_POWER) && VerifyField
(verifier, VT_SLEEP_POWER) && VerifyField
(verifier, VT_PEAK_POWER) && VerifyField
(verifier, VT_MAX_MSG_LEN) && VerifyField
(verifier, VT_PLATFORM_ID) && VerifyField
(verifier, VT_CHRE_PLATFORM_VERSION) && verifier.EndTable(); } HubInfoResponseT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(HubInfoResponseT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const HubInfoResponseT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct HubInfoResponseBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_name(flatbuffers::Offset
> name) { fbb_.AddOffset(HubInfoResponse::VT_NAME, name); } void add_vendor(flatbuffers::Offset
> vendor) { fbb_.AddOffset(HubInfoResponse::VT_VENDOR, vendor); } void add_toolchain(flatbuffers::Offset
> toolchain) { fbb_.AddOffset(HubInfoResponse::VT_TOOLCHAIN, toolchain); } void add_platform_version(uint32_t platform_version) { fbb_.AddElement
(HubInfoResponse::VT_PLATFORM_VERSION, platform_version, 0); } void add_toolchain_version(uint32_t toolchain_version) { fbb_.AddElement
(HubInfoResponse::VT_TOOLCHAIN_VERSION, toolchain_version, 0); } void add_peak_mips(float peak_mips) { fbb_.AddElement
(HubInfoResponse::VT_PEAK_MIPS, peak_mips, 0.0f); } void add_stopped_power(float stopped_power) { fbb_.AddElement
(HubInfoResponse::VT_STOPPED_POWER, stopped_power, 0.0f); } void add_sleep_power(float sleep_power) { fbb_.AddElement
(HubInfoResponse::VT_SLEEP_POWER, sleep_power, 0.0f); } void add_peak_power(float peak_power) { fbb_.AddElement
(HubInfoResponse::VT_PEAK_POWER, peak_power, 0.0f); } void add_max_msg_len(uint32_t max_msg_len) { fbb_.AddElement
(HubInfoResponse::VT_MAX_MSG_LEN, max_msg_len, 0); } void add_platform_id(uint64_t platform_id) { fbb_.AddElement
(HubInfoResponse::VT_PLATFORM_ID, platform_id, 0); } void add_chre_platform_version(uint32_t chre_platform_version) { fbb_.AddElement
(HubInfoResponse::VT_CHRE_PLATFORM_VERSION, chre_platform_version, 0); } HubInfoResponseBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } HubInfoResponseBuilder &operator=(const HubInfoResponseBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 12); auto o = flatbuffers::Offset
(end); return o; } }; inline flatbuffers::Offset
CreateHubInfoResponse( flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset
> name = 0, flatbuffers::Offset
> vendor = 0, flatbuffers::Offset
> toolchain = 0, uint32_t platform_version = 0, uint32_t toolchain_version = 0, float peak_mips = 0.0f, float stopped_power = 0.0f, float sleep_power = 0.0f, float peak_power = 0.0f, uint32_t max_msg_len = 0, uint64_t platform_id = 0, uint32_t chre_platform_version = 0) { HubInfoResponseBuilder builder_(_fbb); builder_.add_platform_id(platform_id); builder_.add_chre_platform_version(chre_platform_version); builder_.add_max_msg_len(max_msg_len); builder_.add_peak_power(peak_power); builder_.add_sleep_power(sleep_power); builder_.add_stopped_power(stopped_power); builder_.add_peak_mips(peak_mips); builder_.add_toolchain_version(toolchain_version); builder_.add_platform_version(platform_version); builder_.add_toolchain(toolchain); builder_.add_vendor(vendor); builder_.add_name(name); return builder_.Finish(); } inline flatbuffers::Offset
CreateHubInfoResponseDirect( flatbuffers::FlatBufferBuilder &_fbb, const std::vector
*name = nullptr, const std::vector
*vendor = nullptr, const std::vector
*toolchain = nullptr, uint32_t platform_version = 0, uint32_t toolchain_version = 0, float peak_mips = 0.0f, float stopped_power = 0.0f, float sleep_power = 0.0f, float peak_power = 0.0f, uint32_t max_msg_len = 0, uint64_t platform_id = 0, uint32_t chre_platform_version = 0) { return chre::fbs::CreateHubInfoResponse( _fbb, name ? _fbb.CreateVector
(*name) : 0, vendor ? _fbb.CreateVector
(*vendor) : 0, toolchain ? _fbb.CreateVector
(*toolchain) : 0, platform_version, toolchain_version, peak_mips, stopped_power, sleep_power, peak_power, max_msg_len, platform_id, chre_platform_version); } flatbuffers::Offset
CreateHubInfoResponse(flatbuffers::FlatBufferBuilder &_fbb, const HubInfoResponseT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct NanoappListRequestT : public flatbuffers::NativeTable { typedef NanoappListRequest TableType; NanoappListRequestT() { } }; struct NanoappListRequest FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef NanoappListRequestT NativeTableType; bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && verifier.EndTable(); } NanoappListRequestT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(NanoappListRequestT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const NanoappListRequestT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct NanoappListRequestBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; NanoappListRequestBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } NanoappListRequestBuilder &operator=(const NanoappListRequestBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 0); auto o = flatbuffers::Offset
(end); return o; } }; inline flatbuffers::Offset
CreateNanoappListRequest( flatbuffers::FlatBufferBuilder &_fbb) { NanoappListRequestBuilder builder_(_fbb); return builder_.Finish(); } flatbuffers::Offset
CreateNanoappListRequest(flatbuffers::FlatBufferBuilder &_fbb, const NanoappListRequestT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct NanoappListEntryT : public flatbuffers::NativeTable { typedef NanoappListEntry TableType; uint64_t app_id; uint32_t version; bool enabled; bool is_system; NanoappListEntryT() : app_id(0), version(0), enabled(true), is_system(false) { } }; struct NanoappListEntry FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef NanoappListEntryT NativeTableType; enum { VT_APP_ID = 4, VT_VERSION = 6, VT_ENABLED = 8, VT_IS_SYSTEM = 10 }; uint64_t app_id() const { return GetField
(VT_APP_ID, 0); } bool mutate_app_id(uint64_t _app_id) { return SetField(VT_APP_ID, _app_id); } uint32_t version() const { return GetField
(VT_VERSION, 0); } bool mutate_version(uint32_t _version) { return SetField(VT_VERSION, _version); } bool enabled() const { return GetField
(VT_ENABLED, 1) != 0; } bool mutate_enabled(bool _enabled) { return SetField(VT_ENABLED, static_cast
(_enabled)); } /// Whether the nanoapp is a pre-loaded "system" nanoapp, i.e. one that should /// not show up in the list of nanoapps in the context hub HAL. System /// nanoapps are typically used to leverage CHRE for some device functionality /// and do not interact via the context hub HAL. bool is_system() const { return GetField
(VT_IS_SYSTEM, 0) != 0; } bool mutate_is_system(bool _is_system) { return SetField(VT_IS_SYSTEM, static_cast
(_is_system)); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField
(verifier, VT_APP_ID) && VerifyField
(verifier, VT_VERSION) && VerifyField
(verifier, VT_ENABLED) && VerifyField
(verifier, VT_IS_SYSTEM) && verifier.EndTable(); } NanoappListEntryT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(NanoappListEntryT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const NanoappListEntryT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct NanoappListEntryBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_app_id(uint64_t app_id) { fbb_.AddElement
(NanoappListEntry::VT_APP_ID, app_id, 0); } void add_version(uint32_t version) { fbb_.AddElement
(NanoappListEntry::VT_VERSION, version, 0); } void add_enabled(bool enabled) { fbb_.AddElement
(NanoappListEntry::VT_ENABLED, static_cast
(enabled), 1); } void add_is_system(bool is_system) { fbb_.AddElement
(NanoappListEntry::VT_IS_SYSTEM, static_cast
(is_system), 0); } NanoappListEntryBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } NanoappListEntryBuilder &operator=(const NanoappListEntryBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 4); auto o = flatbuffers::Offset
(end); return o; } }; inline flatbuffers::Offset
CreateNanoappListEntry( flatbuffers::FlatBufferBuilder &_fbb, uint64_t app_id = 0, uint32_t version = 0, bool enabled = true, bool is_system = false) { NanoappListEntryBuilder builder_(_fbb); builder_.add_app_id(app_id); builder_.add_version(version); builder_.add_is_system(is_system); builder_.add_enabled(enabled); return builder_.Finish(); } flatbuffers::Offset
CreateNanoappListEntry(flatbuffers::FlatBufferBuilder &_fbb, const NanoappListEntryT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct NanoappListResponseT : public flatbuffers::NativeTable { typedef NanoappListResponse TableType; std::vector
> nanoapps; NanoappListResponseT() { } }; struct NanoappListResponse FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef NanoappListResponseT NativeTableType; enum { VT_NANOAPPS = 4 }; const flatbuffers::Vector
> *nanoapps() const { return GetPointer
> *>(VT_NANOAPPS); } flatbuffers::Vector
> *mutable_nanoapps() { return GetPointer
> *>(VT_NANOAPPS); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired
(verifier, VT_NANOAPPS) && verifier.Verify(nanoapps()) && verifier.VerifyVectorOfTables(nanoapps()) && verifier.EndTable(); } NanoappListResponseT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(NanoappListResponseT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const NanoappListResponseT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct NanoappListResponseBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_nanoapps(flatbuffers::Offset
>> nanoapps) { fbb_.AddOffset(NanoappListResponse::VT_NANOAPPS, nanoapps); } NanoappListResponseBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } NanoappListResponseBuilder &operator=(const NanoappListResponseBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 1); auto o = flatbuffers::Offset
(end); fbb_.Required(o, NanoappListResponse::VT_NANOAPPS); return o; } }; inline flatbuffers::Offset
CreateNanoappListResponse( flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset
>> nanoapps = 0) { NanoappListResponseBuilder builder_(_fbb); builder_.add_nanoapps(nanoapps); return builder_.Finish(); } inline flatbuffers::Offset
CreateNanoappListResponseDirect( flatbuffers::FlatBufferBuilder &_fbb, const std::vector
> *nanoapps = nullptr) { return chre::fbs::CreateNanoappListResponse( _fbb, nanoapps ? _fbb.CreateVector
>(*nanoapps) : 0); } flatbuffers::Offset
CreateNanoappListResponse(flatbuffers::FlatBufferBuilder &_fbb, const NanoappListResponseT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct LoadNanoappRequestT : public flatbuffers::NativeTable { typedef LoadNanoappRequest TableType; uint32_t transaction_id; uint64_t app_id; uint32_t app_version; uint32_t target_api_version; std::vector
app_binary; uint32_t fragment_id; uint32_t total_app_size; std::vector
app_binary_file_name; LoadNanoappRequestT() : transaction_id(0), app_id(0), app_version(0), target_api_version(0), fragment_id(0), total_app_size(0) { } }; /// Represents a request for loading a nanoapp. /// The nanaopp can either be requested to be loaded via a file or via a buffer. /// For loading via a file, the following steps will be taken: /// 1. The loader sends a LoadNanoappRequest message to CHRE. app_binary must /// be set for legacy purposes, but should be empty. Additionally, /// fragment_id and total_app_size are unused in this request. The loading /// that happens as part of this request is serialized, but asynchronous /// meaning that load requests will be processed in the order they are sent /// but multiple requests can be outstanding at any given time. /// 2. CHRE stores the filename and waits until its event loop is able to /// process the request. /// 3. Once ready, the nanoapp will be loaded from the file specified in the /// original request and will send a callback indicating the /// completion/failure of the request. /// For loading via a buffer, loading may optionally be fragmented into multiple /// sequential requests, which will follow the following steps: /// 1. The loader sends a LoadNanoappRequest message to CHRE. If the request /// is fragmented, then the fields fragment_id and total_app_size must /// be defined. Once the first fragment is sent to CHRE, all subsequent /// fragments must be delivered before a new LoadNanoappRequest can be /// issued. If a new request is received while a current request has /// outstanding fragments, the current request will be overridden with the /// new one. /// 2. CHRE preallocates the required amount of memory, and loads app_binary, /// appending to already loaded fragments as appropriate. /// 3. If the request is fragmented, then the requestor must sequentially send /// multiple LoadNanoappRequest with incremental nanoapp binary fragments. /// CHRE will respond with LoadNanoappResponse for each request. For /// requests starting from the second fragment, all fields except /// fragment_id and app_binary should be ignored by CHRE. /// /// Once the LoadNanoappRepsonse for the last fragment is received /// by the HAL, the HAL client will receive a callback indicating the /// completion/failure of a load request. /// /// If any request fragment is lost, then the entire load request will be /// considered to have failed. If the request times out (e.g. the requestor /// process crashes), then the load request will be cancelled at CHRE and fail. struct LoadNanoappRequest FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef LoadNanoappRequestT NativeTableType; enum { VT_TRANSACTION_ID = 4, VT_APP_ID = 6, VT_APP_VERSION = 8, VT_TARGET_API_VERSION = 10, VT_APP_BINARY = 12, VT_FRAGMENT_ID = 14, VT_TOTAL_APP_SIZE = 16, VT_APP_BINARY_FILE_NAME = 18 }; uint32_t transaction_id() const { return GetField
(VT_TRANSACTION_ID, 0); } bool mutate_transaction_id(uint32_t _transaction_id) { return SetField(VT_TRANSACTION_ID, _transaction_id); } uint64_t app_id() const { return GetField
(VT_APP_ID, 0); } bool mutate_app_id(uint64_t _app_id) { return SetField(VT_APP_ID, _app_id); } uint32_t app_version() const { return GetField
(VT_APP_VERSION, 0); } bool mutate_app_version(uint32_t _app_version) { return SetField(VT_APP_VERSION, _app_version); } uint32_t target_api_version() const { return GetField
(VT_TARGET_API_VERSION, 0); } bool mutate_target_api_version(uint32_t _target_api_version) { return SetField(VT_TARGET_API_VERSION, _target_api_version); } const flatbuffers::Vector
*app_binary() const { return GetPointer
*>(VT_APP_BINARY); } flatbuffers::Vector
*mutable_app_binary() { return GetPointer
*>(VT_APP_BINARY); } /// Fields that are relevant for fragmented loading /// The framgent count starts at 1 and should end at the total number of /// fragments. For clients that do not support fragmented loading, the /// default behavior should be to assume one fragment. uint32_t fragment_id() const { return GetField
(VT_FRAGMENT_ID, 0); } bool mutate_fragment_id(uint32_t _fragment_id) { return SetField(VT_FRAGMENT_ID, _fragment_id); } uint32_t total_app_size() const { return GetField
(VT_TOTAL_APP_SIZE, 0); } bool mutate_total_app_size(uint32_t _total_app_size) { return SetField(VT_TOTAL_APP_SIZE, _total_app_size); } /// Null-terminated ASCII string containing the file name that contains the /// app binary to be loaded. const flatbuffers::Vector
*app_binary_file_name() const { return GetPointer
*>(VT_APP_BINARY_FILE_NAME); } flatbuffers::Vector
*mutable_app_binary_file_name() { return GetPointer
*>(VT_APP_BINARY_FILE_NAME); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField
(verifier, VT_TRANSACTION_ID) && VerifyField
(verifier, VT_APP_ID) && VerifyField
(verifier, VT_APP_VERSION) && VerifyField
(verifier, VT_TARGET_API_VERSION) && VerifyFieldRequired
(verifier, VT_APP_BINARY) && verifier.Verify(app_binary()) && VerifyField
(verifier, VT_FRAGMENT_ID) && VerifyField
(verifier, VT_TOTAL_APP_SIZE) && VerifyField
(verifier, VT_APP_BINARY_FILE_NAME) && verifier.Verify(app_binary_file_name()) && verifier.EndTable(); } LoadNanoappRequestT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(LoadNanoappRequestT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const LoadNanoappRequestT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct LoadNanoappRequestBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_transaction_id(uint32_t transaction_id) { fbb_.AddElement
(LoadNanoappRequest::VT_TRANSACTION_ID, transaction_id, 0); } void add_app_id(uint64_t app_id) { fbb_.AddElement
(LoadNanoappRequest::VT_APP_ID, app_id, 0); } void add_app_version(uint32_t app_version) { fbb_.AddElement
(LoadNanoappRequest::VT_APP_VERSION, app_version, 0); } void add_target_api_version(uint32_t target_api_version) { fbb_.AddElement
(LoadNanoappRequest::VT_TARGET_API_VERSION, target_api_version, 0); } void add_app_binary(flatbuffers::Offset
> app_binary) { fbb_.AddOffset(LoadNanoappRequest::VT_APP_BINARY, app_binary); } void add_fragment_id(uint32_t fragment_id) { fbb_.AddElement
(LoadNanoappRequest::VT_FRAGMENT_ID, fragment_id, 0); } void add_total_app_size(uint32_t total_app_size) { fbb_.AddElement
(LoadNanoappRequest::VT_TOTAL_APP_SIZE, total_app_size, 0); } void add_app_binary_file_name(flatbuffers::Offset
> app_binary_file_name) { fbb_.AddOffset(LoadNanoappRequest::VT_APP_BINARY_FILE_NAME, app_binary_file_name); } LoadNanoappRequestBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } LoadNanoappRequestBuilder &operator=(const LoadNanoappRequestBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 8); auto o = flatbuffers::Offset
(end); fbb_.Required(o, LoadNanoappRequest::VT_APP_BINARY); return o; } }; inline flatbuffers::Offset
CreateLoadNanoappRequest( flatbuffers::FlatBufferBuilder &_fbb, uint32_t transaction_id = 0, uint64_t app_id = 0, uint32_t app_version = 0, uint32_t target_api_version = 0, flatbuffers::Offset
> app_binary = 0, uint32_t fragment_id = 0, uint32_t total_app_size = 0, flatbuffers::Offset
> app_binary_file_name = 0) { LoadNanoappRequestBuilder builder_(_fbb); builder_.add_app_id(app_id); builder_.add_app_binary_file_name(app_binary_file_name); builder_.add_total_app_size(total_app_size); builder_.add_fragment_id(fragment_id); builder_.add_app_binary(app_binary); builder_.add_target_api_version(target_api_version); builder_.add_app_version(app_version); builder_.add_transaction_id(transaction_id); return builder_.Finish(); } inline flatbuffers::Offset
CreateLoadNanoappRequestDirect( flatbuffers::FlatBufferBuilder &_fbb, uint32_t transaction_id = 0, uint64_t app_id = 0, uint32_t app_version = 0, uint32_t target_api_version = 0, const std::vector
*app_binary = nullptr, uint32_t fragment_id = 0, uint32_t total_app_size = 0, const std::vector
*app_binary_file_name = nullptr) { return chre::fbs::CreateLoadNanoappRequest( _fbb, transaction_id, app_id, app_version, target_api_version, app_binary ? _fbb.CreateVector
(*app_binary) : 0, fragment_id, total_app_size, app_binary_file_name ? _fbb.CreateVector
(*app_binary_file_name) : 0); } flatbuffers::Offset
CreateLoadNanoappRequest(flatbuffers::FlatBufferBuilder &_fbb, const LoadNanoappRequestT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct LoadNanoappResponseT : public flatbuffers::NativeTable { typedef LoadNanoappResponse TableType; uint32_t transaction_id; bool success; uint32_t fragment_id; LoadNanoappResponseT() : transaction_id(0), success(false), fragment_id(0) { } }; struct LoadNanoappResponse FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef LoadNanoappResponseT NativeTableType; enum { VT_TRANSACTION_ID = 4, VT_SUCCESS = 6, VT_FRAGMENT_ID = 8 }; uint32_t transaction_id() const { return GetField
(VT_TRANSACTION_ID, 0); } bool mutate_transaction_id(uint32_t _transaction_id) { return SetField(VT_TRANSACTION_ID, _transaction_id); } /// Denotes whether a load request succeeded or failed. /// If any fragment of a load request fails, the entire load request for /// the same transaction will fail. bool success() const { return GetField
(VT_SUCCESS, 0) != 0; } bool mutate_success(bool _success) { return SetField(VT_SUCCESS, static_cast
(_success)); } /// The fragment count of the load reponse is for. uint32_t fragment_id() const { return GetField
(VT_FRAGMENT_ID, 0); } bool mutate_fragment_id(uint32_t _fragment_id) { return SetField(VT_FRAGMENT_ID, _fragment_id); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField
(verifier, VT_TRANSACTION_ID) && VerifyField
(verifier, VT_SUCCESS) && VerifyField
(verifier, VT_FRAGMENT_ID) && verifier.EndTable(); } LoadNanoappResponseT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(LoadNanoappResponseT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const LoadNanoappResponseT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct LoadNanoappResponseBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_transaction_id(uint32_t transaction_id) { fbb_.AddElement
(LoadNanoappResponse::VT_TRANSACTION_ID, transaction_id, 0); } void add_success(bool success) { fbb_.AddElement
(LoadNanoappResponse::VT_SUCCESS, static_cast
(success), 0); } void add_fragment_id(uint32_t fragment_id) { fbb_.AddElement
(LoadNanoappResponse::VT_FRAGMENT_ID, fragment_id, 0); } LoadNanoappResponseBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } LoadNanoappResponseBuilder &operator=(const LoadNanoappResponseBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 3); auto o = flatbuffers::Offset
(end); return o; } }; inline flatbuffers::Offset
CreateLoadNanoappResponse( flatbuffers::FlatBufferBuilder &_fbb, uint32_t transaction_id = 0, bool success = false, uint32_t fragment_id = 0) { LoadNanoappResponseBuilder builder_(_fbb); builder_.add_fragment_id(fragment_id); builder_.add_transaction_id(transaction_id); builder_.add_success(success); return builder_.Finish(); } flatbuffers::Offset
CreateLoadNanoappResponse(flatbuffers::FlatBufferBuilder &_fbb, const LoadNanoappResponseT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct UnloadNanoappRequestT : public flatbuffers::NativeTable { typedef UnloadNanoappRequest TableType; uint32_t transaction_id; uint64_t app_id; bool allow_system_nanoapp_unload; UnloadNanoappRequestT() : transaction_id(0), app_id(0), allow_system_nanoapp_unload(false) { } }; struct UnloadNanoappRequest FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef UnloadNanoappRequestT NativeTableType; enum { VT_TRANSACTION_ID = 4, VT_APP_ID = 6, VT_ALLOW_SYSTEM_NANOAPP_UNLOAD = 8 }; uint32_t transaction_id() const { return GetField
(VT_TRANSACTION_ID, 0); } bool mutate_transaction_id(uint32_t _transaction_id) { return SetField(VT_TRANSACTION_ID, _transaction_id); } uint64_t app_id() const { return GetField
(VT_APP_ID, 0); } bool mutate_app_id(uint64_t _app_id) { return SetField(VT_APP_ID, _app_id); } /// Set to true to allow this request to unload nanoapps identified as "system /// nanoapps", i.e. ones with is_system set to true in NanoappListResponse. bool allow_system_nanoapp_unload() const { return GetField
(VT_ALLOW_SYSTEM_NANOAPP_UNLOAD, 0) != 0; } bool mutate_allow_system_nanoapp_unload(bool _allow_system_nanoapp_unload) { return SetField(VT_ALLOW_SYSTEM_NANOAPP_UNLOAD, static_cast
(_allow_system_nanoapp_unload)); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField
(verifier, VT_TRANSACTION_ID) && VerifyField
(verifier, VT_APP_ID) && VerifyField
(verifier, VT_ALLOW_SYSTEM_NANOAPP_UNLOAD) && verifier.EndTable(); } UnloadNanoappRequestT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const; void UnPackTo(UnloadNanoappRequestT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const; static flatbuffers::Offset
Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnloadNanoappRequestT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); }; struct UnloadNanoappRequestBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_transaction_id(uint32_t transaction_id) { fbb_.AddElement
(UnloadNanoappRequest::VT_TRANSACTION_ID, transaction_id, 0); } void add_app_id(uint64_t app_id) { fbb_.AddElement
(UnloadNanoappRequest::VT_APP_ID, app_id, 0); } void add_allow_system_nanoapp_unload(bool allow_system_nanoapp_unload) { fbb_.AddElement
(UnloadNanoappRequest::VT_ALLOW_SYSTEM_NANOAPP_UNLOAD, static_cast
(allow_system_nanoapp_unload), 0); } UnloadNanoappRequestBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } UnloadNanoappRequestBuilder &operator=(const UnloadNanoappRequestBuilder &); flatbuffers::Offset
Finish() { const auto end = fbb_.EndTable(start_, 3); auto o = flatbuffers::Offset
(end); return o; } }; inline flatbuffers::Offset
CreateUnloadNanoappRequest( flatbuffers::FlatBufferBuilder &_fbb, uint32_t transaction_id = 0, uint64_t app_id = 0, bool allow_system_nanoapp_unload = false) { UnloadNanoappRequestBuilder builder_(_fbb); builder_.add_app_id(app_id); builder_.add_transaction_id(transaction_id); builder_.add_allow_system_nanoapp_unload(allow_system_nanoapp_unload); return builder_.Finish(); } flatbuffers::Offset
CreateUnloadNanoappRequest(flatbuffers::FlatBufferBuilder &_fbb, const UnloadNanoappRequestT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr); struct UnloadNanoappResponseT : public flatbuffers::NativeTable { typedef UnloadNanoappResponse TableType; uint32_t transaction_id; bool success; UnloadNanoappResponseT() : transaction_id(0), success(false) { } }; struct UnloadNanoappResponse FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { typedef UnloadNanoappResponseT NativeTableType; enum { VT_TRANSACTION_ID = 4, VT_SUCCESS = 6 }; uint32_t transaction_id() const { return GetField