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

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

#include "peer/chaincode.pb-c.h"
void   protos__chaincode_id__init
                     (Protos__ChaincodeID         *message)
{
  static Protos__ChaincodeID init_value = PROTOS__CHAINCODE_ID__INIT;
  *message = init_value;
}
size_t protos__chaincode_id__get_packed_size
                     (const Protos__ChaincodeID *message)
{
  assert(message->base.descriptor == &protos__chaincode_id__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t protos__chaincode_id__pack
                     (const Protos__ChaincodeID *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &protos__chaincode_id__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t protos__chaincode_id__pack_to_buffer
                     (const Protos__ChaincodeID *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &protos__chaincode_id__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Protos__ChaincodeID *
       protos__chaincode_id__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Protos__ChaincodeID *)
     protobuf_c_message_unpack (&protos__chaincode_id__descriptor,
                                allocator, len, data);
}
void   protos__chaincode_id__free_unpacked
                     (Protos__ChaincodeID *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &protos__chaincode_id__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   protos__chaincode_input__decorations_entry__init
                     (Protos__ChaincodeInput__DecorationsEntry         *message)
{
  static Protos__ChaincodeInput__DecorationsEntry init_value = PROTOS__CHAINCODE_INPUT__DECORATIONS_ENTRY__INIT;
  *message = init_value;
}
void   protos__chaincode_input__init
                     (Protos__ChaincodeInput         *message)
{
  static Protos__ChaincodeInput init_value = PROTOS__CHAINCODE_INPUT__INIT;
  *message = init_value;
}
size_t protos__chaincode_input__get_packed_size
                     (const Protos__ChaincodeInput *message)
{
  assert(message->base.descriptor == &protos__chaincode_input__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t protos__chaincode_input__pack
                     (const Protos__ChaincodeInput *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &protos__chaincode_input__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t protos__chaincode_input__pack_to_buffer
                     (const Protos__ChaincodeInput *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &protos__chaincode_input__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Protos__ChaincodeInput *
       protos__chaincode_input__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Protos__ChaincodeInput *)
     protobuf_c_message_unpack (&protos__chaincode_input__descriptor,
                                allocator, len, data);
}
void   protos__chaincode_input__free_unpacked
                     (Protos__ChaincodeInput *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &protos__chaincode_input__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   protos__chaincode_spec__init
                     (Protos__ChaincodeSpec         *message)
{
  static Protos__ChaincodeSpec init_value = PROTOS__CHAINCODE_SPEC__INIT;
  *message = init_value;
}
size_t protos__chaincode_spec__get_packed_size
                     (const Protos__ChaincodeSpec *message)
{
  assert(message->base.descriptor == &protos__chaincode_spec__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t protos__chaincode_spec__pack
                     (const Protos__ChaincodeSpec *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &protos__chaincode_spec__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t protos__chaincode_spec__pack_to_buffer
                     (const Protos__ChaincodeSpec *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &protos__chaincode_spec__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Protos__ChaincodeSpec *
       protos__chaincode_spec__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Protos__ChaincodeSpec *)
     protobuf_c_message_unpack (&protos__chaincode_spec__descriptor,
                                allocator, len, data);
}
void   protos__chaincode_spec__free_unpacked
                     (Protos__ChaincodeSpec *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &protos__chaincode_spec__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   protos__chaincode_deployment_spec__init
                     (Protos__ChaincodeDeploymentSpec         *message)
{
  static Protos__ChaincodeDeploymentSpec init_value = PROTOS__CHAINCODE_DEPLOYMENT_SPEC__INIT;
  *message = init_value;
}
size_t protos__chaincode_deployment_spec__get_packed_size
                     (const Protos__ChaincodeDeploymentSpec *message)
{
  assert(message->base.descriptor == &protos__chaincode_deployment_spec__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t protos__chaincode_deployment_spec__pack
                     (const Protos__ChaincodeDeploymentSpec *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &protos__chaincode_deployment_spec__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t protos__chaincode_deployment_spec__pack_to_buffer
                     (const Protos__ChaincodeDeploymentSpec *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &protos__chaincode_deployment_spec__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Protos__ChaincodeDeploymentSpec *
       protos__chaincode_deployment_spec__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Protos__ChaincodeDeploymentSpec *)
     protobuf_c_message_unpack (&protos__chaincode_deployment_spec__descriptor,
                                allocator, len, data);
}
void   protos__chaincode_deployment_spec__free_unpacked
                     (Protos__ChaincodeDeploymentSpec *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &protos__chaincode_deployment_spec__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   protos__chaincode_invocation_spec__init
                     (Protos__ChaincodeInvocationSpec         *message)
{
  static Protos__ChaincodeInvocationSpec init_value = PROTOS__CHAINCODE_INVOCATION_SPEC__INIT;
  *message = init_value;
}
size_t protos__chaincode_invocation_spec__get_packed_size
                     (const Protos__ChaincodeInvocationSpec *message)
{
  assert(message->base.descriptor == &protos__chaincode_invocation_spec__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t protos__chaincode_invocation_spec__pack
                     (const Protos__ChaincodeInvocationSpec *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &protos__chaincode_invocation_spec__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t protos__chaincode_invocation_spec__pack_to_buffer
                     (const Protos__ChaincodeInvocationSpec *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &protos__chaincode_invocation_spec__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Protos__ChaincodeInvocationSpec *
       protos__chaincode_invocation_spec__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Protos__ChaincodeInvocationSpec *)
     protobuf_c_message_unpack (&protos__chaincode_invocation_spec__descriptor,
                                allocator, len, data);
}
void   protos__chaincode_invocation_spec__free_unpacked
                     (Protos__ChaincodeInvocationSpec *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &protos__chaincode_invocation_spec__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   protos__lifecycle_event__init
                     (Protos__LifecycleEvent         *message)
{
  static Protos__LifecycleEvent init_value = PROTOS__LIFECYCLE_EVENT__INIT;
  *message = init_value;
}
size_t protos__lifecycle_event__get_packed_size
                     (const Protos__LifecycleEvent *message)
{
  assert(message->base.descriptor == &protos__lifecycle_event__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t protos__lifecycle_event__pack
                     (const Protos__LifecycleEvent *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &protos__lifecycle_event__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t protos__lifecycle_event__pack_to_buffer
                     (const Protos__LifecycleEvent *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &protos__lifecycle_event__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Protos__LifecycleEvent *
       protos__lifecycle_event__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Protos__LifecycleEvent *)
     protobuf_c_message_unpack (&protos__lifecycle_event__descriptor,
                                allocator, len, data);
}
void   protos__lifecycle_event__free_unpacked
                     (Protos__LifecycleEvent *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &protos__lifecycle_event__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCFieldDescriptor protos__chaincode_id__field_descriptors[3] =
{
  {
    "path",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeID, path),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "name",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeID, name),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "version",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeID, version),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__chaincode_id__field_indices_by_name[] = {
  1,   /* field[1] = name */
  0,   /* field[0] = path */
  2,   /* field[2] = version */
};
static const ProtobufCIntRange protos__chaincode_id__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor protos__chaincode_id__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.ChaincodeID",
  "ChaincodeID",
  "Protos__ChaincodeID",
  "protos",
  sizeof(Protos__ChaincodeID),
  3,
  protos__chaincode_id__field_descriptors,
  protos__chaincode_id__field_indices_by_name,
  1,  protos__chaincode_id__number_ranges,
  (ProtobufCMessageInit) protos__chaincode_id__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor protos__chaincode_input__decorations_entry__field_descriptors[2] =
{
  {
    "key",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeInput__DecorationsEntry, key),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "value",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Protos__ChaincodeInput__DecorationsEntry, has_value),
    offsetof(Protos__ChaincodeInput__DecorationsEntry, value),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__chaincode_input__decorations_entry__field_indices_by_name[] = {
  0,   /* field[0] = key */
  1,   /* field[1] = value */
};
static const ProtobufCIntRange protos__chaincode_input__decorations_entry__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor protos__chaincode_input__decorations_entry__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.ChaincodeInput.DecorationsEntry",
  "DecorationsEntry",
  "Protos__ChaincodeInput__DecorationsEntry",
  "protos",
  sizeof(Protos__ChaincodeInput__DecorationsEntry),
  2,
  protos__chaincode_input__decorations_entry__field_descriptors,
  protos__chaincode_input__decorations_entry__field_indices_by_name,
  1,  protos__chaincode_input__decorations_entry__number_ranges,
  (ProtobufCMessageInit) protos__chaincode_input__decorations_entry__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor protos__chaincode_input__field_descriptors[2] =
{
  {
    "args",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Protos__ChaincodeInput, n_args),
    offsetof(Protos__ChaincodeInput, args),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "decorations",
    2,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Protos__ChaincodeInput, n_decorations),
    offsetof(Protos__ChaincodeInput, decorations),
    &protos__chaincode_input__decorations_entry__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__chaincode_input__field_indices_by_name[] = {
  0,   /* field[0] = args */
  1,   /* field[1] = decorations */
};
static const ProtobufCIntRange protos__chaincode_input__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor protos__chaincode_input__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.ChaincodeInput",
  "ChaincodeInput",
  "Protos__ChaincodeInput",
  "protos",
  sizeof(Protos__ChaincodeInput),
  2,
  protos__chaincode_input__field_descriptors,
  protos__chaincode_input__field_indices_by_name,
  1,  protos__chaincode_input__number_ranges,
  (ProtobufCMessageInit) protos__chaincode_input__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue protos__chaincode_spec__type__enum_values_by_number[5] =
{
  { "UNDEFINED", "PROTOS__CHAINCODE_SPEC__TYPE__UNDEFINED", 0 },
  { "GOLANG", "PROTOS__CHAINCODE_SPEC__TYPE__GOLANG", 1 },
  { "NODE", "PROTOS__CHAINCODE_SPEC__TYPE__NODE", 2 },
  { "CAR", "PROTOS__CHAINCODE_SPEC__TYPE__CAR", 3 },
  { "JAVA", "PROTOS__CHAINCODE_SPEC__TYPE__JAVA", 4 },
};
static const ProtobufCIntRange protos__chaincode_spec__type__value_ranges[] = {
{0, 0},{0, 5}
};
static const ProtobufCEnumValueIndex protos__chaincode_spec__type__enum_values_by_name[5] =
{
  { "CAR", 3 },
  { "GOLANG", 1 },
  { "JAVA", 4 },
  { "NODE", 2 },
  { "UNDEFINED", 0 },
};
const ProtobufCEnumDescriptor protos__chaincode_spec__type__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "protos.ChaincodeSpec.Type",
  "Type",
  "Protos__ChaincodeSpec__Type",
  "protos",
  5,
  protos__chaincode_spec__type__enum_values_by_number,
  5,
  protos__chaincode_spec__type__enum_values_by_name,
  1,
  protos__chaincode_spec__type__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor protos__chaincode_spec__field_descriptors[4] =
{
  {
    "type",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Protos__ChaincodeSpec, has_type),
    offsetof(Protos__ChaincodeSpec, type),
    &protos__chaincode_spec__type__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "chaincode_id",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeSpec, chaincode_id),
    &protos__chaincode_id__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "input",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeSpec, input),
    &protos__chaincode_input__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "timeout",
    4,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_INT32,
    offsetof(Protos__ChaincodeSpec, has_timeout),
    offsetof(Protos__ChaincodeSpec, timeout),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__chaincode_spec__field_indices_by_name[] = {
  1,   /* field[1] = chaincode_id */
  2,   /* field[2] = input */
  3,   /* field[3] = timeout */
  0,   /* field[0] = type */
};
static const ProtobufCIntRange protos__chaincode_spec__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 4 }
};
const ProtobufCMessageDescriptor protos__chaincode_spec__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.ChaincodeSpec",
  "ChaincodeSpec",
  "Protos__ChaincodeSpec",
  "protos",
  sizeof(Protos__ChaincodeSpec),
  4,
  protos__chaincode_spec__field_descriptors,
  protos__chaincode_spec__field_indices_by_name,
  1,  protos__chaincode_spec__number_ranges,
  (ProtobufCMessageInit) protos__chaincode_spec__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue protos__chaincode_deployment_spec__execution_environment__enum_values_by_number[2] =
{
  { "DOCKER", "PROTOS__CHAINCODE_DEPLOYMENT_SPEC__EXECUTION_ENVIRONMENT__DOCKER", 0 },
  { "SYSTEM", "PROTOS__CHAINCODE_DEPLOYMENT_SPEC__EXECUTION_ENVIRONMENT__SYSTEM", 1 },
};
static const ProtobufCIntRange protos__chaincode_deployment_spec__execution_environment__value_ranges[] = {
{0, 0},{0, 2}
};
static const ProtobufCEnumValueIndex protos__chaincode_deployment_spec__execution_environment__enum_values_by_name[2] =
{
  { "DOCKER", 0 },
  { "SYSTEM", 1 },
};
const ProtobufCEnumDescriptor protos__chaincode_deployment_spec__execution_environment__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "protos.ChaincodeDeploymentSpec.ExecutionEnvironment",
  "ExecutionEnvironment",
  "Protos__ChaincodeDeploymentSpec__ExecutionEnvironment",
  "protos",
  2,
  protos__chaincode_deployment_spec__execution_environment__enum_values_by_number,
  2,
  protos__chaincode_deployment_spec__execution_environment__enum_values_by_name,
  1,
  protos__chaincode_deployment_spec__execution_environment__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor protos__chaincode_deployment_spec__field_descriptors[3] =
{
  {
    "chaincode_spec",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeDeploymentSpec, chaincode_spec),
    &protos__chaincode_spec__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "code_package",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Protos__ChaincodeDeploymentSpec, has_code_package),
    offsetof(Protos__ChaincodeDeploymentSpec, code_package),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "exec_env",
    4,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Protos__ChaincodeDeploymentSpec, has_exec_env),
    offsetof(Protos__ChaincodeDeploymentSpec, exec_env),
    &protos__chaincode_deployment_spec__execution_environment__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__chaincode_deployment_spec__field_indices_by_name[] = {
  0,   /* field[0] = chaincode_spec */
  1,   /* field[1] = code_package */
  2,   /* field[2] = exec_env */
};
static const ProtobufCIntRange protos__chaincode_deployment_spec__number_ranges[2 + 1] =
{
  { 1, 0 },
  { 3, 1 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor protos__chaincode_deployment_spec__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.ChaincodeDeploymentSpec",
  "ChaincodeDeploymentSpec",
  "Protos__ChaincodeDeploymentSpec",
  "protos",
  sizeof(Protos__ChaincodeDeploymentSpec),
  3,
  protos__chaincode_deployment_spec__field_descriptors,
  protos__chaincode_deployment_spec__field_indices_by_name,
  2,  protos__chaincode_deployment_spec__number_ranges,
  (ProtobufCMessageInit) protos__chaincode_deployment_spec__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor protos__chaincode_invocation_spec__field_descriptors[1] =
{
  {
    "chaincode_spec",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Protos__ChaincodeInvocationSpec, chaincode_spec),
    &protos__chaincode_spec__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__chaincode_invocation_spec__field_indices_by_name[] = {
  0,   /* field[0] = chaincode_spec */
};
static const ProtobufCIntRange protos__chaincode_invocation_spec__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor protos__chaincode_invocation_spec__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.ChaincodeInvocationSpec",
  "ChaincodeInvocationSpec",
  "Protos__ChaincodeInvocationSpec",
  "protos",
  sizeof(Protos__ChaincodeInvocationSpec),
  1,
  protos__chaincode_invocation_spec__field_descriptors,
  protos__chaincode_invocation_spec__field_indices_by_name,
  1,  protos__chaincode_invocation_spec__number_ranges,
  (ProtobufCMessageInit) protos__chaincode_invocation_spec__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor protos__lifecycle_event__field_descriptors[1] =
{
  {
    "chaincode_name",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Protos__LifecycleEvent, chaincode_name),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned protos__lifecycle_event__field_indices_by_name[] = {
  0,   /* field[0] = chaincode_name */
};
static const ProtobufCIntRange protos__lifecycle_event__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor protos__lifecycle_event__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "protos.LifecycleEvent",
  "LifecycleEvent",
  "Protos__LifecycleEvent",
  "protos",
  sizeof(Protos__LifecycleEvent),
  1,
  protos__lifecycle_event__field_descriptors,
  protos__lifecycle_event__field_indices_by_name,
  1,  protos__lifecycle_event__number_ranges,
  (ProtobufCMessageInit) protos__lifecycle_event__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue protos__confidentiality_level__enum_values_by_number[2] =
{
  { "PUBLIC", "PROTOS__CONFIDENTIALITY_LEVEL__PUBLIC", 0 },
  { "CONFIDENTIAL", "PROTOS__CONFIDENTIALITY_LEVEL__CONFIDENTIAL", 1 },
};
static const ProtobufCIntRange protos__confidentiality_level__value_ranges[] = {
{0, 0},{0, 2}
};
static const ProtobufCEnumValueIndex protos__confidentiality_level__enum_values_by_name[2] =
{
  { "CONFIDENTIAL", 1 },
  { "PUBLIC", 0 },
};
const ProtobufCEnumDescriptor protos__confidentiality_level__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "protos.ConfidentialityLevel",
  "ConfidentialityLevel",
  "Protos__ConfidentialityLevel",
  "protos",
  2,
  protos__confidentiality_level__enum_values_by_number,
  2,
  protos__confidentiality_level__enum_values_by_name,
  1,
  protos__confidentiality_level__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
