| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240 | /* Automatically generated nanopb header *//* Generated by nanopb-0.4.6-dev */#ifndef PB_PROTOBUF_METADATA_PB_H_INCLUDED#define PB_PROTOBUF_METADATA_PB_H_INCLUDED#include <pb.h>#if PB_PROTO_HEADER_VERSION != 40#error Regenerate this file with the current version of nanopb generator.#endif/* Enum definitions */typedef enum _AudioFormat {     AudioFormat_OGG_VORBIS_96 = 0,     AudioFormat_OGG_VORBIS_160 = 1,     AudioFormat_OGG_VORBIS_320 = 2,     AudioFormat_MP3_256 = 3,     AudioFormat_MP3_320 = 4,     AudioFormat_MP3_160 = 5,     AudioFormat_MP3_96 = 6,     AudioFormat_MP3_160_ENC = 7,     AudioFormat_AAC_24 = 8,     AudioFormat_AAC_48 = 9 } AudioFormat;/* Struct definitions */typedef struct _Artist {     pb_bytes_array_t *gid;     char *name; } Artist;typedef struct _Image {     pb_bytes_array_t *file_id; } Image;typedef struct _ImageGroup {     pb_size_t image_count;    struct _Image *image; } ImageGroup;typedef struct _Restriction {     char *countries_allowed;     char *countries_forbidden; } Restriction;typedef struct _Album {     pb_callback_t gid;     char *name;     bool has_cover_group;    ImageGroup cover_group; } Album;typedef struct _AudioFile {     pb_bytes_array_t *file_id;     bool has_format;    AudioFormat format; } AudioFile;typedef struct _Episode {     pb_bytes_array_t *gid;     char *name;     bool has_duration;    int32_t duration;     pb_size_t audio_count;    struct _AudioFile *audio;     struct _ImageGroup *covers; } Episode;typedef struct _Track {     pb_bytes_array_t *gid;     char *name;     bool has_album;    Album album;     pb_size_t artist_count;    struct _Artist *artist;     bool has_duration;    int32_t duration;     pb_size_t restriction_count;    struct _Restriction *restriction;     pb_size_t file_count;    struct _AudioFile *file;     pb_size_t alternative_count;    struct _Track *alternative; } Track;/* Helper constants for enums */#define _AudioFormat_MIN AudioFormat_OGG_VORBIS_96#define _AudioFormat_MAX AudioFormat_AAC_48#define _AudioFormat_ARRAYSIZE ((AudioFormat)(AudioFormat_AAC_48+1))#ifdef __cplusplusextern "C" {#endif/* Initializer values for message structs */#define AudioFile_init_default                   {NULL, false, _AudioFormat_MIN}#define Restriction_init_default                 {NULL, NULL}#define Image_init_default                       {NULL}#define ImageGroup_init_default                  {0, NULL}#define Album_init_default                       {{{NULL}, NULL}, NULL, false, ImageGroup_init_default}#define Artist_init_default                      {NULL, NULL}#define Track_init_default                       {NULL, NULL, false, Album_init_default, 0, NULL, false, 0, 0, NULL, 0, NULL, 0, NULL}#define Episode_init_default                     {NULL, NULL, false, 0, 0, NULL, NULL}#define AudioFile_init_zero                      {NULL, false, _AudioFormat_MIN}#define Restriction_init_zero                    {NULL, NULL}#define Image_init_zero                          {NULL}#define ImageGroup_init_zero                     {0, NULL}#define Album_init_zero                          {{{NULL}, NULL}, NULL, false, ImageGroup_init_zero}#define Artist_init_zero                         {NULL, NULL}#define Track_init_zero                          {NULL, NULL, false, Album_init_zero, 0, NULL, false, 0, 0, NULL, 0, NULL, 0, NULL}#define Episode_init_zero                        {NULL, NULL, false, 0, 0, NULL, NULL}/* Field tags (for use in manual encoding/decoding) */#define Artist_gid_tag                           1#define Artist_name_tag                          2#define Image_file_id_tag                        1#define ImageGroup_image_tag                     1#define Restriction_countries_allowed_tag        2#define Restriction_countries_forbidden_tag      3#define Album_gid_tag                            1#define Album_name_tag                           2#define Album_cover_group_tag                    17#define AudioFile_file_id_tag                    1#define AudioFile_format_tag                     2#define Episode_gid_tag                          1#define Episode_name_tag                         2#define Episode_duration_tag                     7#define Episode_audio_tag                        12#define Episode_covers_tag                       68#define Track_gid_tag                            1#define Track_name_tag                           2#define Track_album_tag                          3#define Track_artist_tag                         4#define Track_duration_tag                       7#define Track_restriction_tag                    11#define Track_file_tag                           12#define Track_alternative_tag                    13/* Struct field encoding specification for nanopb */#define AudioFile_FIELDLIST(X, a) \X(a, POINTER,  OPTIONAL, BYTES,    file_id,           1) \X(a, STATIC,   OPTIONAL, UENUM,    format,            2)#define AudioFile_CALLBACK NULL#define AudioFile_DEFAULT NULL#define Restriction_FIELDLIST(X, a) \X(a, POINTER,  OPTIONAL, STRING,   countries_allowed,   2) \X(a, POINTER,  OPTIONAL, STRING,   countries_forbidden,   3)#define Restriction_CALLBACK NULL#define Restriction_DEFAULT NULL#define Image_FIELDLIST(X, a) \X(a, POINTER,  OPTIONAL, BYTES,    file_id,           1)#define Image_CALLBACK NULL#define Image_DEFAULT NULL#define ImageGroup_FIELDLIST(X, a) \X(a, POINTER,  REPEATED, MESSAGE,  image,             1)#define ImageGroup_CALLBACK NULL#define ImageGroup_DEFAULT NULL#define ImageGroup_image_MSGTYPE Image#define Album_FIELDLIST(X, a) \X(a, CALLBACK, OPTIONAL, BYTES,    gid,               1) \X(a, POINTER,  OPTIONAL, STRING,   name,              2) \X(a, STATIC,   OPTIONAL, MESSAGE,  cover_group,      17)#define Album_CALLBACK pb_default_field_callback#define Album_DEFAULT NULL#define Album_cover_group_MSGTYPE ImageGroup#define Artist_FIELDLIST(X, a) \X(a, POINTER,  OPTIONAL, BYTES,    gid,               1) \X(a, POINTER,  OPTIONAL, STRING,   name,              2)#define Artist_CALLBACK NULL#define Artist_DEFAULT NULL#define Track_FIELDLIST(X, a) \X(a, POINTER,  OPTIONAL, BYTES,    gid,               1) \X(a, POINTER,  OPTIONAL, STRING,   name,              2) \X(a, STATIC,   OPTIONAL, MESSAGE,  album,             3) \X(a, POINTER,  REPEATED, MESSAGE,  artist,            4) \X(a, STATIC,   OPTIONAL, SINT32,   duration,          7) \X(a, POINTER,  REPEATED, MESSAGE,  restriction,      11) \X(a, POINTER,  REPEATED, MESSAGE,  file,             12) \X(a, POINTER,  REPEATED, MESSAGE,  alternative,      13)#define Track_CALLBACK NULL#define Track_DEFAULT NULL#define Track_album_MSGTYPE Album#define Track_artist_MSGTYPE Artist#define Track_restriction_MSGTYPE Restriction#define Track_file_MSGTYPE AudioFile#define Track_alternative_MSGTYPE Track#define Episode_FIELDLIST(X, a) \X(a, POINTER,  OPTIONAL, BYTES,    gid,               1) \X(a, POINTER,  OPTIONAL, STRING,   name,              2) \X(a, STATIC,   OPTIONAL, SINT32,   duration,          7) \X(a, POINTER,  REPEATED, MESSAGE,  audio,            12) \X(a, POINTER,  OPTIONAL, MESSAGE,  covers,           68)#define Episode_CALLBACK NULL#define Episode_DEFAULT NULL#define Episode_audio_MSGTYPE AudioFile#define Episode_covers_MSGTYPE ImageGroupextern const pb_msgdesc_t AudioFile_msg;extern const pb_msgdesc_t Restriction_msg;extern const pb_msgdesc_t Image_msg;extern const pb_msgdesc_t ImageGroup_msg;extern const pb_msgdesc_t Album_msg;extern const pb_msgdesc_t Artist_msg;extern const pb_msgdesc_t Track_msg;extern const pb_msgdesc_t Episode_msg;/* Defines for backwards compatibility with code written before nanopb-0.4.0 */#define AudioFile_fields &AudioFile_msg#define Restriction_fields &Restriction_msg#define Image_fields &Image_msg#define ImageGroup_fields &ImageGroup_msg#define Album_fields &Album_msg#define Artist_fields &Artist_msg#define Track_fields &Track_msg#define Episode_fields &Episode_msg/* Maximum encoded size of messages (where known) *//* AudioFile_size depends on runtime parameters *//* Restriction_size depends on runtime parameters *//* Image_size depends on runtime parameters *//* ImageGroup_size depends on runtime parameters *//* Album_size depends on runtime parameters *//* Artist_size depends on runtime parameters *//* Track_size depends on runtime parameters *//* Episode_size depends on runtime parameters */#ifdef __cplusplus} /* extern "C" */#endif#endif
 |