# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: opencensus/proto/trace/v1/trace.proto

require 'google/protobuf'

require 'opencensus/proto/resource/v1/resource_pb'
require 'google/protobuf/timestamp_pb'
require 'google/protobuf/wrappers_pb'
Google::Protobuf::DescriptorPool.generated_pool.build do
  add_message "opencensus.proto.trace.v1.Span" do
    optional :trace_id, :bytes, 1
    optional :span_id, :bytes, 2
    optional :tracestate, :message, 15, "opencensus.proto.trace.v1.Span.Tracestate"
    optional :parent_span_id, :bytes, 3
    optional :name, :message, 4, "opencensus.proto.trace.v1.TruncatableString"
    optional :kind, :enum, 14, "opencensus.proto.trace.v1.Span.SpanKind"
    optional :start_time, :message, 5, "google.protobuf.Timestamp"
    optional :end_time, :message, 6, "google.protobuf.Timestamp"
    optional :attributes, :message, 7, "opencensus.proto.trace.v1.Span.Attributes"
    optional :stack_trace, :message, 8, "opencensus.proto.trace.v1.StackTrace"
    optional :time_events, :message, 9, "opencensus.proto.trace.v1.Span.TimeEvents"
    optional :links, :message, 10, "opencensus.proto.trace.v1.Span.Links"
    optional :status, :message, 11, "opencensus.proto.trace.v1.Status"
    optional :resource, :message, 16, "opencensus.proto.resource.v1.Resource"
    optional :same_process_as_parent_span, :message, 12, "google.protobuf.BoolValue"
    optional :child_span_count, :message, 13, "google.protobuf.UInt32Value"
  end
  add_message "opencensus.proto.trace.v1.Span.Tracestate" do
    repeated :entries, :message, 1, "opencensus.proto.trace.v1.Span.Tracestate.Entry"
  end
  add_message "opencensus.proto.trace.v1.Span.Tracestate.Entry" do
    optional :key, :string, 1
    optional :value, :string, 2
  end
  add_message "opencensus.proto.trace.v1.Span.Attributes" do
    map :attribute_map, :string, :message, 1, "opencensus.proto.trace.v1.AttributeValue"
    optional :dropped_attributes_count, :int32, 2
  end
  add_message "opencensus.proto.trace.v1.Span.TimeEvent" do
    optional :time, :message, 1, "google.protobuf.Timestamp"
    oneof :value do
      optional :annotation, :message, 2, "opencensus.proto.trace.v1.Span.TimeEvent.Annotation"
      optional :message_event, :message, 3, "opencensus.proto.trace.v1.Span.TimeEvent.MessageEvent"
    end
  end
  add_message "opencensus.proto.trace.v1.Span.TimeEvent.Annotation" do
    optional :description, :message, 1, "opencensus.proto.trace.v1.TruncatableString"
    optional :attributes, :message, 2, "opencensus.proto.trace.v1.Span.Attributes"
  end
  add_message "opencensus.proto.trace.v1.Span.TimeEvent.MessageEvent" do
    optional :type, :enum, 1, "opencensus.proto.trace.v1.Span.TimeEvent.MessageEvent.Type"
    optional :id, :uint64, 2
    optional :uncompressed_size, :uint64, 3
    optional :compressed_size, :uint64, 4
  end
  add_enum "opencensus.proto.trace.v1.Span.TimeEvent.MessageEvent.Type" do
    value :TYPE_UNSPECIFIED, 0
    value :SENT, 1
    value :RECEIVED, 2
  end
  add_message "opencensus.proto.trace.v1.Span.TimeEvents" do
    repeated :time_event, :message, 1, "opencensus.proto.trace.v1.Span.TimeEvent"
    optional :dropped_annotations_count, :int32, 2
    optional :dropped_message_events_count, :int32, 3
  end
  add_message "opencensus.proto.trace.v1.Span.Link" do
    optional :trace_id, :bytes, 1
    optional :span_id, :bytes, 2
    optional :type, :enum, 3, "opencensus.proto.trace.v1.Span.Link.Type"
    optional :attributes, :message, 4, "opencensus.proto.trace.v1.Span.Attributes"
  end
  add_enum "opencensus.proto.trace.v1.Span.Link.Type" do
    value :TYPE_UNSPECIFIED, 0
    value :CHILD_LINKED_SPAN, 1
    value :PARENT_LINKED_SPAN, 2
  end
  add_message "opencensus.proto.trace.v1.Span.Links" do
    repeated :link, :message, 1, "opencensus.proto.trace.v1.Span.Link"
    optional :dropped_links_count, :int32, 2
  end
  add_enum "opencensus.proto.trace.v1.Span.SpanKind" do
    value :SPAN_KIND_UNSPECIFIED, 0
    value :SERVER, 1
    value :CLIENT, 2
  end
  add_message "opencensus.proto.trace.v1.Status" do
    optional :code, :int32, 1
    optional :message, :string, 2
  end
  add_message "opencensus.proto.trace.v1.AttributeValue" do
    oneof :value do
      optional :string_value, :message, 1, "opencensus.proto.trace.v1.TruncatableString"
      optional :int_value, :int64, 2
      optional :bool_value, :bool, 3
      optional :double_value, :double, 4
    end
  end
  add_message "opencensus.proto.trace.v1.StackTrace" do
    optional :stack_frames, :message, 1, "opencensus.proto.trace.v1.StackTrace.StackFrames"
    optional :stack_trace_hash_id, :uint64, 2
  end
  add_message "opencensus.proto.trace.v1.StackTrace.StackFrame" do
    optional :function_name, :message, 1, "opencensus.proto.trace.v1.TruncatableString"
    optional :original_function_name, :message, 2, "opencensus.proto.trace.v1.TruncatableString"
    optional :file_name, :message, 3, "opencensus.proto.trace.v1.TruncatableString"
    optional :line_number, :int64, 4
    optional :column_number, :int64, 5
    optional :load_module, :message, 6, "opencensus.proto.trace.v1.Module"
    optional :source_version, :message, 7, "opencensus.proto.trace.v1.TruncatableString"
  end
  add_message "opencensus.proto.trace.v1.StackTrace.StackFrames" do
    repeated :frame, :message, 1, "opencensus.proto.trace.v1.StackTrace.StackFrame"
    optional :dropped_frames_count, :int32, 2
  end
  add_message "opencensus.proto.trace.v1.Module" do
    optional :module, :message, 1, "opencensus.proto.trace.v1.TruncatableString"
    optional :build_id, :message, 2, "opencensus.proto.trace.v1.TruncatableString"
  end
  add_message "opencensus.proto.trace.v1.TruncatableString" do
    optional :value, :string, 1
    optional :truncated_byte_count, :int32, 2
  end
end

module OpenCensus
  module Proto
    module Trace
      module V1
        Span = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span").msgclass
        Span::Tracestate = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.Tracestate").msgclass
        Span::Tracestate::Entry = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.Tracestate.Entry").msgclass
        Span::Attributes = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.Attributes").msgclass
        Span::TimeEvent = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.TimeEvent").msgclass
        Span::TimeEvent::Annotation = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.TimeEvent.Annotation").msgclass
        Span::TimeEvent::MessageEvent = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.TimeEvent.MessageEvent").msgclass
        Span::TimeEvent::MessageEvent::Type = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.TimeEvent.MessageEvent.Type").enummodule
        Span::TimeEvents = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.TimeEvents").msgclass
        Span::Link = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.Link").msgclass
        Span::Link::Type = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.Link.Type").enummodule
        Span::Links = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.Links").msgclass
        Span::SpanKind = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Span.SpanKind").enummodule
        Status = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Status").msgclass
        AttributeValue = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.AttributeValue").msgclass
        StackTrace = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.StackTrace").msgclass
        StackTrace::StackFrame = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.StackTrace.StackFrame").msgclass
        StackTrace::StackFrames = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.StackTrace.StackFrames").msgclass
        Module = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.Module").msgclass
        TruncatableString = Google::Protobuf::DescriptorPool.generated_pool.lookup("opencensus.proto.trace.v1.TruncatableString").msgclass
      end
    end
  end
end
