# 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_file("opencensus/proto/trace/v1/trace.proto", :syntax => :proto3) 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"
      optional :tracestate, :message, 5, "opencensus.proto.trace.v1.Span.Tracestate"
    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
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
