#ifndef COMMAND_READER_H
#define COMMAND_READER_H

/* Generated by flatcc 0.5.2 FlatBuffers schema compiler for C by dvide.com */

#ifndef FLATBUFFERS_COMMON_READER_H
#include "flatbuffers_common_reader.h"
#endif
#ifndef UPDATE_READER_H
#include "Update_reader.h"
#endif
#ifndef BACK_READER_H
#include "Back_reader.h"
#endif
#ifndef OPEN_READER_H
#include "Open_reader.h"
#endif
#ifndef ACTION_READER_H
#include "Action_reader.h"
#endif
#ifndef APPLICATION_READER_H
#include "Application_reader.h"
#endif
#ifndef VIEW_READER_H
#include "View_reader.h"
#endif
#ifndef ID_READER_H
#include "Id_reader.h"
#endif
#ifndef HANDSHAKE_READER_H
#include "Handshake_reader.h"
#endif
#include "flatcc/flatcc_flatbuffers.h"
#ifndef __alignas_is_defined
#include <stdalign.h>
#endif
#include "flatcc/flatcc_prologue.h"
#ifndef flatbuffers_identifier
#define flatbuffers_identifier 0
#endif
#ifndef flatbuffers_extension
#define flatbuffers_extension ".bin"
#endif


typedef const struct AllWatchSerialize_Command_table *AllWatchSerialize_Command_table_t;
typedef const flatbuffers_uoffset_t *AllWatchSerialize_Command_vec_t;
typedef flatbuffers_uoffset_t *AllWatchSerialize_Command_mutable_vec_t;
#ifndef AllWatchSerialize_Command_identifier
#define AllWatchSerialize_Command_identifier flatbuffers_identifier
#endif
#define AllWatchSerialize_Command_type_hash ((flatbuffers_thash_t)0xd4b1d714)
#define AllWatchSerialize_Command_type_identifier "\x14\xd7\xb1\xd4"


typedef uint8_t AllWatchSerialize_CommandType_union_type_t;
__flatbuffers_define_integer_type(AllWatchSerialize_CommandType, AllWatchSerialize_CommandType_union_type_t, 8)
__flatbuffers_define_union(flatbuffers_, AllWatchSerialize_CommandType)
#define AllWatchSerialize_CommandType_NONE ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(0))
#define AllWatchSerialize_CommandType_Handshake ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(1))
#define AllWatchSerialize_CommandType_Application ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(2))
#define AllWatchSerialize_CommandType_View ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(3))
#define AllWatchSerialize_CommandType_Action ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(4))
#define AllWatchSerialize_CommandType_Open ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(5))
#define AllWatchSerialize_CommandType_Back ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(6))
#define AllWatchSerialize_CommandType_Update ((AllWatchSerialize_CommandType_union_type_t)UINT8_C(7))

static inline const char *AllWatchSerialize_CommandType_type_name(AllWatchSerialize_CommandType_union_type_t type)
{
    switch (type) {
    case AllWatchSerialize_CommandType_NONE: return "NONE";
    case AllWatchSerialize_CommandType_Handshake: return "Handshake";
    case AllWatchSerialize_CommandType_Application: return "Application";
    case AllWatchSerialize_CommandType_View: return "View";
    case AllWatchSerialize_CommandType_Action: return "Action";
    case AllWatchSerialize_CommandType_Open: return "Open";
    case AllWatchSerialize_CommandType_Back: return "Back";
    case AllWatchSerialize_CommandType_Update: return "Update";
    default: return "";
    }
}

static inline int AllWatchSerialize_CommandType_is_known_type(AllWatchSerialize_CommandType_union_type_t type)
{
    switch (type) {
    case AllWatchSerialize_CommandType_NONE: return 1;
    case AllWatchSerialize_CommandType_Handshake: return 1;
    case AllWatchSerialize_CommandType_Application: return 1;
    case AllWatchSerialize_CommandType_View: return 1;
    case AllWatchSerialize_CommandType_Action: return 1;
    case AllWatchSerialize_CommandType_Open: return 1;
    case AllWatchSerialize_CommandType_Back: return 1;
    case AllWatchSerialize_CommandType_Update: return 1;
    default: return 0;
    }
}


struct AllWatchSerialize_Command_table { uint8_t unused__; };

static inline size_t AllWatchSerialize_Command_vec_len(AllWatchSerialize_Command_vec_t vec)
__flatbuffers_vec_len(vec)
static inline AllWatchSerialize_Command_table_t AllWatchSerialize_Command_vec_at(AllWatchSerialize_Command_vec_t vec, size_t i)
__flatbuffers_offset_vec_at(AllWatchSerialize_Command_table_t, vec, i, 0)
__flatbuffers_table_as_root(AllWatchSerialize_Command)

__flatbuffers_define_union_field(flatbuffers_, 1, AllWatchSerialize_Command, command, AllWatchSerialize_CommandType, 0)
__flatbuffers_define_table_field(2, AllWatchSerialize_Command, id, AllWatchSerialize_Id_table_t, 0)

#include "flatcc/flatcc_epilogue.h"
#endif /* COMMAND_READER_H */
