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

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

#include <prometheus_remote_write/remote.pb-c.h>

void   prometheus__write_request__init
                     (Prometheus__WriteRequest         *message)
{
  static const Prometheus__WriteRequest init_value = PROMETHEUS__WRITE_REQUEST__INIT;
  *message = init_value;
}
size_t prometheus__write_request__get_packed_size
                     (const Prometheus__WriteRequest *message)
{
  assert(message->base.descriptor == &prometheus__write_request__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t prometheus__write_request__pack
                     (const Prometheus__WriteRequest *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &prometheus__write_request__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t prometheus__write_request__pack_to_buffer
                     (const Prometheus__WriteRequest *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &prometheus__write_request__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Prometheus__WriteRequest *
       prometheus__write_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Prometheus__WriteRequest *)
     protobuf_c_message_unpack (&prometheus__write_request__descriptor,
                                allocator, len, data);
}
void   prometheus__write_request__free_unpacked
                     (Prometheus__WriteRequest *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &prometheus__write_request__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   prometheus__read_request__init
                     (Prometheus__ReadRequest         *message)
{
  static const Prometheus__ReadRequest init_value = PROMETHEUS__READ_REQUEST__INIT;
  *message = init_value;
}
size_t prometheus__read_request__get_packed_size
                     (const Prometheus__ReadRequest *message)
{
  assert(message->base.descriptor == &prometheus__read_request__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t prometheus__read_request__pack
                     (const Prometheus__ReadRequest *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &prometheus__read_request__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t prometheus__read_request__pack_to_buffer
                     (const Prometheus__ReadRequest *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &prometheus__read_request__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Prometheus__ReadRequest *
       prometheus__read_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Prometheus__ReadRequest *)
     protobuf_c_message_unpack (&prometheus__read_request__descriptor,
                                allocator, len, data);
}
void   prometheus__read_request__free_unpacked
                     (Prometheus__ReadRequest *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &prometheus__read_request__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   prometheus__read_response__init
                     (Prometheus__ReadResponse         *message)
{
  static const Prometheus__ReadResponse init_value = PROMETHEUS__READ_RESPONSE__INIT;
  *message = init_value;
}
size_t prometheus__read_response__get_packed_size
                     (const Prometheus__ReadResponse *message)
{
  assert(message->base.descriptor == &prometheus__read_response__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t prometheus__read_response__pack
                     (const Prometheus__ReadResponse *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &prometheus__read_response__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t prometheus__read_response__pack_to_buffer
                     (const Prometheus__ReadResponse *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &prometheus__read_response__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Prometheus__ReadResponse *
       prometheus__read_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Prometheus__ReadResponse *)
     protobuf_c_message_unpack (&prometheus__read_response__descriptor,
                                allocator, len, data);
}
void   prometheus__read_response__free_unpacked
                     (Prometheus__ReadResponse *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &prometheus__read_response__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   prometheus__query__init
                     (Prometheus__Query         *message)
{
  static const Prometheus__Query init_value = PROMETHEUS__QUERY__INIT;
  *message = init_value;
}
size_t prometheus__query__get_packed_size
                     (const Prometheus__Query *message)
{
  assert(message->base.descriptor == &prometheus__query__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t prometheus__query__pack
                     (const Prometheus__Query *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &prometheus__query__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t prometheus__query__pack_to_buffer
                     (const Prometheus__Query *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &prometheus__query__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Prometheus__Query *
       prometheus__query__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Prometheus__Query *)
     protobuf_c_message_unpack (&prometheus__query__descriptor,
                                allocator, len, data);
}
void   prometheus__query__free_unpacked
                     (Prometheus__Query *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &prometheus__query__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   prometheus__query_result__init
                     (Prometheus__QueryResult         *message)
{
  static const Prometheus__QueryResult init_value = PROMETHEUS__QUERY_RESULT__INIT;
  *message = init_value;
}
size_t prometheus__query_result__get_packed_size
                     (const Prometheus__QueryResult *message)
{
  assert(message->base.descriptor == &prometheus__query_result__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t prometheus__query_result__pack
                     (const Prometheus__QueryResult *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &prometheus__query_result__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t prometheus__query_result__pack_to_buffer
                     (const Prometheus__QueryResult *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &prometheus__query_result__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Prometheus__QueryResult *
       prometheus__query_result__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Prometheus__QueryResult *)
     protobuf_c_message_unpack (&prometheus__query_result__descriptor,
                                allocator, len, data);
}
void   prometheus__query_result__free_unpacked
                     (Prometheus__QueryResult *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &prometheus__query_result__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   prometheus__chunked_read_response__init
                     (Prometheus__ChunkedReadResponse         *message)
{
  static const Prometheus__ChunkedReadResponse init_value = PROMETHEUS__CHUNKED_READ_RESPONSE__INIT;
  *message = init_value;
}
size_t prometheus__chunked_read_response__get_packed_size
                     (const Prometheus__ChunkedReadResponse *message)
{
  assert(message->base.descriptor == &prometheus__chunked_read_response__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t prometheus__chunked_read_response__pack
                     (const Prometheus__ChunkedReadResponse *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &prometheus__chunked_read_response__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t prometheus__chunked_read_response__pack_to_buffer
                     (const Prometheus__ChunkedReadResponse *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &prometheus__chunked_read_response__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Prometheus__ChunkedReadResponse *
       prometheus__chunked_read_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Prometheus__ChunkedReadResponse *)
     protobuf_c_message_unpack (&prometheus__chunked_read_response__descriptor,
                                allocator, len, data);
}
void   prometheus__chunked_read_response__free_unpacked
                     (Prometheus__ChunkedReadResponse *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &prometheus__chunked_read_response__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCFieldDescriptor prometheus__write_request__field_descriptors[2] =
{
  {
    "timeseries",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__WriteRequest, n_timeseries),
    offsetof(Prometheus__WriteRequest, timeseries),
    &prometheus__time_series__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "metadata",
    3,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__WriteRequest, n_metadata),
    offsetof(Prometheus__WriteRequest, metadata),
    &prometheus__metric_metadata__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned prometheus__write_request__field_indices_by_name[] = {
  1,   /* field[1] = metadata */
  0,   /* field[0] = timeseries */
};
static const ProtobufCIntRange prometheus__write_request__number_ranges[2 + 1] =
{
  { 1, 0 },
  { 3, 1 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor prometheus__write_request__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "prometheus.WriteRequest",
  "WriteRequest",
  "Prometheus__WriteRequest",
  "prometheus",
  sizeof(Prometheus__WriteRequest),
  2,
  prometheus__write_request__field_descriptors,
  prometheus__write_request__field_indices_by_name,
  2,  prometheus__write_request__number_ranges,
  (ProtobufCMessageInit) prometheus__write_request__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue prometheus__read_request__response_type__enum_values_by_number[2] =
{
  { "SAMPLES", "PROMETHEUS__READ_REQUEST__RESPONSE_TYPE__SAMPLES", 0 },
  { "STREAMED_XOR_CHUNKS", "PROMETHEUS__READ_REQUEST__RESPONSE_TYPE__STREAMED_XOR_CHUNKS", 1 },
};
static const ProtobufCIntRange prometheus__read_request__response_type__value_ranges[] = {
{0, 0},{0, 2}
};
static const ProtobufCEnumValueIndex prometheus__read_request__response_type__enum_values_by_name[2] =
{
  { "SAMPLES", 0 },
  { "STREAMED_XOR_CHUNKS", 1 },
};
const ProtobufCEnumDescriptor prometheus__read_request__response_type__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "prometheus.ReadRequest.ResponseType",
  "ResponseType",
  "Prometheus__ReadRequest__ResponseType",
  "prometheus",
  2,
  prometheus__read_request__response_type__enum_values_by_number,
  2,
  prometheus__read_request__response_type__enum_values_by_name,
  1,
  prometheus__read_request__response_type__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor prometheus__read_request__field_descriptors[2] =
{
  {
    "queries",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__ReadRequest, n_queries),
    offsetof(Prometheus__ReadRequest, queries),
    &prometheus__query__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "accepted_response_types",
    2,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Prometheus__ReadRequest, n_accepted_response_types),
    offsetof(Prometheus__ReadRequest, accepted_response_types),
    &prometheus__read_request__response_type__descriptor,
    NULL,
    0 | PROTOBUF_C_FIELD_FLAG_PACKED,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned prometheus__read_request__field_indices_by_name[] = {
  1,   /* field[1] = accepted_response_types */
  0,   /* field[0] = queries */
};
static const ProtobufCIntRange prometheus__read_request__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor prometheus__read_request__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "prometheus.ReadRequest",
  "ReadRequest",
  "Prometheus__ReadRequest",
  "prometheus",
  sizeof(Prometheus__ReadRequest),
  2,
  prometheus__read_request__field_descriptors,
  prometheus__read_request__field_indices_by_name,
  1,  prometheus__read_request__number_ranges,
  (ProtobufCMessageInit) prometheus__read_request__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor prometheus__read_response__field_descriptors[1] =
{
  {
    "results",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__ReadResponse, n_results),
    offsetof(Prometheus__ReadResponse, results),
    &prometheus__query_result__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned prometheus__read_response__field_indices_by_name[] = {
  0,   /* field[0] = results */
};
static const ProtobufCIntRange prometheus__read_response__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor prometheus__read_response__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "prometheus.ReadResponse",
  "ReadResponse",
  "Prometheus__ReadResponse",
  "prometheus",
  sizeof(Prometheus__ReadResponse),
  1,
  prometheus__read_response__field_descriptors,
  prometheus__read_response__field_indices_by_name,
  1,  prometheus__read_response__number_ranges,
  (ProtobufCMessageInit) prometheus__read_response__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor prometheus__query__field_descriptors[4] =
{
  {
    "start_timestamp_ms",
    1,
    PROTOBUF_C_LABEL_NONE,
    PROTOBUF_C_TYPE_INT64,
    0,   /* quantifier_offset */
    offsetof(Prometheus__Query, start_timestamp_ms),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "end_timestamp_ms",
    2,
    PROTOBUF_C_LABEL_NONE,
    PROTOBUF_C_TYPE_INT64,
    0,   /* quantifier_offset */
    offsetof(Prometheus__Query, end_timestamp_ms),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "matchers",
    3,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__Query, n_matchers),
    offsetof(Prometheus__Query, matchers),
    &prometheus__label_matcher__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "hints",
    4,
    PROTOBUF_C_LABEL_NONE,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Prometheus__Query, hints),
    &prometheus__read_hints__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned prometheus__query__field_indices_by_name[] = {
  1,   /* field[1] = end_timestamp_ms */
  3,   /* field[3] = hints */
  2,   /* field[2] = matchers */
  0,   /* field[0] = start_timestamp_ms */
};
static const ProtobufCIntRange prometheus__query__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 4 }
};
const ProtobufCMessageDescriptor prometheus__query__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "prometheus.Query",
  "Query",
  "Prometheus__Query",
  "prometheus",
  sizeof(Prometheus__Query),
  4,
  prometheus__query__field_descriptors,
  prometheus__query__field_indices_by_name,
  1,  prometheus__query__number_ranges,
  (ProtobufCMessageInit) prometheus__query__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor prometheus__query_result__field_descriptors[1] =
{
  {
    "timeseries",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__QueryResult, n_timeseries),
    offsetof(Prometheus__QueryResult, timeseries),
    &prometheus__time_series__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned prometheus__query_result__field_indices_by_name[] = {
  0,   /* field[0] = timeseries */
};
static const ProtobufCIntRange prometheus__query_result__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor prometheus__query_result__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "prometheus.QueryResult",
  "QueryResult",
  "Prometheus__QueryResult",
  "prometheus",
  sizeof(Prometheus__QueryResult),
  1,
  prometheus__query_result__field_descriptors,
  prometheus__query_result__field_indices_by_name,
  1,  prometheus__query_result__number_ranges,
  (ProtobufCMessageInit) prometheus__query_result__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor prometheus__chunked_read_response__field_descriptors[2] =
{
  {
    "chunked_series",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Prometheus__ChunkedReadResponse, n_chunked_series),
    offsetof(Prometheus__ChunkedReadResponse, chunked_series),
    &prometheus__chunked_series__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_index",
    2,
    PROTOBUF_C_LABEL_NONE,
    PROTOBUF_C_TYPE_INT64,
    0,   /* quantifier_offset */
    offsetof(Prometheus__ChunkedReadResponse, query_index),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned prometheus__chunked_read_response__field_indices_by_name[] = {
  0,   /* field[0] = chunked_series */
  1,   /* field[1] = query_index */
};
static const ProtobufCIntRange prometheus__chunked_read_response__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor prometheus__chunked_read_response__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "prometheus.ChunkedReadResponse",
  "ChunkedReadResponse",
  "Prometheus__ChunkedReadResponse",
  "prometheus",
  sizeof(Prometheus__ChunkedReadResponse),
  2,
  prometheus__chunked_read_response__field_descriptors,
  prometheus__chunked_read_response__field_indices_by_name,
  1,  prometheus__chunked_read_response__number_ranges,
  (ProtobufCMessageInit) prometheus__chunked_read_response__init,
  NULL,NULL,NULL    /* reserved[123] */
};
