framework.pb-c.h 30.5 KB
Newer Older
L
liuruilong 已提交
1 2 3 4 5 6
/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: framework.proto */

#ifndef PROTOBUF_C_framework_2eproto__INCLUDED
#define PROTOBUF_C_framework_2eproto__INCLUDED

7
#include <protobuf-c/protobuf-c.h>
L
liuruilong 已提交
8 9 10 11 12

PROTOBUF_C__BEGIN_DECLS

#if PROTOBUF_C_VERSION_NUMBER < 1000000
# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
13
#elif 1003001 < PROTOBUF_C_MIN_COMPILER_VERSION
L
liuruilong 已提交
14 15 16
# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
#endif

H
hjchen2 已提交
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
typedef struct _PaddleMobile__Framework__Proto__Version
    PaddleMobile__Framework__Proto__Version;
typedef struct _PaddleMobile__Framework__Proto__OpDesc
    PaddleMobile__Framework__Proto__OpDesc;
typedef struct _PaddleMobile__Framework__Proto__OpDesc__Attr
    PaddleMobile__Framework__Proto__OpDesc__Attr;
typedef struct _PaddleMobile__Framework__Proto__OpDesc__Var
    PaddleMobile__Framework__Proto__OpDesc__Var;
typedef struct _PaddleMobile__Framework__Proto__OpProto
    PaddleMobile__Framework__Proto__OpProto;
typedef struct _PaddleMobile__Framework__Proto__OpProto__Var
    PaddleMobile__Framework__Proto__OpProto__Var;
typedef struct _PaddleMobile__Framework__Proto__OpProto__Attr
    PaddleMobile__Framework__Proto__OpProto__Attr;
typedef struct _PaddleMobile__Framework__Proto__VarType
    PaddleMobile__Framework__Proto__VarType;
typedef struct _PaddleMobile__Framework__Proto__VarType__TensorDesc
    PaddleMobile__Framework__Proto__VarType__TensorDesc;
typedef struct _PaddleMobile__Framework__Proto__VarType__LoDTensorDesc
    PaddleMobile__Framework__Proto__VarType__LoDTensorDesc;
typedef struct _PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc
    PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc;
typedef struct _PaddleMobile__Framework__Proto__VarType__ReaderDesc
    PaddleMobile__Framework__Proto__VarType__ReaderDesc;
typedef struct _PaddleMobile__Framework__Proto__VarType__ChannelDesc
    PaddleMobile__Framework__Proto__VarType__ChannelDesc;
typedef struct _PaddleMobile__Framework__Proto__VarType__Tuple
    PaddleMobile__Framework__Proto__VarType__Tuple;
typedef struct _PaddleMobile__Framework__Proto__VarDesc
    PaddleMobile__Framework__Proto__VarDesc;
typedef struct _PaddleMobile__Framework__Proto__BlockDesc
    PaddleMobile__Framework__Proto__BlockDesc;
typedef struct _PaddleMobile__Framework__Proto__ProgramDesc
    PaddleMobile__Framework__Proto__ProgramDesc;
L
liuruilong 已提交
51 52 53 54 55 56 57 58 59 60 61 62 63 64

/* --- enums --- */

typedef enum _PaddleMobile__Framework__Proto__VarType__Type {
  /*
   * Pod Types
   */
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__BOOL = 0,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__INT16 = 1,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__INT32 = 2,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__INT64 = 3,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__FP16 = 4,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__FP32 = 5,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__FP64 = 6,
65 66 67 68 69 70
  /*
   * Tensor<size_t> is used in C++.
   */
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__SIZE_T = 19,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__UINT8 = 20,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__INT8 = 21,
L
liuruilong 已提交
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
  /*
   * Other types that may need additional descriptions
   */
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__LOD_TENSOR = 7,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__SELECTED_ROWS = 8,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__FEED_MINIBATCH = 9,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__FETCH_LIST = 10,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__STEP_SCOPES = 11,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__LOD_RANK_TABLE = 12,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__LOD_TENSOR_ARRAY = 13,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__PLACE_LIST = 14,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__READER = 15,
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__CHANNEL = 16,
  /*
   * Any runtime decided variable type is raw
   * raw variables should manage their own allocations
   * in operators like nccl_op
   */
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__RAW = 17,
H
hjchen2 已提交
90 91 92
  PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__TUPLE =
      18 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(
          PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE)
L
liuruilong 已提交
93 94 95 96 97 98 99 100 101 102 103
} PaddleMobile__Framework__Proto__VarType__Type;
typedef enum _PaddleMobile__Framework__Proto__AttrType {
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__INT = 0,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__FLOAT = 1,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__STRING = 2,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__INTS = 3,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__FLOATS = 4,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__STRINGS = 5,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__BOOLEAN = 6,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__BOOLEANS = 7,
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__BLOCK = 8,
104
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__LONG = 9,
H
hjchen2 已提交
105 106 107
  PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__BLOCKS =
      10 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(
          PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE)
L
liuruilong 已提交
108 109 110 111
} PaddleMobile__Framework__Proto__AttrType;

/* --- messages --- */

112 113 114 115 116 117
/*
 * Any incompatible changes to ProgramDesc and its dependencies should
 * raise the version defined version.h.
 * Serailization and Deserialization codes should be modified in a way
 * that supports old versions following the version and compatibility policy.
 */
H
hjchen2 已提交
118
struct _PaddleMobile__Framework__Proto__Version {
119 120 121 122
  ProtobufCMessage base;
  protobuf_c_boolean has_version;
  int64_t version;
};
H
hjchen2 已提交
123 124 125 126 127 128 129 130
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VERSION__INIT         \
  {                                                            \
    PROTOBUF_C_MESSAGE_INIT(                                   \
        &paddle_mobile__framework__proto__version__descriptor) \
    , 0, 0ll                                                   \
  }

struct _PaddleMobile__Framework__Proto__OpDesc__Attr {
L
liuruilong 已提交
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
  ProtobufCMessage base;
  char *name;
  PaddleMobile__Framework__Proto__AttrType type;
  protobuf_c_boolean has_i;
  int32_t i;
  protobuf_c_boolean has_f;
  float f;
  char *s;
  size_t n_ints;
  int32_t *ints;
  size_t n_floats;
  float *floats;
  size_t n_strings;
  char **strings;
  protobuf_c_boolean has_b;
  protobuf_c_boolean b;
  size_t n_bools;
  protobuf_c_boolean *bools;
  protobuf_c_boolean has_block_idx;
  int32_t block_idx;
  protobuf_c_boolean has_l;
  int64_t l;
153 154
  size_t n_blocks_idx;
  int32_t *blocks_idx;
L
liuruilong 已提交
155
};
H
hjchen2 已提交
156 157 158 159 160 161 162 163 164
#define PADDLE_MOBILE__FRAMEWORK__PROTO__OP_DESC__ATTR__INIT                   \
  {                                                                            \
    PROTOBUF_C_MESSAGE_INIT(                                                   \
        &paddle_mobile__framework__proto__op_desc__attr__descriptor)           \
    , NULL, PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__INT, 0, 0, 0, 0, NULL, \
        0, NULL, 0, NULL, 0, NULL, 0, 0, 0, NULL, 0, 0, 0, 0, 0, NULL          \
  }

struct _PaddleMobile__Framework__Proto__OpDesc__Var {
L
liuruilong 已提交
165 166 167 168 169
  ProtobufCMessage base;
  char *parameter;
  size_t n_arguments;
  char **arguments;
};
H
hjchen2 已提交
170 171 172 173 174 175
#define PADDLE_MOBILE__FRAMEWORK__PROTO__OP_DESC__VAR__INIT         \
  {                                                                 \
    PROTOBUF_C_MESSAGE_INIT(                                        \
        &paddle_mobile__framework__proto__op_desc__var__descriptor) \
    , NULL, 0, NULL                                                 \
  }
L
liuruilong 已提交
176 177 178 179 180

/*
 * OpDesc describes an instance of a C++ framework::OperatorBase
 * derived class type.
 */
H
hjchen2 已提交
181
struct _PaddleMobile__Framework__Proto__OpDesc {
L
liuruilong 已提交
182 183 184 185 186 187 188 189 190 191 192
  ProtobufCMessage base;
  char *type;
  size_t n_inputs;
  PaddleMobile__Framework__Proto__OpDesc__Var **inputs;
  size_t n_outputs;
  PaddleMobile__Framework__Proto__OpDesc__Var **outputs;
  size_t n_attrs;
  PaddleMobile__Framework__Proto__OpDesc__Attr **attrs;
  protobuf_c_boolean has_is_target;
  protobuf_c_boolean is_target;
};
H
hjchen2 已提交
193 194 195 196 197 198
#define PADDLE_MOBILE__FRAMEWORK__PROTO__OP_DESC__INIT         \
  {                                                            \
    PROTOBUF_C_MESSAGE_INIT(                                   \
        &paddle_mobile__framework__proto__op_desc__descriptor) \
    , NULL, 0, NULL, 0, NULL, 0, NULL, 0, 0                    \
  }
L
liuruilong 已提交
199 200 201 202

/*
 * VarProto describes the C++ type framework::Variable.
 */
H
hjchen2 已提交
203
struct _PaddleMobile__Framework__Proto__OpProto__Var {
L
liuruilong 已提交
204 205 206 207 208 209 210 211 212
  ProtobufCMessage base;
  char *name;
  char *comment;
  protobuf_c_boolean has_duplicable;
  protobuf_c_boolean duplicable;
  protobuf_c_boolean has_intermediate;
  protobuf_c_boolean intermediate;
  protobuf_c_boolean has_dispensable;
  protobuf_c_boolean dispensable;
213
  char *reuse;
L
liuruilong 已提交
214
};
H
hjchen2 已提交
215 216 217 218 219 220
#define PADDLE_MOBILE__FRAMEWORK__PROTO__OP_PROTO__VAR__INIT         \
  {                                                                  \
    PROTOBUF_C_MESSAGE_INIT(                                         \
        &paddle_mobile__framework__proto__op_proto__var__descriptor) \
    , NULL, NULL, 0, 0, 0, 0, 0, 0, NULL                             \
  }
L
liuruilong 已提交
221 222 223 224

/*
 * AttrProto describes the C++ type Attribute.
 */
H
hjchen2 已提交
225
struct _PaddleMobile__Framework__Proto__OpProto__Attr {
L
liuruilong 已提交
226 227 228 229 230 231 232 233 234 235 236 237
  ProtobufCMessage base;
  char *name;
  PaddleMobile__Framework__Proto__AttrType type;
  char *comment;
  /*
   * If that attribute is generated, it means the Paddle third
   * language binding has responsibility to fill that
   * attribute. End-User should not set that attribute.
   */
  protobuf_c_boolean has_generated;
  protobuf_c_boolean generated;
};
H
hjchen2 已提交
238 239 240 241 242 243
#define PADDLE_MOBILE__FRAMEWORK__PROTO__OP_PROTO__ATTR__INIT           \
  {                                                                     \
    PROTOBUF_C_MESSAGE_INIT(                                            \
        &paddle_mobile__framework__proto__op_proto__attr__descriptor)   \
    , NULL, PADDLE_MOBILE__FRAMEWORK__PROTO__ATTR_TYPE__INT, NULL, 0, 0 \
  }
L
liuruilong 已提交
244 245 246 247

/*
 * OpProto describes a C++ framework::OperatorBase derived class.
 */
H
hjchen2 已提交
248
struct _PaddleMobile__Framework__Proto__OpProto {
L
liuruilong 已提交
249 250 251 252 253 254 255 256 257 258
  ProtobufCMessage base;
  char *type;
  size_t n_inputs;
  PaddleMobile__Framework__Proto__OpProto__Var **inputs;
  size_t n_outputs;
  PaddleMobile__Framework__Proto__OpProto__Var **outputs;
  size_t n_attrs;
  PaddleMobile__Framework__Proto__OpProto__Attr **attrs;
  char *comment;
};
H
hjchen2 已提交
259 260 261 262 263 264 265 266
#define PADDLE_MOBILE__FRAMEWORK__PROTO__OP_PROTO__INIT         \
  {                                                             \
    PROTOBUF_C_MESSAGE_INIT(                                    \
        &paddle_mobile__framework__proto__op_proto__descriptor) \
    , NULL, 0, NULL, 0, NULL, 0, NULL, NULL                     \
  }

struct _PaddleMobile__Framework__Proto__VarType__TensorDesc {
L
liuruilong 已提交
267 268 269 270 271 272 273 274 275 276 277
  ProtobufCMessage base;
  /*
   * Should only be PODType. Is enforced in C++
   */
  PaddleMobile__Framework__Proto__VarType__Type data_type;
  /*
   * [UNK, 640, 480] is saved as [-1, 640, 480]
   */
  size_t n_dims;
  int64_t *dims;
};
H
hjchen2 已提交
278 279 280 281 282 283 284 285
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TENSOR_DESC__INIT         \
  {                                                                          \
    PROTOBUF_C_MESSAGE_INIT(                                                 \
        &paddle_mobile__framework__proto__var_type__tensor_desc__descriptor) \
    , PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__BOOL, 0, NULL         \
  }

struct _PaddleMobile__Framework__Proto__VarType__LoDTensorDesc {
L
liuruilong 已提交
286 287 288 289 290
  ProtobufCMessage base;
  PaddleMobile__Framework__Proto__VarType__TensorDesc *tensor;
  protobuf_c_boolean has_lod_level;
  int32_t lod_level;
};
H
hjchen2 已提交
291 292 293 294 295 296 297 298
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__LO_DTENSOR_DESC__INIT         \
  {                                                                              \
    PROTOBUF_C_MESSAGE_INIT(                                                     \
        &paddle_mobile__framework__proto__var_type__lo_dtensor_desc__descriptor) \
    , NULL, 0, 0                                                                 \
  }

struct _PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc {
L
liuruilong 已提交
299 300 301 302 303
  ProtobufCMessage base;
  PaddleMobile__Framework__Proto__VarType__TensorDesc *tensor;
  protobuf_c_boolean has_lod_level;
  int32_t lod_level;
};
H
hjchen2 已提交
304 305 306 307 308 309 310 311
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__LO_DTENSOR_ARRAY_DESC__INIT         \
  {                                                                                    \
    PROTOBUF_C_MESSAGE_INIT(                                                           \
        &paddle_mobile__framework__proto__var_type__lo_dtensor_array_desc__descriptor) \
    , NULL, 0, 0                                                                       \
  }

struct _PaddleMobile__Framework__Proto__VarType__ReaderDesc {
L
liuruilong 已提交
312 313 314 315
  ProtobufCMessage base;
  size_t n_lod_tensor;
  PaddleMobile__Framework__Proto__VarType__LoDTensorDesc **lod_tensor;
};
H
hjchen2 已提交
316 317 318 319 320 321 322 323
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__READER_DESC__INIT         \
  {                                                                          \
    PROTOBUF_C_MESSAGE_INIT(                                                 \
        &paddle_mobile__framework__proto__var_type__reader_desc__descriptor) \
    , 0, NULL                                                                \
  }

struct _PaddleMobile__Framework__Proto__VarType__ChannelDesc {
L
liuruilong 已提交
324 325 326 327
  ProtobufCMessage base;
  PaddleMobile__Framework__Proto__VarType__Type data_type;
  int64_t capacity;
};
H
hjchen2 已提交
328 329 330 331 332 333 334 335
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__CHANNEL_DESC__INIT         \
  {                                                                           \
    PROTOBUF_C_MESSAGE_INIT(                                                  \
        &paddle_mobile__framework__proto__var_type__channel_desc__descriptor) \
    , PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__BOOL, 0                \
  }

struct _PaddleMobile__Framework__Proto__VarType__Tuple {
L
liuruilong 已提交
336 337 338 339
  ProtobufCMessage base;
  size_t n_element_type;
  PaddleMobile__Framework__Proto__VarType__Type *element_type;
};
H
hjchen2 已提交
340 341 342 343 344 345 346 347
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TUPLE__INIT         \
  {                                                                    \
    PROTOBUF_C_MESSAGE_INIT(                                           \
        &paddle_mobile__framework__proto__var_type__tuple__descriptor) \
    , 0, NULL                                                          \
  }

struct _PaddleMobile__Framework__Proto__VarType {
L
liuruilong 已提交
348 349 350 351 352 353 354 355 356
  ProtobufCMessage base;
  PaddleMobile__Framework__Proto__VarType__Type type;
  PaddleMobile__Framework__Proto__VarType__TensorDesc *selected_rows;
  PaddleMobile__Framework__Proto__VarType__LoDTensorDesc *lod_tensor;
  PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc *tensor_array;
  PaddleMobile__Framework__Proto__VarType__ReaderDesc *reader;
  PaddleMobile__Framework__Proto__VarType__ChannelDesc *channel;
  PaddleMobile__Framework__Proto__VarType__Tuple *tuple;
};
H
hjchen2 已提交
357 358 359 360 361 362 363 364 365
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__INIT                        \
  {                                                                            \
    PROTOBUF_C_MESSAGE_INIT(                                                   \
        &paddle_mobile__framework__proto__var_type__descriptor)                \
    , PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_TYPE__TYPE__BOOL, NULL, NULL, NULL, \
        NULL, NULL, NULL                                                       \
  }

struct _PaddleMobile__Framework__Proto__VarDesc {
L
liuruilong 已提交
366 367 368 369 370 371
  ProtobufCMessage base;
  char *name;
  PaddleMobile__Framework__Proto__VarType *type;
  protobuf_c_boolean has_persistable;
  protobuf_c_boolean persistable;
};
H
hjchen2 已提交
372 373 374 375 376 377 378 379
#define PADDLE_MOBILE__FRAMEWORK__PROTO__VAR_DESC__INIT         \
  {                                                             \
    PROTOBUF_C_MESSAGE_INIT(                                    \
        &paddle_mobile__framework__proto__var_desc__descriptor) \
    , NULL, NULL, 0, 0                                          \
  }

struct _PaddleMobile__Framework__Proto__BlockDesc {
L
liuruilong 已提交
380 381 382 383 384 385 386 387 388 389
  ProtobufCMessage base;
  int32_t idx;
  int32_t parent_idx;
  size_t n_vars;
  PaddleMobile__Framework__Proto__VarDesc **vars;
  size_t n_ops;
  PaddleMobile__Framework__Proto__OpDesc **ops;
  protobuf_c_boolean has_forward_block_idx;
  int32_t forward_block_idx;
};
H
hjchen2 已提交
390 391 392 393 394 395
#define PADDLE_MOBILE__FRAMEWORK__PROTO__BLOCK_DESC__INIT         \
  {                                                               \
    PROTOBUF_C_MESSAGE_INIT(                                      \
        &paddle_mobile__framework__proto__block_desc__descriptor) \
    , 0, 0, 0, NULL, 0, NULL, 0, -1                               \
  }
L
liuruilong 已提交
396 397 398 399 400 401 402 403

/*
 * Please refer to
 * https://github.com/PaddlePaddle/Paddle/blob/develop/doc/design/program.md
 * for more details.
 * TODO(panyx0718): A model can have multiple programs. Need a
 * way to distinguish them. Maybe ID or name?
 */
H
hjchen2 已提交
404
struct _PaddleMobile__Framework__Proto__ProgramDesc {
L
liuruilong 已提交
405 406 407
  ProtobufCMessage base;
  size_t n_blocks;
  PaddleMobile__Framework__Proto__BlockDesc **blocks;
408
  PaddleMobile__Framework__Proto__Version *version;
L
liuruilong 已提交
409
};
H
hjchen2 已提交
410 411 412 413 414 415
#define PADDLE_MOBILE__FRAMEWORK__PROTO__PROGRAM_DESC__INIT         \
  {                                                                 \
    PROTOBUF_C_MESSAGE_INIT(                                        \
        &paddle_mobile__framework__proto__program_desc__descriptor) \
    , 0, NULL, NULL                                                 \
  }
416 417

/* PaddleMobile__Framework__Proto__Version methods */
H
hjchen2 已提交
418 419 420 421 422 423 424 425 426
void paddle_mobile__framework__proto__version__init(
    PaddleMobile__Framework__Proto__Version *message);
size_t paddle_mobile__framework__proto__version__get_packed_size(
    const PaddleMobile__Framework__Proto__Version *message);
size_t paddle_mobile__framework__proto__version__pack(
    const PaddleMobile__Framework__Proto__Version *message, uint8_t *out);
size_t paddle_mobile__framework__proto__version__pack_to_buffer(
    const PaddleMobile__Framework__Proto__Version *message,
    ProtobufCBuffer *buffer);
427
PaddleMobile__Framework__Proto__Version *
H
hjchen2 已提交
428 429 430 431 432 433
paddle_mobile__framework__proto__version__unpack(ProtobufCAllocator *allocator,
                                                 size_t len,
                                                 const uint8_t *data);
void paddle_mobile__framework__proto__version__free_unpacked(
    PaddleMobile__Framework__Proto__Version *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
434
/* PaddleMobile__Framework__Proto__OpDesc__Attr methods */
H
hjchen2 已提交
435 436
void paddle_mobile__framework__proto__op_desc__attr__init(
    PaddleMobile__Framework__Proto__OpDesc__Attr *message);
L
liuruilong 已提交
437
/* PaddleMobile__Framework__Proto__OpDesc__Var methods */
H
hjchen2 已提交
438 439
void paddle_mobile__framework__proto__op_desc__var__init(
    PaddleMobile__Framework__Proto__OpDesc__Var *message);
L
liuruilong 已提交
440
/* PaddleMobile__Framework__Proto__OpDesc methods */
H
hjchen2 已提交
441 442 443 444 445 446 447 448 449
void paddle_mobile__framework__proto__op_desc__init(
    PaddleMobile__Framework__Proto__OpDesc *message);
size_t paddle_mobile__framework__proto__op_desc__get_packed_size(
    const PaddleMobile__Framework__Proto__OpDesc *message);
size_t paddle_mobile__framework__proto__op_desc__pack(
    const PaddleMobile__Framework__Proto__OpDesc *message, uint8_t *out);
size_t paddle_mobile__framework__proto__op_desc__pack_to_buffer(
    const PaddleMobile__Framework__Proto__OpDesc *message,
    ProtobufCBuffer *buffer);
L
liuruilong 已提交
450
PaddleMobile__Framework__Proto__OpDesc *
H
hjchen2 已提交
451 452 453 454 455 456
paddle_mobile__framework__proto__op_desc__unpack(ProtobufCAllocator *allocator,
                                                 size_t len,
                                                 const uint8_t *data);
void paddle_mobile__framework__proto__op_desc__free_unpacked(
    PaddleMobile__Framework__Proto__OpDesc *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
457
/* PaddleMobile__Framework__Proto__OpProto__Var methods */
H
hjchen2 已提交
458 459
void paddle_mobile__framework__proto__op_proto__var__init(
    PaddleMobile__Framework__Proto__OpProto__Var *message);
L
liuruilong 已提交
460
/* PaddleMobile__Framework__Proto__OpProto__Attr methods */
H
hjchen2 已提交
461 462
void paddle_mobile__framework__proto__op_proto__attr__init(
    PaddleMobile__Framework__Proto__OpProto__Attr *message);
L
liuruilong 已提交
463
/* PaddleMobile__Framework__Proto__OpProto methods */
H
hjchen2 已提交
464 465 466 467 468 469 470 471 472
void paddle_mobile__framework__proto__op_proto__init(
    PaddleMobile__Framework__Proto__OpProto *message);
size_t paddle_mobile__framework__proto__op_proto__get_packed_size(
    const PaddleMobile__Framework__Proto__OpProto *message);
size_t paddle_mobile__framework__proto__op_proto__pack(
    const PaddleMobile__Framework__Proto__OpProto *message, uint8_t *out);
size_t paddle_mobile__framework__proto__op_proto__pack_to_buffer(
    const PaddleMobile__Framework__Proto__OpProto *message,
    ProtobufCBuffer *buffer);
L
liuruilong 已提交
473
PaddleMobile__Framework__Proto__OpProto *
H
hjchen2 已提交
474 475 476 477 478 479
paddle_mobile__framework__proto__op_proto__unpack(ProtobufCAllocator *allocator,
                                                  size_t len,
                                                  const uint8_t *data);
void paddle_mobile__framework__proto__op_proto__free_unpacked(
    PaddleMobile__Framework__Proto__OpProto *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
480
/* PaddleMobile__Framework__Proto__VarType__TensorDesc methods */
H
hjchen2 已提交
481 482
void paddle_mobile__framework__proto__var_type__tensor_desc__init(
    PaddleMobile__Framework__Proto__VarType__TensorDesc *message);
L
liuruilong 已提交
483
/* PaddleMobile__Framework__Proto__VarType__LoDTensorDesc methods */
H
hjchen2 已提交
484 485
void paddle_mobile__framework__proto__var_type__lo_dtensor_desc__init(
    PaddleMobile__Framework__Proto__VarType__LoDTensorDesc *message);
L
liuruilong 已提交
486
/* PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc methods */
H
hjchen2 已提交
487 488
void paddle_mobile__framework__proto__var_type__lo_dtensor_array_desc__init(
    PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc *message);
L
liuruilong 已提交
489
/* PaddleMobile__Framework__Proto__VarType__ReaderDesc methods */
H
hjchen2 已提交
490 491
void paddle_mobile__framework__proto__var_type__reader_desc__init(
    PaddleMobile__Framework__Proto__VarType__ReaderDesc *message);
L
liuruilong 已提交
492
/* PaddleMobile__Framework__Proto__VarType__ChannelDesc methods */
H
hjchen2 已提交
493 494
void paddle_mobile__framework__proto__var_type__channel_desc__init(
    PaddleMobile__Framework__Proto__VarType__ChannelDesc *message);
L
liuruilong 已提交
495
/* PaddleMobile__Framework__Proto__VarType__Tuple methods */
H
hjchen2 已提交
496 497
void paddle_mobile__framework__proto__var_type__tuple__init(
    PaddleMobile__Framework__Proto__VarType__Tuple *message);
L
liuruilong 已提交
498
/* PaddleMobile__Framework__Proto__VarType methods */
H
hjchen2 已提交
499 500 501 502 503 504 505 506 507
void paddle_mobile__framework__proto__var_type__init(
    PaddleMobile__Framework__Proto__VarType *message);
size_t paddle_mobile__framework__proto__var_type__get_packed_size(
    const PaddleMobile__Framework__Proto__VarType *message);
size_t paddle_mobile__framework__proto__var_type__pack(
    const PaddleMobile__Framework__Proto__VarType *message, uint8_t *out);
size_t paddle_mobile__framework__proto__var_type__pack_to_buffer(
    const PaddleMobile__Framework__Proto__VarType *message,
    ProtobufCBuffer *buffer);
L
liuruilong 已提交
508
PaddleMobile__Framework__Proto__VarType *
H
hjchen2 已提交
509 510 511 512 513 514
paddle_mobile__framework__proto__var_type__unpack(ProtobufCAllocator *allocator,
                                                  size_t len,
                                                  const uint8_t *data);
void paddle_mobile__framework__proto__var_type__free_unpacked(
    PaddleMobile__Framework__Proto__VarType *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
515
/* PaddleMobile__Framework__Proto__VarDesc methods */
H
hjchen2 已提交
516 517 518 519 520 521 522 523 524
void paddle_mobile__framework__proto__var_desc__init(
    PaddleMobile__Framework__Proto__VarDesc *message);
size_t paddle_mobile__framework__proto__var_desc__get_packed_size(
    const PaddleMobile__Framework__Proto__VarDesc *message);
size_t paddle_mobile__framework__proto__var_desc__pack(
    const PaddleMobile__Framework__Proto__VarDesc *message, uint8_t *out);
size_t paddle_mobile__framework__proto__var_desc__pack_to_buffer(
    const PaddleMobile__Framework__Proto__VarDesc *message,
    ProtobufCBuffer *buffer);
L
liuruilong 已提交
525
PaddleMobile__Framework__Proto__VarDesc *
H
hjchen2 已提交
526 527 528 529 530 531
paddle_mobile__framework__proto__var_desc__unpack(ProtobufCAllocator *allocator,
                                                  size_t len,
                                                  const uint8_t *data);
void paddle_mobile__framework__proto__var_desc__free_unpacked(
    PaddleMobile__Framework__Proto__VarDesc *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
532
/* PaddleMobile__Framework__Proto__BlockDesc methods */
H
hjchen2 已提交
533 534 535 536 537 538 539 540 541
void paddle_mobile__framework__proto__block_desc__init(
    PaddleMobile__Framework__Proto__BlockDesc *message);
size_t paddle_mobile__framework__proto__block_desc__get_packed_size(
    const PaddleMobile__Framework__Proto__BlockDesc *message);
size_t paddle_mobile__framework__proto__block_desc__pack(
    const PaddleMobile__Framework__Proto__BlockDesc *message, uint8_t *out);
size_t paddle_mobile__framework__proto__block_desc__pack_to_buffer(
    const PaddleMobile__Framework__Proto__BlockDesc *message,
    ProtobufCBuffer *buffer);
L
liuruilong 已提交
542
PaddleMobile__Framework__Proto__BlockDesc *
H
hjchen2 已提交
543 544 545 546 547
paddle_mobile__framework__proto__block_desc__unpack(
    ProtobufCAllocator *allocator, size_t len, const uint8_t *data);
void paddle_mobile__framework__proto__block_desc__free_unpacked(
    PaddleMobile__Framework__Proto__BlockDesc *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
548
/* PaddleMobile__Framework__Proto__ProgramDesc methods */
H
hjchen2 已提交
549 550 551 552 553 554 555 556 557
void paddle_mobile__framework__proto__program_desc__init(
    PaddleMobile__Framework__Proto__ProgramDesc *message);
size_t paddle_mobile__framework__proto__program_desc__get_packed_size(
    const PaddleMobile__Framework__Proto__ProgramDesc *message);
size_t paddle_mobile__framework__proto__program_desc__pack(
    const PaddleMobile__Framework__Proto__ProgramDesc *message, uint8_t *out);
size_t paddle_mobile__framework__proto__program_desc__pack_to_buffer(
    const PaddleMobile__Framework__Proto__ProgramDesc *message,
    ProtobufCBuffer *buffer);
L
liuruilong 已提交
558
PaddleMobile__Framework__Proto__ProgramDesc *
H
hjchen2 已提交
559 560 561 562 563
paddle_mobile__framework__proto__program_desc__unpack(
    ProtobufCAllocator *allocator, size_t len, const uint8_t *data);
void paddle_mobile__framework__proto__program_desc__free_unpacked(
    PaddleMobile__Framework__Proto__ProgramDesc *message,
    ProtobufCAllocator *allocator);
L
liuruilong 已提交
564 565
/* --- per-message closures --- */

H
hjchen2 已提交
566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612
typedef void (*PaddleMobile__Framework__Proto__Version_Closure)(
    const PaddleMobile__Framework__Proto__Version *message, void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__OpDesc__Attr_Closure)(
    const PaddleMobile__Framework__Proto__OpDesc__Attr *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__OpDesc__Var_Closure)(
    const PaddleMobile__Framework__Proto__OpDesc__Var *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__OpDesc_Closure)(
    const PaddleMobile__Framework__Proto__OpDesc *message, void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__OpProto__Var_Closure)(
    const PaddleMobile__Framework__Proto__OpProto__Var *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__OpProto__Attr_Closure)(
    const PaddleMobile__Framework__Proto__OpProto__Attr *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__OpProto_Closure)(
    const PaddleMobile__Framework__Proto__OpProto *message, void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarType__TensorDesc_Closure)(
    const PaddleMobile__Framework__Proto__VarType__TensorDesc *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarType__LoDTensorDesc_Closure)(
    const PaddleMobile__Framework__Proto__VarType__LoDTensorDesc *message,
    void *closure_data);
typedef void (
    *PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc_Closure)(
    const PaddleMobile__Framework__Proto__VarType__LoDTensorArrayDesc *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarType__ReaderDesc_Closure)(
    const PaddleMobile__Framework__Proto__VarType__ReaderDesc *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarType__ChannelDesc_Closure)(
    const PaddleMobile__Framework__Proto__VarType__ChannelDesc *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarType__Tuple_Closure)(
    const PaddleMobile__Framework__Proto__VarType__Tuple *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarType_Closure)(
    const PaddleMobile__Framework__Proto__VarType *message, void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__VarDesc_Closure)(
    const PaddleMobile__Framework__Proto__VarDesc *message, void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__BlockDesc_Closure)(
    const PaddleMobile__Framework__Proto__BlockDesc *message,
    void *closure_data);
typedef void (*PaddleMobile__Framework__Proto__ProgramDesc_Closure)(
    const PaddleMobile__Framework__Proto__ProgramDesc *message,
    void *closure_data);
L
liuruilong 已提交
613 614 615 616 617

/* --- services --- */

/* --- descriptors --- */

H
hjchen2 已提交
618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655
extern const ProtobufCEnumDescriptor
    paddle_mobile__framework__proto__attr_type__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__version__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__op_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__op_desc__attr__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__op_desc__var__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__op_proto__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__op_proto__var__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__op_proto__attr__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__tensor_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__lo_dtensor_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__lo_dtensor_array_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__reader_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__channel_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_type__tuple__descriptor;
extern const ProtobufCEnumDescriptor
    paddle_mobile__framework__proto__var_type__type__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__var_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__block_desc__descriptor;
extern const ProtobufCMessageDescriptor
    paddle_mobile__framework__proto__program_desc__descriptor;
L
liuruilong 已提交
656 657 658

PROTOBUF_C__END_DECLS

H
hjchen2 已提交
659
#endif /* PROTOBUF_C_framework_2eproto__INCLUDED */