--- /dev/null
+// automatically generated by the FlatBuffers compiler, do not modify
+
+
+#ifndef FLATBUFFERS_GENERATED_FB_FB_H_
+#define FLATBUFFERS_GENERATED_FB_FB_H_
+
+#include "flatbuffers/flatbuffers.h"
+
+namespace FB {
+
+struct File;
+
+struct OwnSet;
+
+struct PolicyOwn;
+
+struct PolicyOwnPair;
+
+struct PolicySendPair;
+
+struct PolicyReceivePair;
+
+struct PolicyOwnNode;
+
+struct SendSet;
+
+struct PolicySend;
+
+struct ItemSend;
+
+struct ItemReceive;
+
+struct ReceiveSet;
+
+struct PolicyReceive;
+
+struct AccessSet;
+
+struct PolicyAccess;
+
+struct ItemAccess;
+
+struct DecisionItem;
+
+enum Decision {
+ Decision_ANY = 0,
+ Decision_ALLOW = 1,
+ Decision_DENY = 2,
+ Decision_CHECK = 3,
+ Decision_MIN = Decision_ANY,
+ Decision_MAX = Decision_CHECK
+};
+
+inline const Decision (&EnumValuesDecision())[4] {
+ static const Decision values[] = {
+ Decision_ANY,
+ Decision_ALLOW,
+ Decision_DENY,
+ Decision_CHECK
+ };
+ return values;
+}
+
+inline const char * const *EnumNamesDecision() {
+ static const char * const names[] = {
+ "ANY",
+ "ALLOW",
+ "DENY",
+ "CHECK",
+ nullptr
+ };
+ return names;
+}
+
+inline const char *EnumNameDecision(Decision e) {
+ if (e < Decision_ANY || e > Decision_CHECK) return "";
+ const size_t index = static_cast<int>(e);
+ return EnumNamesDecision()[index];
+}
+
+enum BusAccessType {
+ BusAccessType_USER = 0,
+ BusAccessType_GROUP = 1,
+ BusAccessType_ALL_USERS = 2,
+ BusAccessType_ALL_GROUPS = 3,
+ BusAccessType_MIN = BusAccessType_USER,
+ BusAccessType_MAX = BusAccessType_ALL_GROUPS
+};
+
+inline const BusAccessType (&EnumValuesBusAccessType())[4] {
+ static const BusAccessType values[] = {
+ BusAccessType_USER,
+ BusAccessType_GROUP,
+ BusAccessType_ALL_USERS,
+ BusAccessType_ALL_GROUPS
+ };
+ return values;
+}
+
+inline const char * const *EnumNamesBusAccessType() {
+ static const char * const names[] = {
+ "USER",
+ "GROUP",
+ "ALL_USERS",
+ "ALL_GROUPS",
+ nullptr
+ };
+ return names;
+}
+
+inline const char *EnumNameBusAccessType(BusAccessType e) {
+ if (e < BusAccessType_USER || e > BusAccessType_ALL_GROUPS) return "";
+ const size_t index = static_cast<int>(e);
+ return EnumNamesBusAccessType()[index];
+}
+
+enum MessageType {
+ MessageType_ANY = 0,
+ MessageType_METHOD_CALL = 1,
+ MessageType_METHOD_RETURN = 2,
+ MessageType_ERROR = 3,
+ MessageType_SIGNAL = 4,
+ MessageType_MIN = MessageType_ANY,
+ MessageType_MAX = MessageType_SIGNAL
+};
+
+inline const MessageType (&EnumValuesMessageType())[5] {
+ static const MessageType values[] = {
+ MessageType_ANY,
+ MessageType_METHOD_CALL,
+ MessageType_METHOD_RETURN,
+ MessageType_ERROR,
+ MessageType_SIGNAL
+ };
+ return values;
+}
+
+inline const char * const *EnumNamesMessageType() {
+ static const char * const names[] = {
+ "ANY",
+ "METHOD_CALL",
+ "METHOD_RETURN",
+ "ERROR",
+ "SIGNAL",
+ nullptr
+ };
+ return names;
+}
+
+inline const char *EnumNameMessageType(MessageType e) {
+ if (e < MessageType_ANY || e > MessageType_SIGNAL) return "";
+ const size_t index = static_cast<int>(e);
+ return EnumNamesMessageType()[index];
+}
+
+struct File FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_M_OWN_SET = 4,
+ VT_M_SEND_SET = 6,
+ VT_M_RECEIVE_SET = 8,
+ VT_M_ACCESS_SET = 10
+ };
+ const OwnSet *m_own_set() const {
+ return GetPointer<const OwnSet *>(VT_M_OWN_SET);
+ }
+ const SendSet *m_send_set() const {
+ return GetPointer<const SendSet *>(VT_M_SEND_SET);
+ }
+ const ReceiveSet *m_receive_set() const {
+ return GetPointer<const ReceiveSet *>(VT_M_RECEIVE_SET);
+ }
+ const AccessSet *m_access_set() const {
+ return GetPointer<const AccessSet *>(VT_M_ACCESS_SET);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_M_OWN_SET) &&
+ verifier.VerifyTable(m_own_set()) &&
+ VerifyOffset(verifier, VT_M_SEND_SET) &&
+ verifier.VerifyTable(m_send_set()) &&
+ VerifyOffset(verifier, VT_M_RECEIVE_SET) &&
+ verifier.VerifyTable(m_receive_set()) &&
+ VerifyOffset(verifier, VT_M_ACCESS_SET) &&
+ verifier.VerifyTable(m_access_set()) &&
+ verifier.EndTable();
+ }
+};
+
+struct FileBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_m_own_set(flatbuffers::Offset<OwnSet> m_own_set) {
+ fbb_.AddOffset(File::VT_M_OWN_SET, m_own_set);
+ }
+ void add_m_send_set(flatbuffers::Offset<SendSet> m_send_set) {
+ fbb_.AddOffset(File::VT_M_SEND_SET, m_send_set);
+ }
+ void add_m_receive_set(flatbuffers::Offset<ReceiveSet> m_receive_set) {
+ fbb_.AddOffset(File::VT_M_RECEIVE_SET, m_receive_set);
+ }
+ void add_m_access_set(flatbuffers::Offset<AccessSet> m_access_set) {
+ fbb_.AddOffset(File::VT_M_ACCESS_SET, m_access_set);
+ }
+ explicit FileBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ FileBuilder &operator=(const FileBuilder &);
+ flatbuffers::Offset<File> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<File>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<File> CreateFile(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<OwnSet> m_own_set = 0,
+ flatbuffers::Offset<SendSet> m_send_set = 0,
+ flatbuffers::Offset<ReceiveSet> m_receive_set = 0,
+ flatbuffers::Offset<AccessSet> m_access_set = 0) {
+ FileBuilder builder_(_fbb);
+ builder_.add_m_access_set(m_access_set);
+ builder_.add_m_receive_set(m_receive_set);
+ builder_.add_m_send_set(m_send_set);
+ builder_.add_m_own_set(m_own_set);
+ return builder_.Finish();
+}
+
+struct OwnSet FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_CONTEXT_DEFAULT = 4,
+ VT_CONTEXT_MANDATORY = 6,
+ VT_USER = 8,
+ VT_GROUP = 10
+ };
+ const PolicyOwn *context_default() const {
+ return GetPointer<const PolicyOwn *>(VT_CONTEXT_DEFAULT);
+ }
+ const PolicyOwn *context_mandatory() const {
+ return GetPointer<const PolicyOwn *>(VT_CONTEXT_MANDATORY);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>> *user() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>> *>(VT_USER);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>> *group() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>> *>(VT_GROUP);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_CONTEXT_DEFAULT) &&
+ verifier.VerifyTable(context_default()) &&
+ VerifyOffset(verifier, VT_CONTEXT_MANDATORY) &&
+ verifier.VerifyTable(context_mandatory()) &&
+ VerifyOffset(verifier, VT_USER) &&
+ verifier.VerifyVector(user()) &&
+ verifier.VerifyVectorOfTables(user()) &&
+ VerifyOffset(verifier, VT_GROUP) &&
+ verifier.VerifyVector(group()) &&
+ verifier.VerifyVectorOfTables(group()) &&
+ verifier.EndTable();
+ }
+};
+
+struct OwnSetBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_context_default(flatbuffers::Offset<PolicyOwn> context_default) {
+ fbb_.AddOffset(OwnSet::VT_CONTEXT_DEFAULT, context_default);
+ }
+ void add_context_mandatory(flatbuffers::Offset<PolicyOwn> context_mandatory) {
+ fbb_.AddOffset(OwnSet::VT_CONTEXT_MANDATORY, context_mandatory);
+ }
+ void add_user(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>>> user) {
+ fbb_.AddOffset(OwnSet::VT_USER, user);
+ }
+ void add_group(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>>> group) {
+ fbb_.AddOffset(OwnSet::VT_GROUP, group);
+ }
+ explicit OwnSetBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ OwnSetBuilder &operator=(const OwnSetBuilder &);
+ flatbuffers::Offset<OwnSet> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<OwnSet>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<OwnSet> CreateOwnSet(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicyOwn> context_default = 0,
+ flatbuffers::Offset<PolicyOwn> context_mandatory = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>>> user = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyOwnPair>>> group = 0) {
+ OwnSetBuilder builder_(_fbb);
+ builder_.add_group(group);
+ builder_.add_user(user);
+ builder_.add_context_mandatory(context_mandatory);
+ builder_.add_context_default(context_default);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<OwnSet> CreateOwnSetDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicyOwn> context_default = 0,
+ flatbuffers::Offset<PolicyOwn> context_mandatory = 0,
+ const std::vector<flatbuffers::Offset<PolicyOwnPair>> *user = nullptr,
+ const std::vector<flatbuffers::Offset<PolicyOwnPair>> *group = nullptr) {
+ auto user__ = user ? _fbb.CreateVector<flatbuffers::Offset<PolicyOwnPair>>(*user) : 0;
+ auto group__ = group ? _fbb.CreateVector<flatbuffers::Offset<PolicyOwnPair>>(*group) : 0;
+ return FB::CreateOwnSet(
+ _fbb,
+ context_default,
+ context_mandatory,
+ user__,
+ group__);
+}
+
+struct PolicyOwn FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_TREE = 4
+ };
+ const PolicyOwnNode *tree() const {
+ return GetPointer<const PolicyOwnNode *>(VT_TREE);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_TREE) &&
+ verifier.VerifyTable(tree()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicyOwnBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_tree(flatbuffers::Offset<PolicyOwnNode> tree) {
+ fbb_.AddOffset(PolicyOwn::VT_TREE, tree);
+ }
+ explicit PolicyOwnBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicyOwnBuilder &operator=(const PolicyOwnBuilder &);
+ flatbuffers::Offset<PolicyOwn> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicyOwn>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicyOwn> CreatePolicyOwn(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicyOwnNode> tree = 0) {
+ PolicyOwnBuilder builder_(_fbb);
+ builder_.add_tree(tree);
+ return builder_.Finish();
+}
+
+struct PolicyOwnPair FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_ID = 4,
+ VT_POLICY = 6
+ };
+ int64_t id() const {
+ return GetField<int64_t>(VT_ID, 0);
+ }
+ bool KeyCompareLessThan(const PolicyOwnPair *o) const {
+ return id() < o->id();
+ }
+ int KeyCompareWithValue(int64_t val) const {
+ return static_cast<int>(id() > val) - static_cast<int>(id() < val);
+ }
+ const PolicyOwn *policy() const {
+ return GetPointer<const PolicyOwn *>(VT_POLICY);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyField<int64_t>(verifier, VT_ID) &&
+ VerifyOffset(verifier, VT_POLICY) &&
+ verifier.VerifyTable(policy()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicyOwnPairBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_id(int64_t id) {
+ fbb_.AddElement<int64_t>(PolicyOwnPair::VT_ID, id, 0);
+ }
+ void add_policy(flatbuffers::Offset<PolicyOwn> policy) {
+ fbb_.AddOffset(PolicyOwnPair::VT_POLICY, policy);
+ }
+ explicit PolicyOwnPairBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicyOwnPairBuilder &operator=(const PolicyOwnPairBuilder &);
+ flatbuffers::Offset<PolicyOwnPair> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicyOwnPair>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicyOwnPair> CreatePolicyOwnPair(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ int64_t id = 0,
+ flatbuffers::Offset<PolicyOwn> policy = 0) {
+ PolicyOwnPairBuilder builder_(_fbb);
+ builder_.add_id(id);
+ builder_.add_policy(policy);
+ return builder_.Finish();
+}
+
+struct PolicySendPair FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_ID = 4,
+ VT_POLICY = 6
+ };
+ int64_t id() const {
+ return GetField<int64_t>(VT_ID, 0);
+ }
+ bool KeyCompareLessThan(const PolicySendPair *o) const {
+ return id() < o->id();
+ }
+ int KeyCompareWithValue(int64_t val) const {
+ return static_cast<int>(id() > val) - static_cast<int>(id() < val);
+ }
+ const PolicySend *policy() const {
+ return GetPointer<const PolicySend *>(VT_POLICY);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyField<int64_t>(verifier, VT_ID) &&
+ VerifyOffset(verifier, VT_POLICY) &&
+ verifier.VerifyTable(policy()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicySendPairBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_id(int64_t id) {
+ fbb_.AddElement<int64_t>(PolicySendPair::VT_ID, id, 0);
+ }
+ void add_policy(flatbuffers::Offset<PolicySend> policy) {
+ fbb_.AddOffset(PolicySendPair::VT_POLICY, policy);
+ }
+ explicit PolicySendPairBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicySendPairBuilder &operator=(const PolicySendPairBuilder &);
+ flatbuffers::Offset<PolicySendPair> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicySendPair>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicySendPair> CreatePolicySendPair(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ int64_t id = 0,
+ flatbuffers::Offset<PolicySend> policy = 0) {
+ PolicySendPairBuilder builder_(_fbb);
+ builder_.add_id(id);
+ builder_.add_policy(policy);
+ return builder_.Finish();
+}
+
+struct PolicyReceivePair FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_ID = 4,
+ VT_POLICY = 6
+ };
+ int64_t id() const {
+ return GetField<int64_t>(VT_ID, 0);
+ }
+ bool KeyCompareLessThan(const PolicyReceivePair *o) const {
+ return id() < o->id();
+ }
+ int KeyCompareWithValue(int64_t val) const {
+ return static_cast<int>(id() > val) - static_cast<int>(id() < val);
+ }
+ const PolicyReceive *policy() const {
+ return GetPointer<const PolicyReceive *>(VT_POLICY);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyField<int64_t>(verifier, VT_ID) &&
+ VerifyOffset(verifier, VT_POLICY) &&
+ verifier.VerifyTable(policy()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicyReceivePairBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_id(int64_t id) {
+ fbb_.AddElement<int64_t>(PolicyReceivePair::VT_ID, id, 0);
+ }
+ void add_policy(flatbuffers::Offset<PolicyReceive> policy) {
+ fbb_.AddOffset(PolicyReceivePair::VT_POLICY, policy);
+ }
+ explicit PolicyReceivePairBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicyReceivePairBuilder &operator=(const PolicyReceivePairBuilder &);
+ flatbuffers::Offset<PolicyReceivePair> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicyReceivePair>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicyReceivePair> CreatePolicyReceivePair(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ int64_t id = 0,
+ flatbuffers::Offset<PolicyReceive> policy = 0) {
+ PolicyReceivePairBuilder builder_(_fbb);
+ builder_.add_id(id);
+ builder_.add_policy(policy);
+ return builder_.Finish();
+}
+
+struct PolicyOwnNode FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_TOKEN = 4,
+ VT_PREFIX_DECISION_ITEM = 6,
+ VT_DECISION_ITEM = 8,
+ VT_CHILDREN = 10
+ };
+ const flatbuffers::String *token() const {
+ return GetPointer<const flatbuffers::String *>(VT_TOKEN);
+ }
+ bool KeyCompareLessThan(const PolicyOwnNode *o) const {
+ return *token() < *o->token();
+ }
+ int KeyCompareWithValue(const char *val) const {
+ return strcmp(token()->c_str(), val);
+ }
+ const DecisionItem *prefix_decision_item() const {
+ return GetPointer<const DecisionItem *>(VT_PREFIX_DECISION_ITEM);
+ }
+ const DecisionItem *decision_item() const {
+ return GetPointer<const DecisionItem *>(VT_DECISION_ITEM);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicyOwnNode>> *children() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicyOwnNode>> *>(VT_CHILDREN);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffsetRequired(verifier, VT_TOKEN) &&
+ verifier.VerifyString(token()) &&
+ VerifyOffset(verifier, VT_PREFIX_DECISION_ITEM) &&
+ verifier.VerifyTable(prefix_decision_item()) &&
+ VerifyOffset(verifier, VT_DECISION_ITEM) &&
+ verifier.VerifyTable(decision_item()) &&
+ VerifyOffset(verifier, VT_CHILDREN) &&
+ verifier.VerifyVector(children()) &&
+ verifier.VerifyVectorOfTables(children()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicyOwnNodeBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_token(flatbuffers::Offset<flatbuffers::String> token) {
+ fbb_.AddOffset(PolicyOwnNode::VT_TOKEN, token);
+ }
+ void add_prefix_decision_item(flatbuffers::Offset<DecisionItem> prefix_decision_item) {
+ fbb_.AddOffset(PolicyOwnNode::VT_PREFIX_DECISION_ITEM, prefix_decision_item);
+ }
+ void add_decision_item(flatbuffers::Offset<DecisionItem> decision_item) {
+ fbb_.AddOffset(PolicyOwnNode::VT_DECISION_ITEM, decision_item);
+ }
+ void add_children(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyOwnNode>>> children) {
+ fbb_.AddOffset(PolicyOwnNode::VT_CHILDREN, children);
+ }
+ explicit PolicyOwnNodeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicyOwnNodeBuilder &operator=(const PolicyOwnNodeBuilder &);
+ flatbuffers::Offset<PolicyOwnNode> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicyOwnNode>(end);
+ fbb_.Required(o, PolicyOwnNode::VT_TOKEN);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicyOwnNode> CreatePolicyOwnNode(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<flatbuffers::String> token = 0,
+ flatbuffers::Offset<DecisionItem> prefix_decision_item = 0,
+ flatbuffers::Offset<DecisionItem> decision_item = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyOwnNode>>> children = 0) {
+ PolicyOwnNodeBuilder builder_(_fbb);
+ builder_.add_children(children);
+ builder_.add_decision_item(decision_item);
+ builder_.add_prefix_decision_item(prefix_decision_item);
+ builder_.add_token(token);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<PolicyOwnNode> CreatePolicyOwnNodeDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ const char *token = nullptr,
+ flatbuffers::Offset<DecisionItem> prefix_decision_item = 0,
+ flatbuffers::Offset<DecisionItem> decision_item = 0,
+ const std::vector<flatbuffers::Offset<PolicyOwnNode>> *children = nullptr) {
+ auto token__ = token ? _fbb.CreateString(token) : 0;
+ auto children__ = children ? _fbb.CreateVector<flatbuffers::Offset<PolicyOwnNode>>(*children) : 0;
+ return FB::CreatePolicyOwnNode(
+ _fbb,
+ token__,
+ prefix_decision_item,
+ decision_item,
+ children__);
+}
+
+struct SendSet FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_CONTEXT_DEFAULT = 4,
+ VT_CONTEXT_MANDATORY = 6,
+ VT_USER = 8,
+ VT_GROUP = 10
+ };
+ const PolicySend *context_default() const {
+ return GetPointer<const PolicySend *>(VT_CONTEXT_DEFAULT);
+ }
+ const PolicySend *context_mandatory() const {
+ return GetPointer<const PolicySend *>(VT_CONTEXT_MANDATORY);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>> *user() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>> *>(VT_USER);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>> *group() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>> *>(VT_GROUP);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_CONTEXT_DEFAULT) &&
+ verifier.VerifyTable(context_default()) &&
+ VerifyOffset(verifier, VT_CONTEXT_MANDATORY) &&
+ verifier.VerifyTable(context_mandatory()) &&
+ VerifyOffset(verifier, VT_USER) &&
+ verifier.VerifyVector(user()) &&
+ verifier.VerifyVectorOfTables(user()) &&
+ VerifyOffset(verifier, VT_GROUP) &&
+ verifier.VerifyVector(group()) &&
+ verifier.VerifyVectorOfTables(group()) &&
+ verifier.EndTable();
+ }
+};
+
+struct SendSetBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_context_default(flatbuffers::Offset<PolicySend> context_default) {
+ fbb_.AddOffset(SendSet::VT_CONTEXT_DEFAULT, context_default);
+ }
+ void add_context_mandatory(flatbuffers::Offset<PolicySend> context_mandatory) {
+ fbb_.AddOffset(SendSet::VT_CONTEXT_MANDATORY, context_mandatory);
+ }
+ void add_user(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>>> user) {
+ fbb_.AddOffset(SendSet::VT_USER, user);
+ }
+ void add_group(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>>> group) {
+ fbb_.AddOffset(SendSet::VT_GROUP, group);
+ }
+ explicit SendSetBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ SendSetBuilder &operator=(const SendSetBuilder &);
+ flatbuffers::Offset<SendSet> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<SendSet>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<SendSet> CreateSendSet(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicySend> context_default = 0,
+ flatbuffers::Offset<PolicySend> context_mandatory = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>>> user = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicySendPair>>> group = 0) {
+ SendSetBuilder builder_(_fbb);
+ builder_.add_group(group);
+ builder_.add_user(user);
+ builder_.add_context_mandatory(context_mandatory);
+ builder_.add_context_default(context_default);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<SendSet> CreateSendSetDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicySend> context_default = 0,
+ flatbuffers::Offset<PolicySend> context_mandatory = 0,
+ const std::vector<flatbuffers::Offset<PolicySendPair>> *user = nullptr,
+ const std::vector<flatbuffers::Offset<PolicySendPair>> *group = nullptr) {
+ auto user__ = user ? _fbb.CreateVector<flatbuffers::Offset<PolicySendPair>>(*user) : 0;
+ auto group__ = group ? _fbb.CreateVector<flatbuffers::Offset<PolicySendPair>>(*group) : 0;
+ return FB::CreateSendSet(
+ _fbb,
+ context_default,
+ context_mandatory,
+ user__,
+ group__);
+}
+
+struct PolicySend FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_ITEMS = 4
+ };
+ const flatbuffers::Vector<flatbuffers::Offset<ItemSend>> *items() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<ItemSend>> *>(VT_ITEMS);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_ITEMS) &&
+ verifier.VerifyVector(items()) &&
+ verifier.VerifyVectorOfTables(items()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicySendBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_items(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<ItemSend>>> items) {
+ fbb_.AddOffset(PolicySend::VT_ITEMS, items);
+ }
+ explicit PolicySendBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicySendBuilder &operator=(const PolicySendBuilder &);
+ flatbuffers::Offset<PolicySend> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicySend>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicySend> CreatePolicySend(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<ItemSend>>> items = 0) {
+ PolicySendBuilder builder_(_fbb);
+ builder_.add_items(items);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<PolicySend> CreatePolicySendDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ const std::vector<flatbuffers::Offset<ItemSend>> *items = nullptr) {
+ auto items__ = items ? _fbb.CreateVector<flatbuffers::Offset<ItemSend>>(*items) : 0;
+ return FB::CreatePolicySend(
+ _fbb,
+ items__);
+}
+
+struct ItemSend FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_DECISION = 4,
+ VT_NAME = 6,
+ VT_INTERFACE = 8,
+ VT_MEMBER = 10,
+ VT_PATH = 12,
+ VT_TYPE = 14,
+ VT_IS_NAME_PREFIX = 16
+ };
+ const DecisionItem *decision() const {
+ return GetPointer<const DecisionItem *>(VT_DECISION);
+ }
+ const flatbuffers::String *name() const {
+ return GetPointer<const flatbuffers::String *>(VT_NAME);
+ }
+ const flatbuffers::String *interface() const {
+ return GetPointer<const flatbuffers::String *>(VT_INTERFACE);
+ }
+ const flatbuffers::String *member() const {
+ return GetPointer<const flatbuffers::String *>(VT_MEMBER);
+ }
+ const flatbuffers::String *path() const {
+ return GetPointer<const flatbuffers::String *>(VT_PATH);
+ }
+ MessageType type() const {
+ return static_cast<MessageType>(GetField<int8_t>(VT_TYPE, 0));
+ }
+ bool is_name_prefix() const {
+ return GetField<uint8_t>(VT_IS_NAME_PREFIX, 0) != 0;
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_DECISION) &&
+ verifier.VerifyTable(decision()) &&
+ VerifyOffset(verifier, VT_NAME) &&
+ verifier.VerifyString(name()) &&
+ VerifyOffset(verifier, VT_INTERFACE) &&
+ verifier.VerifyString(interface()) &&
+ VerifyOffset(verifier, VT_MEMBER) &&
+ verifier.VerifyString(member()) &&
+ VerifyOffset(verifier, VT_PATH) &&
+ verifier.VerifyString(path()) &&
+ VerifyField<int8_t>(verifier, VT_TYPE) &&
+ VerifyField<uint8_t>(verifier, VT_IS_NAME_PREFIX) &&
+ verifier.EndTable();
+ }
+};
+
+struct ItemSendBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_decision(flatbuffers::Offset<DecisionItem> decision) {
+ fbb_.AddOffset(ItemSend::VT_DECISION, decision);
+ }
+ void add_name(flatbuffers::Offset<flatbuffers::String> name) {
+ fbb_.AddOffset(ItemSend::VT_NAME, name);
+ }
+ void add_interface(flatbuffers::Offset<flatbuffers::String> interface) {
+ fbb_.AddOffset(ItemSend::VT_INTERFACE, interface);
+ }
+ void add_member(flatbuffers::Offset<flatbuffers::String> member) {
+ fbb_.AddOffset(ItemSend::VT_MEMBER, member);
+ }
+ void add_path(flatbuffers::Offset<flatbuffers::String> path) {
+ fbb_.AddOffset(ItemSend::VT_PATH, path);
+ }
+ void add_type(MessageType type) {
+ fbb_.AddElement<int8_t>(ItemSend::VT_TYPE, static_cast<int8_t>(type), 0);
+ }
+ void add_is_name_prefix(bool is_name_prefix) {
+ fbb_.AddElement<uint8_t>(ItemSend::VT_IS_NAME_PREFIX, static_cast<uint8_t>(is_name_prefix), 0);
+ }
+ explicit ItemSendBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ ItemSendBuilder &operator=(const ItemSendBuilder &);
+ flatbuffers::Offset<ItemSend> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<ItemSend>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<ItemSend> CreateItemSend(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<DecisionItem> decision = 0,
+ flatbuffers::Offset<flatbuffers::String> name = 0,
+ flatbuffers::Offset<flatbuffers::String> interface = 0,
+ flatbuffers::Offset<flatbuffers::String> member = 0,
+ flatbuffers::Offset<flatbuffers::String> path = 0,
+ MessageType type = MessageType_ANY,
+ bool is_name_prefix = false) {
+ ItemSendBuilder builder_(_fbb);
+ builder_.add_path(path);
+ builder_.add_member(member);
+ builder_.add_interface(interface);
+ builder_.add_name(name);
+ builder_.add_decision(decision);
+ builder_.add_is_name_prefix(is_name_prefix);
+ builder_.add_type(type);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<ItemSend> CreateItemSendDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<DecisionItem> decision = 0,
+ const char *name = nullptr,
+ const char *interface = nullptr,
+ const char *member = nullptr,
+ const char *path = nullptr,
+ MessageType type = MessageType_ANY,
+ bool is_name_prefix = false) {
+ auto name__ = name ? _fbb.CreateString(name) : 0;
+ auto interface__ = interface ? _fbb.CreateString(interface) : 0;
+ auto member__ = member ? _fbb.CreateString(member) : 0;
+ auto path__ = path ? _fbb.CreateString(path) : 0;
+ return FB::CreateItemSend(
+ _fbb,
+ decision,
+ name__,
+ interface__,
+ member__,
+ path__,
+ type,
+ is_name_prefix);
+}
+
+struct ItemReceive FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_DECISION = 4,
+ VT_NAME = 6,
+ VT_INTERFACE = 8,
+ VT_MEMBER = 10,
+ VT_PATH = 12,
+ VT_TYPE = 14,
+ VT_IS_NAME_PREFIX = 16
+ };
+ const DecisionItem *decision() const {
+ return GetPointer<const DecisionItem *>(VT_DECISION);
+ }
+ const flatbuffers::String *name() const {
+ return GetPointer<const flatbuffers::String *>(VT_NAME);
+ }
+ const flatbuffers::String *interface() const {
+ return GetPointer<const flatbuffers::String *>(VT_INTERFACE);
+ }
+ const flatbuffers::String *member() const {
+ return GetPointer<const flatbuffers::String *>(VT_MEMBER);
+ }
+ const flatbuffers::String *path() const {
+ return GetPointer<const flatbuffers::String *>(VT_PATH);
+ }
+ MessageType type() const {
+ return static_cast<MessageType>(GetField<int8_t>(VT_TYPE, 0));
+ }
+ bool is_name_prefix() const {
+ return GetField<uint8_t>(VT_IS_NAME_PREFIX, 0) != 0;
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_DECISION) &&
+ verifier.VerifyTable(decision()) &&
+ VerifyOffset(verifier, VT_NAME) &&
+ verifier.VerifyString(name()) &&
+ VerifyOffset(verifier, VT_INTERFACE) &&
+ verifier.VerifyString(interface()) &&
+ VerifyOffset(verifier, VT_MEMBER) &&
+ verifier.VerifyString(member()) &&
+ VerifyOffset(verifier, VT_PATH) &&
+ verifier.VerifyString(path()) &&
+ VerifyField<int8_t>(verifier, VT_TYPE) &&
+ VerifyField<uint8_t>(verifier, VT_IS_NAME_PREFIX) &&
+ verifier.EndTable();
+ }
+};
+
+struct ItemReceiveBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_decision(flatbuffers::Offset<DecisionItem> decision) {
+ fbb_.AddOffset(ItemReceive::VT_DECISION, decision);
+ }
+ void add_name(flatbuffers::Offset<flatbuffers::String> name) {
+ fbb_.AddOffset(ItemReceive::VT_NAME, name);
+ }
+ void add_interface(flatbuffers::Offset<flatbuffers::String> interface) {
+ fbb_.AddOffset(ItemReceive::VT_INTERFACE, interface);
+ }
+ void add_member(flatbuffers::Offset<flatbuffers::String> member) {
+ fbb_.AddOffset(ItemReceive::VT_MEMBER, member);
+ }
+ void add_path(flatbuffers::Offset<flatbuffers::String> path) {
+ fbb_.AddOffset(ItemReceive::VT_PATH, path);
+ }
+ void add_type(MessageType type) {
+ fbb_.AddElement<int8_t>(ItemReceive::VT_TYPE, static_cast<int8_t>(type), 0);
+ }
+ void add_is_name_prefix(bool is_name_prefix) {
+ fbb_.AddElement<uint8_t>(ItemReceive::VT_IS_NAME_PREFIX, static_cast<uint8_t>(is_name_prefix), 0);
+ }
+ explicit ItemReceiveBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ ItemReceiveBuilder &operator=(const ItemReceiveBuilder &);
+ flatbuffers::Offset<ItemReceive> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<ItemReceive>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<ItemReceive> CreateItemReceive(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<DecisionItem> decision = 0,
+ flatbuffers::Offset<flatbuffers::String> name = 0,
+ flatbuffers::Offset<flatbuffers::String> interface = 0,
+ flatbuffers::Offset<flatbuffers::String> member = 0,
+ flatbuffers::Offset<flatbuffers::String> path = 0,
+ MessageType type = MessageType_ANY,
+ bool is_name_prefix = false) {
+ ItemReceiveBuilder builder_(_fbb);
+ builder_.add_path(path);
+ builder_.add_member(member);
+ builder_.add_interface(interface);
+ builder_.add_name(name);
+ builder_.add_decision(decision);
+ builder_.add_is_name_prefix(is_name_prefix);
+ builder_.add_type(type);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<ItemReceive> CreateItemReceiveDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<DecisionItem> decision = 0,
+ const char *name = nullptr,
+ const char *interface = nullptr,
+ const char *member = nullptr,
+ const char *path = nullptr,
+ MessageType type = MessageType_ANY,
+ bool is_name_prefix = false) {
+ auto name__ = name ? _fbb.CreateString(name) : 0;
+ auto interface__ = interface ? _fbb.CreateString(interface) : 0;
+ auto member__ = member ? _fbb.CreateString(member) : 0;
+ auto path__ = path ? _fbb.CreateString(path) : 0;
+ return FB::CreateItemReceive(
+ _fbb,
+ decision,
+ name__,
+ interface__,
+ member__,
+ path__,
+ type,
+ is_name_prefix);
+}
+
+struct ReceiveSet FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_CONTEXT_DEFAULT = 4,
+ VT_CONTEXT_MANDATORY = 6,
+ VT_USER = 8,
+ VT_GROUP = 10
+ };
+ const PolicyReceive *context_default() const {
+ return GetPointer<const PolicyReceive *>(VT_CONTEXT_DEFAULT);
+ }
+ const PolicyReceive *context_mandatory() const {
+ return GetPointer<const PolicyReceive *>(VT_CONTEXT_MANDATORY);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>> *user() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>> *>(VT_USER);
+ }
+ const flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>> *group() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>> *>(VT_GROUP);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_CONTEXT_DEFAULT) &&
+ verifier.VerifyTable(context_default()) &&
+ VerifyOffset(verifier, VT_CONTEXT_MANDATORY) &&
+ verifier.VerifyTable(context_mandatory()) &&
+ VerifyOffset(verifier, VT_USER) &&
+ verifier.VerifyVector(user()) &&
+ verifier.VerifyVectorOfTables(user()) &&
+ VerifyOffset(verifier, VT_GROUP) &&
+ verifier.VerifyVector(group()) &&
+ verifier.VerifyVectorOfTables(group()) &&
+ verifier.EndTable();
+ }
+};
+
+struct ReceiveSetBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_context_default(flatbuffers::Offset<PolicyReceive> context_default) {
+ fbb_.AddOffset(ReceiveSet::VT_CONTEXT_DEFAULT, context_default);
+ }
+ void add_context_mandatory(flatbuffers::Offset<PolicyReceive> context_mandatory) {
+ fbb_.AddOffset(ReceiveSet::VT_CONTEXT_MANDATORY, context_mandatory);
+ }
+ void add_user(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>>> user) {
+ fbb_.AddOffset(ReceiveSet::VT_USER, user);
+ }
+ void add_group(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>>> group) {
+ fbb_.AddOffset(ReceiveSet::VT_GROUP, group);
+ }
+ explicit ReceiveSetBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ ReceiveSetBuilder &operator=(const ReceiveSetBuilder &);
+ flatbuffers::Offset<ReceiveSet> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<ReceiveSet>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<ReceiveSet> CreateReceiveSet(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicyReceive> context_default = 0,
+ flatbuffers::Offset<PolicyReceive> context_mandatory = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>>> user = 0,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<PolicyReceivePair>>> group = 0) {
+ ReceiveSetBuilder builder_(_fbb);
+ builder_.add_group(group);
+ builder_.add_user(user);
+ builder_.add_context_mandatory(context_mandatory);
+ builder_.add_context_default(context_default);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<ReceiveSet> CreateReceiveSetDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicyReceive> context_default = 0,
+ flatbuffers::Offset<PolicyReceive> context_mandatory = 0,
+ const std::vector<flatbuffers::Offset<PolicyReceivePair>> *user = nullptr,
+ const std::vector<flatbuffers::Offset<PolicyReceivePair>> *group = nullptr) {
+ auto user__ = user ? _fbb.CreateVector<flatbuffers::Offset<PolicyReceivePair>>(*user) : 0;
+ auto group__ = group ? _fbb.CreateVector<flatbuffers::Offset<PolicyReceivePair>>(*group) : 0;
+ return FB::CreateReceiveSet(
+ _fbb,
+ context_default,
+ context_mandatory,
+ user__,
+ group__);
+}
+
+struct PolicyReceive FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_ITEMS = 4
+ };
+ const flatbuffers::Vector<flatbuffers::Offset<ItemReceive>> *items() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<ItemReceive>> *>(VT_ITEMS);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_ITEMS) &&
+ verifier.VerifyVector(items()) &&
+ verifier.VerifyVectorOfTables(items()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicyReceiveBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_items(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<ItemReceive>>> items) {
+ fbb_.AddOffset(PolicyReceive::VT_ITEMS, items);
+ }
+ explicit PolicyReceiveBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicyReceiveBuilder &operator=(const PolicyReceiveBuilder &);
+ flatbuffers::Offset<PolicyReceive> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicyReceive>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicyReceive> CreatePolicyReceive(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<ItemReceive>>> items = 0) {
+ PolicyReceiveBuilder builder_(_fbb);
+ builder_.add_items(items);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<PolicyReceive> CreatePolicyReceiveDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ const std::vector<flatbuffers::Offset<ItemReceive>> *items = nullptr) {
+ auto items__ = items ? _fbb.CreateVector<flatbuffers::Offset<ItemReceive>>(*items) : 0;
+ return FB::CreatePolicyReceive(
+ _fbb,
+ items__);
+}
+
+struct AccessSet FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_CONTEXT_DEFAULT = 4,
+ VT_CONTEXT_MANDATORY = 6
+ };
+ const PolicyAccess *context_default() const {
+ return GetPointer<const PolicyAccess *>(VT_CONTEXT_DEFAULT);
+ }
+ const PolicyAccess *context_mandatory() const {
+ return GetPointer<const PolicyAccess *>(VT_CONTEXT_MANDATORY);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_CONTEXT_DEFAULT) &&
+ verifier.VerifyTable(context_default()) &&
+ VerifyOffset(verifier, VT_CONTEXT_MANDATORY) &&
+ verifier.VerifyTable(context_mandatory()) &&
+ verifier.EndTable();
+ }
+};
+
+struct AccessSetBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_context_default(flatbuffers::Offset<PolicyAccess> context_default) {
+ fbb_.AddOffset(AccessSet::VT_CONTEXT_DEFAULT, context_default);
+ }
+ void add_context_mandatory(flatbuffers::Offset<PolicyAccess> context_mandatory) {
+ fbb_.AddOffset(AccessSet::VT_CONTEXT_MANDATORY, context_mandatory);
+ }
+ explicit AccessSetBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ AccessSetBuilder &operator=(const AccessSetBuilder &);
+ flatbuffers::Offset<AccessSet> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<AccessSet>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<AccessSet> CreateAccessSet(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<PolicyAccess> context_default = 0,
+ flatbuffers::Offset<PolicyAccess> context_mandatory = 0) {
+ AccessSetBuilder builder_(_fbb);
+ builder_.add_context_mandatory(context_mandatory);
+ builder_.add_context_default(context_default);
+ return builder_.Finish();
+}
+
+struct PolicyAccess FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_ITEMS = 4
+ };
+ const flatbuffers::Vector<flatbuffers::Offset<ItemAccess>> *items() const {
+ return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<ItemAccess>> *>(VT_ITEMS);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyOffset(verifier, VT_ITEMS) &&
+ verifier.VerifyVector(items()) &&
+ verifier.VerifyVectorOfTables(items()) &&
+ verifier.EndTable();
+ }
+};
+
+struct PolicyAccessBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_items(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<ItemAccess>>> items) {
+ fbb_.AddOffset(PolicyAccess::VT_ITEMS, items);
+ }
+ explicit PolicyAccessBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ PolicyAccessBuilder &operator=(const PolicyAccessBuilder &);
+ flatbuffers::Offset<PolicyAccess> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<PolicyAccess>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<PolicyAccess> CreatePolicyAccess(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<ItemAccess>>> items = 0) {
+ PolicyAccessBuilder builder_(_fbb);
+ builder_.add_items(items);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<PolicyAccess> CreatePolicyAccessDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ const std::vector<flatbuffers::Offset<ItemAccess>> *items = nullptr) {
+ auto items__ = items ? _fbb.CreateVector<flatbuffers::Offset<ItemAccess>>(*items) : 0;
+ return FB::CreatePolicyAccess(
+ _fbb,
+ items__);
+}
+
+struct ItemAccess FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_UID = 4,
+ VT_GID = 6,
+ VT_DECISION = 8,
+ VT_TYPE = 10
+ };
+ uint32_t uid() const {
+ return GetField<uint32_t>(VT_UID, 0);
+ }
+ uint32_t gid() const {
+ return GetField<uint32_t>(VT_GID, 0);
+ }
+ const DecisionItem *decision() const {
+ return GetPointer<const DecisionItem *>(VT_DECISION);
+ }
+ BusAccessType type() const {
+ return static_cast<BusAccessType>(GetField<int8_t>(VT_TYPE, 0));
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyField<uint32_t>(verifier, VT_UID) &&
+ VerifyField<uint32_t>(verifier, VT_GID) &&
+ VerifyOffset(verifier, VT_DECISION) &&
+ verifier.VerifyTable(decision()) &&
+ VerifyField<int8_t>(verifier, VT_TYPE) &&
+ verifier.EndTable();
+ }
+};
+
+struct ItemAccessBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_uid(uint32_t uid) {
+ fbb_.AddElement<uint32_t>(ItemAccess::VT_UID, uid, 0);
+ }
+ void add_gid(uint32_t gid) {
+ fbb_.AddElement<uint32_t>(ItemAccess::VT_GID, gid, 0);
+ }
+ void add_decision(flatbuffers::Offset<DecisionItem> decision) {
+ fbb_.AddOffset(ItemAccess::VT_DECISION, decision);
+ }
+ void add_type(BusAccessType type) {
+ fbb_.AddElement<int8_t>(ItemAccess::VT_TYPE, static_cast<int8_t>(type), 0);
+ }
+ explicit ItemAccessBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ ItemAccessBuilder &operator=(const ItemAccessBuilder &);
+ flatbuffers::Offset<ItemAccess> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<ItemAccess>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<ItemAccess> CreateItemAccess(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ uint32_t uid = 0,
+ uint32_t gid = 0,
+ flatbuffers::Offset<DecisionItem> decision = 0,
+ BusAccessType type = BusAccessType_USER) {
+ ItemAccessBuilder builder_(_fbb);
+ builder_.add_decision(decision);
+ builder_.add_gid(gid);
+ builder_.add_uid(uid);
+ builder_.add_type(type);
+ return builder_.Finish();
+}
+
+struct DecisionItem FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
+ VT_DECISION = 4,
+ VT_PRIVILEGE = 6
+ };
+ Decision decision() const {
+ return static_cast<Decision>(GetField<int8_t>(VT_DECISION, 0));
+ }
+ const flatbuffers::String *privilege() const {
+ return GetPointer<const flatbuffers::String *>(VT_PRIVILEGE);
+ }
+ bool Verify(flatbuffers::Verifier &verifier) const {
+ return VerifyTableStart(verifier) &&
+ VerifyField<int8_t>(verifier, VT_DECISION) &&
+ VerifyOffset(verifier, VT_PRIVILEGE) &&
+ verifier.VerifyString(privilege()) &&
+ verifier.EndTable();
+ }
+};
+
+struct DecisionItemBuilder {
+ flatbuffers::FlatBufferBuilder &fbb_;
+ flatbuffers::uoffset_t start_;
+ void add_decision(Decision decision) {
+ fbb_.AddElement<int8_t>(DecisionItem::VT_DECISION, static_cast<int8_t>(decision), 0);
+ }
+ void add_privilege(flatbuffers::Offset<flatbuffers::String> privilege) {
+ fbb_.AddOffset(DecisionItem::VT_PRIVILEGE, privilege);
+ }
+ explicit DecisionItemBuilder(flatbuffers::FlatBufferBuilder &_fbb)
+ : fbb_(_fbb) {
+ start_ = fbb_.StartTable();
+ }
+ DecisionItemBuilder &operator=(const DecisionItemBuilder &);
+ flatbuffers::Offset<DecisionItem> Finish() {
+ const auto end = fbb_.EndTable(start_);
+ auto o = flatbuffers::Offset<DecisionItem>(end);
+ return o;
+ }
+};
+
+inline flatbuffers::Offset<DecisionItem> CreateDecisionItem(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ Decision decision = Decision_ANY,
+ flatbuffers::Offset<flatbuffers::String> privilege = 0) {
+ DecisionItemBuilder builder_(_fbb);
+ builder_.add_privilege(privilege);
+ builder_.add_decision(decision);
+ return builder_.Finish();
+}
+
+inline flatbuffers::Offset<DecisionItem> CreateDecisionItemDirect(
+ flatbuffers::FlatBufferBuilder &_fbb,
+ Decision decision = Decision_ANY,
+ const char *privilege = nullptr) {
+ auto privilege__ = privilege ? _fbb.CreateString(privilege) : 0;
+ return FB::CreateDecisionItem(
+ _fbb,
+ decision,
+ privilege__);
+}
+
+inline const FB::File *GetFile(const void *buf) {
+ return flatbuffers::GetRoot<FB::File>(buf);
+}
+
+inline const FB::File *GetSizePrefixedFile(const void *buf) {
+ return flatbuffers::GetSizePrefixedRoot<FB::File>(buf);
+}
+
+inline bool VerifyFileBuffer(
+ flatbuffers::Verifier &verifier) {
+ return verifier.VerifyBuffer<FB::File>(nullptr);
+}
+
+inline bool VerifySizePrefixedFileBuffer(
+ flatbuffers::Verifier &verifier) {
+ return verifier.VerifySizePrefixedBuffer<FB::File>(nullptr);
+}
+
+inline void FinishFileBuffer(
+ flatbuffers::FlatBufferBuilder &fbb,
+ flatbuffers::Offset<FB::File> root) {
+ fbb.Finish(root);
+}
+
+inline void FinishSizePrefixedFileBuffer(
+ flatbuffers::FlatBufferBuilder &fbb,
+ flatbuffers::Offset<FB::File> root) {
+ fbb.FinishSizePrefixed(root);
+}
+
+} // namespace FB
+
+#endif // FLATBUFFERS_GENERATED_FB_FB_H_