/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: orderer/ab.proto */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C__NO_DEPRECATED
#define PROTOBUF_C__NO_DEPRECATED
#endif

#include "orderer/ab.pb-c.h"
void   orderer__broadcast_response__init
                     (Orderer__BroadcastResponse         *message)
{
  static Orderer__BroadcastResponse init_value = ORDERER__BROADCAST_RESPONSE__INIT;
  *message = init_value;
}
size_t orderer__broadcast_response__get_packed_size
                     (const Orderer__BroadcastResponse *message)
{
  assert(message->base.descriptor == &orderer__broadcast_response__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__broadcast_response__pack
                     (const Orderer__BroadcastResponse *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__broadcast_response__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__broadcast_response__pack_to_buffer
                     (const Orderer__BroadcastResponse *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__broadcast_response__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__BroadcastResponse *
       orderer__broadcast_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__BroadcastResponse *)
     protobuf_c_message_unpack (&orderer__broadcast_response__descriptor,
                                allocator, len, data);
}
void   orderer__broadcast_response__free_unpacked
                     (Orderer__BroadcastResponse *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__broadcast_response__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   orderer__seek_newest__init
                     (Orderer__SeekNewest         *message)
{
  static Orderer__SeekNewest init_value = ORDERER__SEEK_NEWEST__INIT;
  *message = init_value;
}
size_t orderer__seek_newest__get_packed_size
                     (const Orderer__SeekNewest *message)
{
  assert(message->base.descriptor == &orderer__seek_newest__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__seek_newest__pack
                     (const Orderer__SeekNewest *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__seek_newest__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__seek_newest__pack_to_buffer
                     (const Orderer__SeekNewest *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__seek_newest__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__SeekNewest *
       orderer__seek_newest__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__SeekNewest *)
     protobuf_c_message_unpack (&orderer__seek_newest__descriptor,
                                allocator, len, data);
}
void   orderer__seek_newest__free_unpacked
                     (Orderer__SeekNewest *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__seek_newest__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   orderer__seek_oldest__init
                     (Orderer__SeekOldest         *message)
{
  static Orderer__SeekOldest init_value = ORDERER__SEEK_OLDEST__INIT;
  *message = init_value;
}
size_t orderer__seek_oldest__get_packed_size
                     (const Orderer__SeekOldest *message)
{
  assert(message->base.descriptor == &orderer__seek_oldest__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__seek_oldest__pack
                     (const Orderer__SeekOldest *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__seek_oldest__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__seek_oldest__pack_to_buffer
                     (const Orderer__SeekOldest *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__seek_oldest__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__SeekOldest *
       orderer__seek_oldest__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__SeekOldest *)
     protobuf_c_message_unpack (&orderer__seek_oldest__descriptor,
                                allocator, len, data);
}
void   orderer__seek_oldest__free_unpacked
                     (Orderer__SeekOldest *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__seek_oldest__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   orderer__seek_specified__init
                     (Orderer__SeekSpecified         *message)
{
  static Orderer__SeekSpecified init_value = ORDERER__SEEK_SPECIFIED__INIT;
  *message = init_value;
}
size_t orderer__seek_specified__get_packed_size
                     (const Orderer__SeekSpecified *message)
{
  assert(message->base.descriptor == &orderer__seek_specified__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__seek_specified__pack
                     (const Orderer__SeekSpecified *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__seek_specified__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__seek_specified__pack_to_buffer
                     (const Orderer__SeekSpecified *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__seek_specified__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__SeekSpecified *
       orderer__seek_specified__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__SeekSpecified *)
     protobuf_c_message_unpack (&orderer__seek_specified__descriptor,
                                allocator, len, data);
}
void   orderer__seek_specified__free_unpacked
                     (Orderer__SeekSpecified *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__seek_specified__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   orderer__seek_position__init
                     (Orderer__SeekPosition         *message)
{
  static Orderer__SeekPosition init_value = ORDERER__SEEK_POSITION__INIT;
  *message = init_value;
}
size_t orderer__seek_position__get_packed_size
                     (const Orderer__SeekPosition *message)
{
  assert(message->base.descriptor == &orderer__seek_position__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__seek_position__pack
                     (const Orderer__SeekPosition *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__seek_position__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__seek_position__pack_to_buffer
                     (const Orderer__SeekPosition *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__seek_position__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__SeekPosition *
       orderer__seek_position__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__SeekPosition *)
     protobuf_c_message_unpack (&orderer__seek_position__descriptor,
                                allocator, len, data);
}
void   orderer__seek_position__free_unpacked
                     (Orderer__SeekPosition *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__seek_position__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   orderer__seek_info__init
                     (Orderer__SeekInfo         *message)
{
  static Orderer__SeekInfo init_value = ORDERER__SEEK_INFO__INIT;
  *message = init_value;
}
size_t orderer__seek_info__get_packed_size
                     (const Orderer__SeekInfo *message)
{
  assert(message->base.descriptor == &orderer__seek_info__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__seek_info__pack
                     (const Orderer__SeekInfo *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__seek_info__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__seek_info__pack_to_buffer
                     (const Orderer__SeekInfo *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__seek_info__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__SeekInfo *
       orderer__seek_info__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__SeekInfo *)
     protobuf_c_message_unpack (&orderer__seek_info__descriptor,
                                allocator, len, data);
}
void   orderer__seek_info__free_unpacked
                     (Orderer__SeekInfo *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__seek_info__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   orderer__deliver_response__init
                     (Orderer__DeliverResponse         *message)
{
  static Orderer__DeliverResponse init_value = ORDERER__DELIVER_RESPONSE__INIT;
  *message = init_value;
}
size_t orderer__deliver_response__get_packed_size
                     (const Orderer__DeliverResponse *message)
{
  assert(message->base.descriptor == &orderer__deliver_response__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t orderer__deliver_response__pack
                     (const Orderer__DeliverResponse *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &orderer__deliver_response__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t orderer__deliver_response__pack_to_buffer
                     (const Orderer__DeliverResponse *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &orderer__deliver_response__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Orderer__DeliverResponse *
       orderer__deliver_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Orderer__DeliverResponse *)
     protobuf_c_message_unpack (&orderer__deliver_response__descriptor,
                                allocator, len, data);
}
void   orderer__deliver_response__free_unpacked
                     (Orderer__DeliverResponse *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &orderer__deliver_response__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCFieldDescriptor orderer__broadcast_response__field_descriptors[2] =
{
  {
    "status",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Orderer__BroadcastResponse, has_status),
    offsetof(Orderer__BroadcastResponse, status),
    &common__status__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "info",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Orderer__BroadcastResponse, info),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned orderer__broadcast_response__field_indices_by_name[] = {
  1,   /* field[1] = info */
  0,   /* field[0] = status */
};
static const ProtobufCIntRange orderer__broadcast_response__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor orderer__broadcast_response__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.BroadcastResponse",
  "BroadcastResponse",
  "Orderer__BroadcastResponse",
  "orderer",
  sizeof(Orderer__BroadcastResponse),
  2,
  orderer__broadcast_response__field_descriptors,
  orderer__broadcast_response__field_indices_by_name,
  1,  orderer__broadcast_response__number_ranges,
  (ProtobufCMessageInit) orderer__broadcast_response__init,
  NULL,NULL,NULL    /* reserved[123] */
};
#define orderer__seek_newest__field_descriptors NULL
#define orderer__seek_newest__field_indices_by_name NULL
#define orderer__seek_newest__number_ranges NULL
const ProtobufCMessageDescriptor orderer__seek_newest__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.SeekNewest",
  "SeekNewest",
  "Orderer__SeekNewest",
  "orderer",
  sizeof(Orderer__SeekNewest),
  0,
  orderer__seek_newest__field_descriptors,
  orderer__seek_newest__field_indices_by_name,
  0,  orderer__seek_newest__number_ranges,
  (ProtobufCMessageInit) orderer__seek_newest__init,
  NULL,NULL,NULL    /* reserved[123] */
};
#define orderer__seek_oldest__field_descriptors NULL
#define orderer__seek_oldest__field_indices_by_name NULL
#define orderer__seek_oldest__number_ranges NULL
const ProtobufCMessageDescriptor orderer__seek_oldest__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.SeekOldest",
  "SeekOldest",
  "Orderer__SeekOldest",
  "orderer",
  sizeof(Orderer__SeekOldest),
  0,
  orderer__seek_oldest__field_descriptors,
  orderer__seek_oldest__field_indices_by_name,
  0,  orderer__seek_oldest__number_ranges,
  (ProtobufCMessageInit) orderer__seek_oldest__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor orderer__seek_specified__field_descriptors[1] =
{
  {
    "number",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(Orderer__SeekSpecified, has_number),
    offsetof(Orderer__SeekSpecified, number),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned orderer__seek_specified__field_indices_by_name[] = {
  0,   /* field[0] = number */
};
static const ProtobufCIntRange orderer__seek_specified__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor orderer__seek_specified__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.SeekSpecified",
  "SeekSpecified",
  "Orderer__SeekSpecified",
  "orderer",
  sizeof(Orderer__SeekSpecified),
  1,
  orderer__seek_specified__field_descriptors,
  orderer__seek_specified__field_indices_by_name,
  1,  orderer__seek_specified__number_ranges,
  (ProtobufCMessageInit) orderer__seek_specified__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor orderer__seek_position__field_descriptors[3] =
{
  {
    "newest",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Orderer__SeekPosition, type_case),
    offsetof(Orderer__SeekPosition, newest),
    &orderer__seek_newest__descriptor,
    NULL,
    0 | PROTOBUF_C_FIELD_FLAG_ONEOF,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "oldest",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Orderer__SeekPosition, type_case),
    offsetof(Orderer__SeekPosition, oldest),
    &orderer__seek_oldest__descriptor,
    NULL,
    0 | PROTOBUF_C_FIELD_FLAG_ONEOF,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "specified",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Orderer__SeekPosition, type_case),
    offsetof(Orderer__SeekPosition, specified),
    &orderer__seek_specified__descriptor,
    NULL,
    0 | PROTOBUF_C_FIELD_FLAG_ONEOF,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned orderer__seek_position__field_indices_by_name[] = {
  0,   /* field[0] = newest */
  1,   /* field[1] = oldest */
  2,   /* field[2] = specified */
};
static const ProtobufCIntRange orderer__seek_position__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor orderer__seek_position__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.SeekPosition",
  "SeekPosition",
  "Orderer__SeekPosition",
  "orderer",
  sizeof(Orderer__SeekPosition),
  3,
  orderer__seek_position__field_descriptors,
  orderer__seek_position__field_indices_by_name,
  1,  orderer__seek_position__number_ranges,
  (ProtobufCMessageInit) orderer__seek_position__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue orderer__seek_info__seek_behavior__enum_values_by_number[2] =
{
  { "BLOCK_UNTIL_READY", "ORDERER__SEEK_INFO__SEEK_BEHAVIOR__BLOCK_UNTIL_READY", 0 },
  { "FAIL_IF_NOT_READY", "ORDERER__SEEK_INFO__SEEK_BEHAVIOR__FAIL_IF_NOT_READY", 1 },
};
static const ProtobufCIntRange orderer__seek_info__seek_behavior__value_ranges[] = {
{0, 0},{0, 2}
};
static const ProtobufCEnumValueIndex orderer__seek_info__seek_behavior__enum_values_by_name[2] =
{
  { "BLOCK_UNTIL_READY", 0 },
  { "FAIL_IF_NOT_READY", 1 },
};
const ProtobufCEnumDescriptor orderer__seek_info__seek_behavior__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "orderer.SeekInfo.SeekBehavior",
  "SeekBehavior",
  "Orderer__SeekInfo__SeekBehavior",
  "orderer",
  2,
  orderer__seek_info__seek_behavior__enum_values_by_number,
  2,
  orderer__seek_info__seek_behavior__enum_values_by_name,
  1,
  orderer__seek_info__seek_behavior__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor orderer__seek_info__field_descriptors[3] =
{
  {
    "start",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Orderer__SeekInfo, start),
    &orderer__seek_position__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "stop",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Orderer__SeekInfo, stop),
    &orderer__seek_position__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "behavior",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Orderer__SeekInfo, has_behavior),
    offsetof(Orderer__SeekInfo, behavior),
    &orderer__seek_info__seek_behavior__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned orderer__seek_info__field_indices_by_name[] = {
  2,   /* field[2] = behavior */
  0,   /* field[0] = start */
  1,   /* field[1] = stop */
};
static const ProtobufCIntRange orderer__seek_info__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor orderer__seek_info__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.SeekInfo",
  "SeekInfo",
  "Orderer__SeekInfo",
  "orderer",
  sizeof(Orderer__SeekInfo),
  3,
  orderer__seek_info__field_descriptors,
  orderer__seek_info__field_indices_by_name,
  1,  orderer__seek_info__number_ranges,
  (ProtobufCMessageInit) orderer__seek_info__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor orderer__deliver_response__field_descriptors[2] =
{
  {
    "status",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Orderer__DeliverResponse, type_case),
    offsetof(Orderer__DeliverResponse, status),
    &common__status__descriptor,
    NULL,
    0 | PROTOBUF_C_FIELD_FLAG_ONEOF,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "block",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Orderer__DeliverResponse, type_case),
    offsetof(Orderer__DeliverResponse, block),
    &common__block__descriptor,
    NULL,
    0 | PROTOBUF_C_FIELD_FLAG_ONEOF,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned orderer__deliver_response__field_indices_by_name[] = {
  1,   /* field[1] = block */
  0,   /* field[0] = status */
};
static const ProtobufCIntRange orderer__deliver_response__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor orderer__deliver_response__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "orderer.DeliverResponse",
  "DeliverResponse",
  "Orderer__DeliverResponse",
  "orderer",
  sizeof(Orderer__DeliverResponse),
  2,
  orderer__deliver_response__field_descriptors,
  orderer__deliver_response__field_indices_by_name,
  1,  orderer__deliver_response__number_ranges,
  (ProtobufCMessageInit) orderer__deliver_response__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCMethodDescriptor orderer__atomic_broadcast__method_descriptors[2] =
{
  { "Broadcast", &common__envelope__descriptor, &orderer__broadcast_response__descriptor },
  { "Deliver", &common__envelope__descriptor, &orderer__deliver_response__descriptor },
};
const unsigned orderer__atomic_broadcast__method_indices_by_name[] = {
  0,        /* Broadcast */
  1         /* Deliver */
};
const ProtobufCServiceDescriptor orderer__atomic_broadcast__descriptor =
{
  PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
  "orderer.AtomicBroadcast",
  "AtomicBroadcast",
  "Orderer__AtomicBroadcast",
  "orderer",
  2,
  orderer__atomic_broadcast__method_descriptors,
  orderer__atomic_broadcast__method_indices_by_name
};
void orderer__atomic_broadcast__broadcast(ProtobufCService *service,
                                          const Common__Envelope *input,
                                          Orderer__BroadcastResponse_Closure closure,
                                          void *closure_data)
{
  assert(service->descriptor == &orderer__atomic_broadcast__descriptor);
  service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
}
void orderer__atomic_broadcast__deliver(ProtobufCService *service,
                                        const Common__Envelope *input,
                                        Orderer__DeliverResponse_Closure closure,
                                        void *closure_data)
{
  assert(service->descriptor == &orderer__atomic_broadcast__descriptor);
  service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
}
void orderer__atomic_broadcast__init (Orderer__AtomicBroadcast_Service *service,
                                      Orderer__AtomicBroadcast_ServiceDestroy destroy)
{
  protobuf_c_service_generated_init (&service->base,
                                     &orderer__atomic_broadcast__descriptor,
                                     (ProtobufCServiceDestroy) destroy);
}
