// Code generated by protoc-gen-go.
// source: logical_device.proto
// DO NOT EDIT!

/*
Package voltha is a generated protocol buffer package.

It is generated from these files:
	logical_device.proto

It has these top-level messages:
	LogicalPort
	LogicalPorts
	LogicalDevice
	LogicalDevices
*/
package logical_device

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import openflow_13 "github.com/opencord/voltha/netconf/translator/voltha/openflow_13"

// 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.ProtoPackageIsVersion2 // please upgrade the proto package

type LogicalPort struct {
	Id           string               `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
	OfpPort      *openflow_13.OfpPort `protobuf:"bytes,2,opt,name=ofp_port,json=ofpPort" json:"ofp_port,omitempty"`
	DeviceId     string               `protobuf:"bytes,3,opt,name=device_id,json=deviceId" json:"device_id,omitempty"`
	DevicePortNo uint32               `protobuf:"varint,4,opt,name=device_port_no,json=devicePortNo" json:"device_port_no,omitempty"`
	RootPort     bool                 `protobuf:"varint,5,opt,name=root_port,json=rootPort" json:"root_port,omitempty"`
}

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

func (m *LogicalPort) GetId() string {
	if m != nil {
		return m.Id
	}
	return ""
}

func (m *LogicalPort) GetOfpPort() *openflow_13.OfpPort {
	if m != nil {
		return m.OfpPort
	}
	return nil
}

func (m *LogicalPort) GetDeviceId() string {
	if m != nil {
		return m.DeviceId
	}
	return ""
}

func (m *LogicalPort) GetDevicePortNo() uint32 {
	if m != nil {
		return m.DevicePortNo
	}
	return 0
}

func (m *LogicalPort) GetRootPort() bool {
	if m != nil {
		return m.RootPort
	}
	return false
}

type LogicalPorts struct {
	Items []*LogicalPort `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
}

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

func (m *LogicalPorts) GetItems() []*LogicalPort {
	if m != nil {
		return m.Items
	}
	return nil
}

type LogicalDevice struct {
	// unique id of logical device
	Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
	// unique datapath id for the logical device (used by the SDN controller)
	DatapathId uint64 `protobuf:"varint,2,opt,name=datapath_id,json=datapathId" json:"datapath_id,omitempty"`
	// device description
	Desc *openflow_13.OfpDesc `protobuf:"bytes,3,opt,name=desc" json:"desc,omitempty"`
	// device features
	SwitchFeatures *openflow_13.OfpSwitchFeatures `protobuf:"bytes,4,opt,name=switch_features,json=switchFeatures" json:"switch_features,omitempty"`
	// name of the root device anchoring logical device
	RootDeviceId string `protobuf:"bytes,5,opt,name=root_device_id,json=rootDeviceId" json:"root_device_id,omitempty"`
	// logical device ports
	Ports []*LogicalPort `protobuf:"bytes,128,rep,name=ports" json:"ports,omitempty"`
	// flows configured on the logical device
	Flows *openflow_13.Flows `protobuf:"bytes,129,opt,name=flows" json:"flows,omitempty"`
	// flow groups configured on the logical device
	FlowGroups *openflow_13.FlowGroups `protobuf:"bytes,130,opt,name=flow_groups,json=flowGroups" json:"flow_groups,omitempty"`
}

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

func (m *LogicalDevice) GetId() string {
	if m != nil {
		return m.Id
	}
	return ""
}

func (m *LogicalDevice) GetDatapathId() uint64 {
	if m != nil {
		return m.DatapathId
	}
	return 0
}

func (m *LogicalDevice) GetDesc() *openflow_13.OfpDesc {
	if m != nil {
		return m.Desc
	}
	return nil
}

func (m *LogicalDevice) GetSwitchFeatures() *openflow_13.OfpSwitchFeatures {
	if m != nil {
		return m.SwitchFeatures
	}
	return nil
}

func (m *LogicalDevice) GetRootDeviceId() string {
	if m != nil {
		return m.RootDeviceId
	}
	return ""
}

func (m *LogicalDevice) GetPorts() []*LogicalPort {
	if m != nil {
		return m.Ports
	}
	return nil
}

func (m *LogicalDevice) GetFlows() *openflow_13.Flows {
	if m != nil {
		return m.Flows
	}
	return nil
}

func (m *LogicalDevice) GetFlowGroups() *openflow_13.FlowGroups {
	if m != nil {
		return m.FlowGroups
	}
	return nil
}

type LogicalDevices struct {
	Items []*LogicalDevice `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
}

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

func (m *LogicalDevices) GetItems() []*LogicalDevice {
	if m != nil {
		return m.Items
	}
	return nil
}

func init() {
	proto.RegisterType((*LogicalPort)(nil), "voltha.LogicalPort")
	proto.RegisterType((*LogicalPorts)(nil), "voltha.LogicalPorts")
	proto.RegisterType((*LogicalDevice)(nil), "voltha.LogicalDevice")
	proto.RegisterType((*LogicalDevices)(nil), "voltha.LogicalDevices")
}

func init() { proto.RegisterFile("logical_device.proto", fileDescriptor0) }

var fileDescriptor0 = []byte{
	// 438 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x52, 0xd1, 0x6e, 0xd3, 0x30,
	0x14, 0xc5, 0x6d, 0x33, 0xda, 0x9b, 0xae, 0x08, 0xc3, 0x84, 0x35, 0x40, 0x44, 0x15, 0x0f, 0x99,
	0x90, 0xba, 0xd1, 0x89, 0x07, 0x1e, 0x90, 0xd0, 0x34, 0x0d, 0x55, 0x42, 0x08, 0xf9, 0x07, 0x22,
	0x53, 0x3b, 0xad, 0xa5, 0x2c, 0xd7, 0x8a, 0xbd, 0xed, 0x15, 0x78, 0xe1, 0x73, 0xf8, 0x12, 0x7e,
	0x82, 0x8f, 0xe0, 0x19, 0xd9, 0x4e, 0xa0, 0x5d, 0xe1, 0x31, 0xe7, 0x9c, 0x7b, 0x7c, 0xee, 0xb9,
	0x81, 0x87, 0x15, 0xae, 0xf4, 0x52, 0x54, 0x85, 0x54, 0xd7, 0x7a, 0xa9, 0x66, 0xa6, 0x41, 0x87,
	0x74, 0xef, 0x1a, 0x2b, 0xb7, 0x16, 0x87, 0x70, 0xa9, 0x9c, 0x88, 0xd8, 0xe1, 0x93, 0x15, 0xe2,
	0xaa, 0x52, 0xc7, 0xc2, 0xe8, 0x63, 0x51, 0xd7, 0xe8, 0x84, 0xd3, 0x58, 0xdb, 0x96, 0xbd, 0x8f,
	0x46, 0xd5, 0x65, 0x85, 0x37, 0xc5, 0xcb, 0xd3, 0x08, 0x4d, 0xbf, 0x13, 0x48, 0xdf, 0x47, 0xf7,
	0x8f, 0xd8, 0x38, 0x3a, 0x81, 0x9e, 0x96, 0x8c, 0x64, 0x24, 0x1f, 0xf1, 0x9e, 0x96, 0xf4, 0x04,
	0x86, 0x58, 0x9a, 0xc2, 0x60, 0xe3, 0x58, 0x2f, 0x23, 0x79, 0x3a, 0x3f, 0x98, 0x6d, 0xba, 0x74,
	0x24, 0xbf, 0x8b, 0xa5, 0x09, 0x0e, 0x8f, 0x61, 0x14, 0x63, 0x16, 0x5a, 0xb2, 0x7e, 0x30, 0x1a,
	0x46, 0x60, 0x21, 0xe9, 0x73, 0x98, 0xb4, 0xa4, 0x1f, 0x2a, 0x6a, 0x64, 0x83, 0x8c, 0xe4, 0xfb,
	0x7c, 0x1c, 0x51, 0x6f, 0xf0, 0x01, 0xbd, 0x45, 0x83, 0xe8, 0xe2, 0xab, 0x49, 0x46, 0xf2, 0x21,
	0x1f, 0x7a, 0xc0, 0xd3, 0xd3, 0xd7, 0x30, 0xde, 0x08, 0x6c, 0xe9, 0x11, 0x24, 0xda, 0xa9, 0x4b,
	0xcb, 0x48, 0xd6, 0xcf, 0xd3, 0xf9, 0x83, 0x59, 0xac, 0x65, 0xb6, 0x21, 0xe2, 0x51, 0x31, 0xfd,
	0xd6, 0x87, 0xfd, 0x16, 0x3e, 0x0f, 0xef, 0xed, 0xac, 0xfb, 0x0c, 0x52, 0x29, 0x9c, 0x30, 0xc2,
	0xad, 0x7d, 0x7c, 0xbf, 0xf1, 0x80, 0x43, 0x07, 0x2d, 0x24, 0x3d, 0x82, 0x81, 0x54, 0x76, 0x19,
	0x16, 0xfb, 0x57, 0x17, 0x9e, 0xe4, 0x41, 0x42, 0x17, 0x70, 0xcf, 0xde, 0x68, 0xb7, 0x5c, 0x17,
	0xa5, 0x12, 0xee, 0xaa, 0x51, 0x36, 0x2c, 0x9b, 0xce, 0xb3, 0x9d, 0xa9, 0x5b, 0x3a, 0x3e, 0x89,
	0xc0, 0x45, 0xfb, 0xed, 0x6b, 0x0b, 0x85, 0xfc, 0x2d, 0x36, 0x09, 0x91, 0xc7, 0x1e, 0x3d, 0xef,
	0xca, 0x7d, 0x05, 0x89, 0x6f, 0xcc, 0xb2, 0xcf, 0xff, 0xaf, 0xe2, 0x6c, 0xf4, 0xf3, 0xd7, 0x8f,
	0xa7, 0x03, 0xbf, 0x36, 0x8f, 0x6a, 0x7a, 0x02, 0x89, 0xcf, 0x62, 0xd9, 0x17, 0x12, 0xe2, 0xd1,
	0xad, 0x78, 0x17, 0x9e, 0x3a, 0x4b, 0xfc, 0xd4, 0x1d, 0x1e, 0x85, 0xf4, 0x2d, 0xa4, 0x81, 0x5e,
	0x35, 0x78, 0x65, 0x2c, 0xfb, 0x1a, 0xe7, 0x1e, 0xed, 0xcc, 0xbd, 0x0b, 0x7c, 0x37, 0x0c, 0xe5,
	0x1f, 0x68, 0xfa, 0x06, 0x26, 0x5b, 0x87, 0xb0, 0xf4, 0xc5, 0xf6, 0x19, 0x0f, 0x6e, 0x65, 0x8f,
	0xb2, 0xf6, 0x90, 0x9f, 0xf6, 0xc2, 0xcf, 0x7b, 0xfa, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x24, 0xce,
	0xf3, 0x88, 0x19, 0x03, 0x00, 0x00,
}
