// Code generated by protoc-gen-go. DO NOT EDIT.
// source: examples/route_guide/routeguide/route_guide.proto

package routeguide

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

// Points are represented as latitude-longitude pairs in the E7 representation
// (degrees multiplied by 10**7 and rounded to the nearest integer).
// Latitudes should be in the range +/- 90 degrees and longitude should be in
// the range +/- 180 degrees (inclusive).
type Point struct {
	Latitude             int32    `protobuf:"varint,1,opt,name=latitude,proto3" json:"latitude,omitempty"`
	Longitude            int32    `protobuf:"varint,2,opt,name=longitude,proto3" json:"longitude,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Point) Reset()         { *m = Point{} }
func (m *Point) String() string { return proto.CompactTextString(m) }
func (*Point) ProtoMessage()    {}
func (*Point) Descriptor() ([]byte, []int) {
	return fileDescriptor_af806a20656386f8, []int{0}
}

func (m *Point) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Point.Unmarshal(m, b)
}
func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Point.Marshal(b, m, deterministic)
}
func (m *Point) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Point.Merge(m, src)
}
func (m *Point) XXX_Size() int {
	return xxx_messageInfo_Point.Size(m)
}
func (m *Point) XXX_DiscardUnknown() {
	xxx_messageInfo_Point.DiscardUnknown(m)
}

var xxx_messageInfo_Point proto.InternalMessageInfo

func (m *Point) GetLatitude() int32 {
	if m != nil {
		return m.Latitude
	}
	return 0
}

func (m *Point) GetLongitude() int32 {
	if m != nil {
		return m.Longitude
	}
	return 0
}

// A latitude-longitude rectangle, represented as two diagonally opposite
// points "lo" and "hi".
type Rectangle struct {
	// One corner of the rectangle.
	Lo *Point `protobuf:"bytes,1,opt,name=lo,proto3" json:"lo,omitempty"`
	// The other corner of the rectangle.
	Hi                   *Point   `protobuf:"bytes,2,opt,name=hi,proto3" json:"hi,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Rectangle) Reset()         { *m = Rectangle{} }
func (m *Rectangle) String() string { return proto.CompactTextString(m) }
func (*Rectangle) ProtoMessage()    {}
func (*Rectangle) Descriptor() ([]byte, []int) {
	return fileDescriptor_af806a20656386f8, []int{1}
}

func (m *Rectangle) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Rectangle.Unmarshal(m, b)
}
func (m *Rectangle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Rectangle.Marshal(b, m, deterministic)
}
func (m *Rectangle) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Rectangle.Merge(m, src)
}
func (m *Rectangle) XXX_Size() int {
	return xxx_messageInfo_Rectangle.Size(m)
}
func (m *Rectangle) XXX_DiscardUnknown() {
	xxx_messageInfo_Rectangle.DiscardUnknown(m)
}

var xxx_messageInfo_Rectangle proto.InternalMessageInfo

func (m *Rectangle) GetLo() *Point {
	if m != nil {
		return m.Lo
	}
	return nil
}

func (m *Rectangle) GetHi() *Point {
	if m != nil {
		return m.Hi
	}
	return nil
}

// A feature names something at a given point.
//
// If a feature could not be named, the name is empty.
type Feature struct {
	// The name of the feature.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The point where the feature is detected.
	Location             *Point   `protobuf:"bytes,2,opt,name=location,proto3" json:"location,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Feature) Reset()         { *m = Feature{} }
func (m *Feature) String() string { return proto.CompactTextString(m) }
func (*Feature) ProtoMessage()    {}
func (*Feature) Descriptor() ([]byte, []int) {
	return fileDescriptor_af806a20656386f8, []int{2}
}

func (m *Feature) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Feature.Unmarshal(m, b)
}
func (m *Feature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Feature.Marshal(b, m, deterministic)
}
func (m *Feature) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Feature.Merge(m, src)
}
func (m *Feature) XXX_Size() int {
	return xxx_messageInfo_Feature.Size(m)
}
func (m *Feature) XXX_DiscardUnknown() {
	xxx_messageInfo_Feature.DiscardUnknown(m)
}

var xxx_messageInfo_Feature proto.InternalMessageInfo

func (m *Feature) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Feature) GetLocation() *Point {
	if m != nil {
		return m.Location
	}
	return nil
}

// A RouteNote is a message sent while at a given point.
type RouteNote struct {
	// The location from which the message is sent.
	Location *Point `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
	// The message to be sent.
	Message              string   `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RouteNote) Reset()         { *m = RouteNote{} }
func (m *RouteNote) String() string { return proto.CompactTextString(m) }
func (*RouteNote) ProtoMessage()    {}
func (*RouteNote) Descriptor() ([]byte, []int) {
	return fileDescriptor_af806a20656386f8, []int{3}
}

func (m *RouteNote) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteNote.Unmarshal(m, b)
}
func (m *RouteNote) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteNote.Marshal(b, m, deterministic)
}
func (m *RouteNote) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteNote.Merge(m, src)
}
func (m *RouteNote) XXX_Size() int {
	return xxx_messageInfo_RouteNote.Size(m)
}
func (m *RouteNote) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteNote.DiscardUnknown(m)
}

var xxx_messageInfo_RouteNote proto.InternalMessageInfo

func (m *RouteNote) GetLocation() *Point {
	if m != nil {
		return m.Location
	}
	return nil
}

func (m *RouteNote) GetMessage() string {
	if m != nil {
		return m.Message
	}
	return ""
}

// A RouteSummary is received in response to a RecordRoute rpc.
//
// It contains the number of individual points received, the number of
// detected features, and the total distance covered as the cumulative sum of
// the distance between each point.
type RouteSummary struct {
	// The number of points received.
	PointCount int32 `protobuf:"varint,1,opt,name=point_count,json=pointCount,proto3" json:"point_count,omitempty"`
	// The number of known features passed while traversing the route.
	FeatureCount int32 `protobuf:"varint,2,opt,name=feature_count,json=featureCount,proto3" json:"feature_count,omitempty"`
	// The distance covered in metres.
	Distance int32 `protobuf:"varint,3,opt,name=distance,proto3" json:"distance,omitempty"`
	// The duration of the traversal in seconds.
	ElapsedTime          int32    `protobuf:"varint,4,opt,name=elapsed_time,json=elapsedTime,proto3" json:"elapsed_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RouteSummary) Reset()         { *m = RouteSummary{} }
func (m *RouteSummary) String() string { return proto.CompactTextString(m) }
func (*RouteSummary) ProtoMessage()    {}
func (*RouteSummary) Descriptor() ([]byte, []int) {
	return fileDescriptor_af806a20656386f8, []int{4}
}

func (m *RouteSummary) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteSummary.Unmarshal(m, b)
}
func (m *RouteSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteSummary.Marshal(b, m, deterministic)
}
func (m *RouteSummary) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteSummary.Merge(m, src)
}
func (m *RouteSummary) XXX_Size() int {
	return xxx_messageInfo_RouteSummary.Size(m)
}
func (m *RouteSummary) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteSummary.DiscardUnknown(m)
}

var xxx_messageInfo_RouteSummary proto.InternalMessageInfo

func (m *RouteSummary) GetPointCount() int32 {
	if m != nil {
		return m.PointCount
	}
	return 0
}

func (m *RouteSummary) GetFeatureCount() int32 {
	if m != nil {
		return m.FeatureCount
	}
	return 0
}

func (m *RouteSummary) GetDistance() int32 {
	if m != nil {
		return m.Distance
	}
	return 0
}

func (m *RouteSummary) GetElapsedTime() int32 {
	if m != nil {
		return m.ElapsedTime
	}
	return 0
}

func init() {
	proto.RegisterType((*Point)(nil), "routeguide.Point")
	proto.RegisterType((*Rectangle)(nil), "routeguide.Rectangle")
	proto.RegisterType((*Feature)(nil), "routeguide.Feature")
	proto.RegisterType((*RouteNote)(nil), "routeguide.RouteNote")
	proto.RegisterType((*RouteSummary)(nil), "routeguide.RouteSummary")
}

func init() {
	proto.RegisterFile("examples/route_guide/routeguide/route_guide.proto", fileDescriptor_af806a20656386f8)
}

var fileDescriptor_af806a20656386f8 = []byte{
	// 434 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x53, 0xcd, 0x6e, 0xd3, 0x40,
	0x10, 0xae, 0x43, 0x4b, 0xe3, 0x49, 0x10, 0x62, 0x10, 0x92, 0x15, 0x90, 0xa0, 0xe6, 0xd2, 0x0b,
	0x4e, 0x29, 0x52, 0x8f, 0x45, 0xb4, 0x12, 0xbd, 0x54, 0x28, 0x98, 0x9e, 0xb8, 0x44, 0x8b, 0x3d,
	0x6c, 0x56, 0x5a, 0x7b, 0x2c, 0x7b, 0x2d, 0xc1, 0x03, 0xf0, 0x04, 0xbc, 0x30, 0xda, 0x5d, 0x3b,
	0x76, 0x69, 0xaa, 0xde, 0x66, 0xbe, 0xf9, 0xbe, 0xf9, 0xd5, 0xc0, 0x7b, 0xfa, 0x25, 0x8a, 0x4a,
	0x53, 0xb3, 0xac, 0xb9, 0x35, 0xb4, 0x96, 0xad, 0xca, 0xc9, 0xdb, 0x23, 0xd3, 0xc3, 0x49, 0x55,
	0xb3, 0x61, 0x84, 0x21, 0x1a, 0x7f, 0x82, 0x83, 0x15, 0xab, 0xd2, 0xe0, 0x02, 0xa6, 0x5a, 0x18,
	0x65, 0xda, 0x9c, 0xa2, 0xe0, 0x4d, 0x70, 0x7c, 0x90, 0x6e, 0x7d, 0x7c, 0x05, 0xa1, 0xe6, 0x52,
	0xfa, 0xe0, 0xc4, 0x05, 0x07, 0x20, 0xfe, 0x0a, 0x61, 0x4a, 0x99, 0x11, 0xa5, 0xd4, 0x84, 0x47,
	0x30, 0xd1, 0xec, 0x12, 0xcc, 0x4e, 0x9f, 0x25, 0x43, 0xa1, 0xc4, 0x55, 0x49, 0x27, 0x9a, 0x2d,
	0x65, 0xa3, 0x5c, 0x9a, 0xdd, 0x94, 0x8d, 0x8a, 0xaf, 0xe1, 0xf0, 0x33, 0x09, 0xd3, 0xd6, 0x84,
	0x08, 0xfb, 0xa5, 0x28, 0x7c, 0x4f, 0x61, 0xea, 0x6c, 0x7c, 0x07, 0x53, 0xcd, 0x99, 0x30, 0x8a,
	0xcb, 0xfb, 0xf3, 0x6c, 0x29, 0xf1, 0x0d, 0x84, 0xa9, 0x8d, 0x7e, 0x61, 0x73, 0x5b, 0x1b, 0x3c,
	0xa8, 0xc5, 0x08, 0x0e, 0x0b, 0x6a, 0x1a, 0x21, 0xfd, 0xe0, 0x61, 0xda, 0xbb, 0xf1, 0xdf, 0x00,
	0xe6, 0x2e, 0xed, 0xb7, 0xb6, 0x28, 0x44, 0xfd, 0x1b, 0x5f, 0xc3, 0xac, 0xb2, 0xea, 0x75, 0xc6,
	0x6d, 0x69, 0xba, 0x25, 0x82, 0x83, 0x2e, 0x2d, 0x82, 0x6f, 0xe1, 0xc9, 0x4f, 0x3f, 0x55, 0x47,
	0xf1, 0xab, 0x9c, 0x77, 0xa0, 0x27, 0x2d, 0x60, 0x9a, 0xab, 0xc6, 0x88, 0x32, 0xa3, 0xe8, 0x91,
	0xbf, 0x43, 0xef, 0xe3, 0x11, 0xcc, 0x49, 0x8b, 0xaa, 0xa1, 0x7c, 0x6d, 0x54, 0x41, 0xd1, 0xbe,
	0x8b, 0xcf, 0x3a, 0xec, 0x46, 0x15, 0x74, 0xfa, 0x67, 0x02, 0xe0, 0xba, 0xba, 0xb2, 0xe3, 0xe0,
	0x19, 0xc0, 0x15, 0x99, 0x7e, 0x97, 0x77, 0x27, 0x5d, 0x3c, 0x1f, 0x43, 0x1d, 0x2f, 0xde, 0xc3,
	0x73, 0x98, 0x5f, 0xab, 0xa6, 0x17, 0x36, 0xf8, 0x62, 0x4c, 0xdb, 0x5e, 0xfb, 0x1e, 0xf5, 0x49,
	0x80, 0xe7, 0x30, 0x4b, 0x29, 0xe3, 0x3a, 0x77, 0xbd, 0xec, 0x2a, 0x1c, 0xdd, 0xca, 0x38, 0xda,
	0x63, 0xbc, 0x77, 0x1c, 0xe0, 0xc7, 0xee, 0x64, 0x97, 0x1b, 0x61, 0xfe, 0x2b, 0xde, 0x5f, 0x72,
	0xb1, 0x1b, 0xb6, 0xf2, 0x93, 0xe0, 0x62, 0x03, 0x2f, 0x15, 0x27, 0xb2, 0xae, 0xb2, 0xa4, 0x7f,
	0x90, 0x11, 0xfd, 0xe2, 0xe9, 0xb0, 0xa3, 0x95, 0xfd, 0x89, 0x55, 0xf0, 0xfd, 0x4c, 0x32, 0x4b,
	0x4d, 0x89, 0x64, 0x2d, 0x4a, 0x99, 0x70, 0x2d, 0x97, 0x56, 0xbe, 0x7c, 0xe0, 0xbf, 0x7e, 0x3c,
	0x76, 0x4f, 0xf5, 0xe1, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x28, 0xef, 0x54, 0xdd, 0x89, 0x03,
	0x00, 0x00,
}
