# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: p4/v1/p4runtime.proto
# Protobuf Python Version: 5.26.1
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
from ...google.rpc import status_pb2 as google_dot_rpc_dot_status__pb2
from ..config.v1 import p4info_pb2 as p4_dot_config_dot_v1_dot_p4info__pb2
from . import p4data_pb2 as p4_dot_v1_dot_p4data__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15p4/v1/p4runtime.proto\x12\x05p4.v1\x1a\x19google/protobuf/any.proto\x1a\x17google/rpc/status.proto\x1a\x19p4/config/v1/p4info.proto\x1a\x12p4/v1/p4data.proto\"\x8c\x02\n\x0cWriteRequest\x12\x11\n\tdevice_id\x18\x01 \x01(\x04\x12\x13\n\x07role_id\x18\x02 \x01(\x04\x42\x02\x18\x01\x12\x0c\n\x04role\x18\x06 \x01(\t\x12#\n\x0b\x65lection_id\x18\x03 \x01(\x0b\x32\x0e.p4.v1.Uint128\x12\x1e\n\x07updates\x18\x04 \x03(\x0b\x32\r.p4.v1.Update\x12\x30\n\tatomicity\x18\x05 \x01(\x0e\x32\x1d.p4.v1.WriteRequest.Atomicity\"O\n\tAtomicity\x12\x15\n\x11\x43ONTINUE_ON_ERROR\x10\x00\x12\x15\n\x11ROLLBACK_ON_ERROR\x10\x01\x12\x14\n\x10\x44\x41TAPLANE_ATOMIC\x10\x02\"\x0f\n\rWriteResponse\"O\n\x0bReadRequest\x12\x11\n\tdevice_id\x18\x01 \x01(\x04\x12\x0c\n\x04role\x18\x03 \x01(\t\x12\x1f\n\x08\x65ntities\x18\x02 \x03(\x0b\x32\r.p4.v1.Entity\"/\n\x0cReadResponse\x12\x1f\n\x08\x65ntities\x18\x01 \x03(\x0b\x32\r.p4.v1.Entity\"\x86\x01\n\x06Update\x12 \n\x04type\x18\x01 \x01(\x0e\x32\x12.p4.v1.Update.Type\x12\x1d\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\r.p4.v1.Entity\";\n\x04Type\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\n\n\x06INSERT\x10\x01\x12\n\n\x06MODIFY\x10\x02\x12\n\n\x06\x44\x45LETE\x10\x03\"\x87\x05\n\x06\x45ntity\x12*\n\x0c\x65xtern_entry\x18\x01 \x01(\x0b\x32\x12.p4.v1.ExternEntryH\x00\x12(\n\x0btable_entry\x18\x02 \x01(\x0b\x32\x11.p4.v1.TableEntryH\x00\x12;\n\x15\x61\x63tion_profile_member\x18\x03 \x01(\x0b\x32\x1a.p4.v1.ActionProfileMemberH\x00\x12\x39\n\x14\x61\x63tion_profile_group\x18\x04 \x01(\x0b\x32\x19.p4.v1.ActionProfileGroupH\x00\x12(\n\x0bmeter_entry\x18\x05 \x01(\x0b\x32\x11.p4.v1.MeterEntryH\x00\x12\x35\n\x12\x64irect_meter_entry\x18\x06 \x01(\x0b\x32\x17.p4.v1.DirectMeterEntryH\x00\x12,\n\rcounter_entry\x18\x07 \x01(\x0b\x32\x13.p4.v1.CounterEntryH\x00\x12\x39\n\x14\x64irect_counter_entry\x18\x08 \x01(\x0b\x32\x19.p4.v1.DirectCounterEntryH\x00\x12N\n\x1fpacket_replication_engine_entry\x18\t \x01(\x0b\x32#.p4.v1.PacketReplicationEngineEntryH\x00\x12/\n\x0fvalue_set_entry\x18\n \x01(\x0b\x32\x14.p4.v1.ValueSetEntryH\x00\x12.\n\x0eregister_entry\x18\x0b \x01(\x0b\x32\x14.p4.v1.RegisterEntryH\x00\x12*\n\x0c\x64igest_entry\x18\x0c \x01(\x0b\x32\x12.p4.v1.DigestEntryH\x00\x42\x08\n\x06\x65ntity\"]\n\x0b\x45xternEntry\x12\x16\n\x0e\x65xtern_type_id\x18\x01 \x01(\r\x12\x11\n\textern_id\x18\x02 \x01(\r\x12#\n\x05\x65ntry\x18\x03 \x01(\x0b\x32\x14.google.protobuf.Any\"\xd7\x03\n\nTableEntry\x12\x10\n\x08table_id\x18\x01 \x01(\r\x12 \n\x05match\x18\x02 \x03(\x0b\x32\x11.p4.v1.FieldMatch\x12\"\n\x06\x61\x63tion\x18\x03 \x01(\x0b\x32\x12.p4.v1.TableAction\x12\x10\n\x08priority\x18\x04 \x01(\x05\x12\x1f\n\x13\x63ontroller_metadata\x18\x05 \x01(\x04\x42\x02\x18\x01\x12(\n\x0cmeter_config\x18\x06 \x01(\x0b\x32\x12.p4.v1.MeterConfig\x12(\n\x0c\x63ounter_data\x18\x07 \x01(\x0b\x32\x12.p4.v1.CounterData\x12\x33\n\x12meter_counter_data\x18\x0c \x01(\x0b\x32\x17.p4.v1.MeterCounterData\x12\x19\n\x11is_default_action\x18\x08 \x01(\x08\x12\x17\n\x0fidle_timeout_ns\x18\t \x01(\x03\x12:\n\x13time_since_last_hit\x18\n \x01(\x0b\x32\x1d.p4.v1.TableEntry.IdleTimeout\x12\x10\n\x08metadata\x18\x0b \x01(\x0c\x12\x10\n\x08is_const\x18\r \x01(\x08\x1a!\n\x0bIdleTimeout\x12\x12\n\nelapsed_ns\x18\x01 \x01(\x03\"\xda\x03\n\nFieldMatch\x12\x10\n\x08\x66ield_id\x18\x01 \x01(\r\x12(\n\x05\x65xact\x18\x02 \x01(\x0b\x32\x17.p4.v1.FieldMatch.ExactH\x00\x12,\n\x07ternary\x18\x03 \x01(\x0b\x32\x19.p4.v1.FieldMatch.TernaryH\x00\x12$\n\x03lpm\x18\x04 \x01(\x0b\x32\x15.p4.v1.FieldMatch.LPMH\x00\x12(\n\x05range\x18\x06 \x01(\x0b\x32\x17.p4.v1.FieldMatch.RangeH\x00\x12.\n\x08optional\x18\x07 \x01(\x0b\x32\x1a.p4.v1.FieldMatch.OptionalH\x00\x12%\n\x05other\x18\x64 \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x1a\x16\n\x05\x45xact\x12\r\n\x05value\x18\x01 \x01(\x0c\x1a&\n\x07Ternary\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x0c\n\x04mask\x18\x02 \x01(\x0c\x1a(\n\x03LPM\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x12\n\nprefix_len\x18\x02 \x01(\x05\x1a\"\n\x05Range\x12\x0b\n\x03low\x18\x01 \x01(\x0c\x12\x0c\n\x04high\x18\x02 \x01(\x0c\x1a\x19\n\x08Optional\x12\r\n\x05value\x18\x01 \x01(\x0c\x42\x12\n\x10\x66ield_match_type\"\xc1\x01\n\x0bTableAction\x12\x1f\n\x06\x61\x63tion\x18\x01 \x01(\x0b\x32\r.p4.v1.ActionH\x00\x12\"\n\x18\x61\x63tion_profile_member_id\x18\x02 \x01(\rH\x00\x12!\n\x17\x61\x63tion_profile_group_id\x18\x03 \x01(\rH\x00\x12\x42\n\x19\x61\x63tion_profile_action_set\x18\x04 \x01(\x0b\x32\x1d.p4.v1.ActionProfileActionSetH\x00\x42\x06\n\x04type\"j\n\x06\x41\x63tion\x12\x11\n\taction_id\x18\x01 \x01(\r\x12#\n\x06params\x18\x04 \x03(\x0b\x32\x13.p4.v1.Action.Param\x1a(\n\x05Param\x12\x10\n\x08param_id\x18\x02 \x01(\r\x12\r\n\x05value\x18\x03 \x01(\x0c\"T\n\x16\x41\x63tionProfileActionSet\x12:\n\x16\x61\x63tion_profile_actions\x18\x01 \x03(\x0b\x32\x1a.p4.v1.ActionProfileAction\"}\n\x13\x41\x63tionProfileAction\x12\x1d\n\x06\x61\x63tion\x18\x01 \x01(\x0b\x32\r.p4.v1.Action\x12\x0e\n\x06weight\x18\x02 \x01(\x05\x12\x13\n\x05watch\x18\x03 \x01(\x05\x42\x02\x18\x01H\x00\x12\x14\n\nwatch_port\x18\x04 \x01(\x0cH\x00\x42\x0c\n\nwatch_kind\"b\n\x13\x41\x63tionProfileMember\x12\x19\n\x11\x61\x63tion_profile_id\x18\x01 \x01(\r\x12\x11\n\tmember_id\x18\x02 \x01(\r\x12\x1d\n\x06\x61\x63tion\x18\x03 \x01(\x0b\x32\r.p4.v1.Action\"\xec\x01\n\x12\x41\x63tionProfileGroup\x12\x19\n\x11\x61\x63tion_profile_id\x18\x01 \x01(\r\x12\x10\n\x08group_id\x18\x02 \x01(\r\x12\x31\n\x07members\x18\x03 \x03(\x0b\x32 .p4.v1.ActionProfileGroup.Member\x12\x10\n\x08max_size\x18\x04 \x01(\x05\x1a\x64\n\x06Member\x12\x11\n\tmember_id\x18\x01 \x01(\r\x12\x0e\n\x06weight\x18\x02 \x01(\x05\x12\x13\n\x05watch\x18\x03 \x01(\x05\x42\x02\x18\x01H\x00\x12\x14\n\nwatch_port\x18\x04 \x01(\x0cH\x00\x42\x0c\n\nwatch_kind\"\x16\n\x05Index\x12\r\n\x05index\x18\x01 \x01(\x03\"\x8e\x01\n\nMeterEntry\x12\x10\n\x08meter_id\x18\x01 \x01(\r\x12\x1b\n\x05index\x18\x02 \x01(\x0b\x32\x0c.p4.v1.Index\x12\"\n\x06\x63onfig\x18\x03 \x01(\x0b\x32\x12.p4.v1.MeterConfig\x12-\n\x0c\x63ounter_data\x18\x04 \x01(\x0b\x32\x17.p4.v1.MeterCounterData\"\x8d\x01\n\x10\x44irectMeterEntry\x12&\n\x0btable_entry\x18\x01 \x01(\x0b\x32\x11.p4.v1.TableEntry\x12\"\n\x06\x63onfig\x18\x02 \x01(\x0b\x32\x12.p4.v1.MeterConfig\x12-\n\x0c\x63ounter_data\x18\x03 \x01(\x0b\x32\x17.p4.v1.MeterCounterData\"G\n\x0bMeterConfig\x12\x0b\n\x03\x63ir\x18\x01 \x01(\x03\x12\x0e\n\x06\x63\x62urst\x18\x02 \x01(\x03\x12\x0b\n\x03pir\x18\x03 \x01(\x03\x12\x0e\n\x06pburst\x18\x04 \x01(\x03\"a\n\x0c\x43ounterEntry\x12\x12\n\ncounter_id\x18\x01 \x01(\r\x12\x1b\n\x05index\x18\x02 \x01(\x0b\x32\x0c.p4.v1.Index\x12 \n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\x12.p4.v1.CounterData\"^\n\x12\x44irectCounterEntry\x12&\n\x0btable_entry\x18\x01 \x01(\x0b\x32\x11.p4.v1.TableEntry\x12 \n\x04\x64\x61ta\x18\x02 \x01(\x0b\x32\x12.p4.v1.CounterData\"7\n\x0b\x43ounterData\x12\x12\n\nbyte_count\x18\x01 \x01(\x03\x12\x14\n\x0cpacket_count\x18\x02 \x01(\x03\"z\n\x10MeterCounterData\x12!\n\x05green\x18\x01 \x01(\x0b\x32\x12.p4.v1.CounterData\x12\"\n\x06yellow\x18\x02 \x01(\x0b\x32\x12.p4.v1.CounterData\x12\x1f\n\x03red\x18\x03 \x01(\x0b\x32\x12.p4.v1.CounterData\"\x9c\x01\n\x1cPacketReplicationEngineEntry\x12;\n\x15multicast_group_entry\x18\x01 \x01(\x0b\x32\x1a.p4.v1.MulticastGroupEntryH\x00\x12\x37\n\x13\x63lone_session_entry\x18\x02 \x01(\x0b\x32\x18.p4.v1.CloneSessionEntryH\x00\x42\x06\n\x04type\"S\n\x07Replica\x12\x19\n\x0b\x65gress_port\x18\x01 \x01(\rB\x02\x18\x01H\x00\x12\x0e\n\x04port\x18\x03 \x01(\x0cH\x00\x12\x10\n\x08instance\x18\x02 \x01(\rB\x0b\n\tport_kind\"e\n\x13MulticastGroupEntry\x12\x1a\n\x12multicast_group_id\x18\x01 \x01(\r\x12 \n\x08replicas\x18\x02 \x03(\x0b\x32\x0e.p4.v1.Replica\x12\x10\n\x08metadata\x18\x03 \x01(\x0c\"\x80\x01\n\x11\x43loneSessionEntry\x12\x12\n\nsession_id\x18\x01 \x01(\r\x12 \n\x08replicas\x18\x02 \x03(\x0b\x32\x0e.p4.v1.Replica\x12\x18\n\x10\x63lass_of_service\x18\x03 \x01(\r\x12\x1b\n\x13packet_length_bytes\x18\x04 \x01(\x05\"2\n\x0eValueSetMember\x12 \n\x05match\x18\x01 \x03(\x0b\x32\x11.p4.v1.FieldMatch\"M\n\rValueSetEntry\x12\x14\n\x0cvalue_set_id\x18\x01 \x01(\r\x12&\n\x07members\x18\x02 \x03(\x0b\x32\x15.p4.v1.ValueSetMember\"^\n\rRegisterEntry\x12\x13\n\x0bregister_id\x18\x01 \x01(\r\x12\x1b\n\x05index\x18\x02 \x01(\x0b\x32\x0c.p4.v1.Index\x12\x1b\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\r.p4.v1.P4Data\"\x9c\x01\n\x0b\x44igestEntry\x12\x11\n\tdigest_id\x18\x01 \x01(\r\x12)\n\x06\x63onfig\x18\x02 \x01(\x0b\x32\x19.p4.v1.DigestEntry.Config\x1aO\n\x06\x43onfig\x12\x16\n\x0emax_timeout_ns\x18\x01 \x01(\x03\x12\x15\n\rmax_list_size\x18\x02 \x01(\x05\x12\x16\n\x0e\x61\x63k_timeout_ns\x18\x03 \x01(\x03\"\xce\x01\n\x14StreamMessageRequest\x12\x35\n\x0b\x61rbitration\x18\x01 \x01(\x0b\x32\x1e.p4.v1.MasterArbitrationUpdateH\x00\x12\"\n\x06packet\x18\x02 \x01(\x0b\x32\x10.p4.v1.PacketOutH\x00\x12*\n\ndigest_ack\x18\x03 \x01(\x0b\x32\x14.p4.v1.DigestListAckH\x00\x12%\n\x05other\x18\x04 \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x42\x08\n\x06update\"E\n\tPacketOut\x12\x0f\n\x07payload\x18\x01 \x01(\x0c\x12\'\n\x08metadata\x18\x02 \x03(\x0b\x32\x15.p4.v1.PacketMetadata\"3\n\rDigestListAck\x12\x11\n\tdigest_id\x18\x01 \x01(\r\x12\x0f\n\x07list_id\x18\x02 \x01(\x04\"\xb1\x02\n\x15StreamMessageResponse\x12\x35\n\x0b\x61rbitration\x18\x01 \x01(\x0b\x32\x1e.p4.v1.MasterArbitrationUpdateH\x00\x12!\n\x06packet\x18\x02 \x01(\x0b\x32\x0f.p4.v1.PacketInH\x00\x12#\n\x06\x64igest\x18\x03 \x01(\x0b\x32\x11.p4.v1.DigestListH\x00\x12\x43\n\x19idle_timeout_notification\x18\x04 \x01(\x0b\x32\x1e.p4.v1.IdleTimeoutNotificationH\x00\x12%\n\x05other\x18\x05 \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x12#\n\x05\x65rror\x18\x06 \x01(\x0b\x32\x12.p4.v1.StreamErrorH\x00\x42\x08\n\x06update\"D\n\x08PacketIn\x12\x0f\n\x07payload\x18\x01 \x01(\x0c\x12\'\n\x08metadata\x18\x02 \x03(\x0b\x32\x15.p4.v1.PacketMetadata\"`\n\nDigestList\x12\x11\n\tdigest_id\x18\x01 \x01(\r\x12\x0f\n\x07list_id\x18\x02 \x01(\x04\x12\x1b\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32\r.p4.v1.P4Data\x12\x11\n\ttimestamp\x18\x04 \x01(\x03\"4\n\x0ePacketMetadata\x12\x13\n\x0bmetadata_id\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x0c\"\x90\x01\n\x17MasterArbitrationUpdate\x12\x11\n\tdevice_id\x18\x01 \x01(\x04\x12\x19\n\x04role\x18\x02 \x01(\x0b\x32\x0b.p4.v1.Role\x12#\n\x0b\x65lection_id\x18\x03 \x01(\x0b\x32\x0e.p4.v1.Uint128\x12\"\n\x06status\x18\x04 \x01(\x0b\x32\x12.google.rpc.Status\"J\n\x04Role\x12\x0e\n\x02id\x18\x01 \x01(\x04\x42\x02\x18\x01\x12\x0c\n\x04name\x18\x03 \x01(\t\x12$\n\x06\x63onfig\x18\x02 \x01(\x0b\x32\x14.google.protobuf.Any\"T\n\x17IdleTimeoutNotification\x12&\n\x0btable_entry\x18\x01 \x03(\x0b\x32\x11.p4.v1.TableEntry\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\"\xeb\x01\n\x0bStreamError\x12\x16\n\x0e\x63\x61nonical_code\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\r\n\x05space\x18\x03 \x01(\t\x12\x0c\n\x04\x63ode\x18\x04 \x01(\x05\x12+\n\npacket_out\x18\x05 \x01(\x0b\x32\x15.p4.v1.PacketOutErrorH\x00\x12\x34\n\x0f\x64igest_list_ack\x18\x06 \x01(\x0b\x32\x19.p4.v1.DigestListAckErrorH\x00\x12(\n\x05other\x18\x07 \x01(\x0b\x32\x17.p4.v1.StreamOtherErrorH\x00\x42\t\n\x07\x64\x65tails\"6\n\x0ePacketOutError\x12$\n\npacket_out\x18\x01 \x01(\x0b\x32\x10.p4.v1.PacketOut\"C\n\x12\x44igestListAckError\x12-\n\x0f\x64igest_list_ack\x18\x01 \x01(\x0b\x32\x14.p4.v1.DigestListAck\"7\n\x10StreamOtherError\x12#\n\x05other\x18\x01 \x01(\x0b\x32\x14.google.protobuf.Any\"$\n\x07Uint128\x12\x0c\n\x04high\x18\x01 \x01(\x04\x12\x0b\n\x03low\x18\x02 \x01(\x04\"\xeb\x02\n\"SetForwardingPipelineConfigRequest\x12\x11\n\tdevice_id\x18\x01 \x01(\x04\x12\x13\n\x07role_id\x18\x02 \x01(\x04\x42\x02\x18\x01\x12\x0c\n\x04role\x18\x06 \x01(\t\x12#\n\x0b\x65lection_id\x18\x03 \x01(\x0b\x32\x0e.p4.v1.Uint128\x12@\n\x06\x61\x63tion\x18\x04 \x01(\x0e\x32\x30.p4.v1.SetForwardingPipelineConfigRequest.Action\x12/\n\x06\x63onfig\x18\x05 \x01(\x0b\x32\x1f.p4.v1.ForwardingPipelineConfig\"w\n\x06\x41\x63tion\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\n\n\x06VERIFY\x10\x01\x12\x13\n\x0fVERIFY_AND_SAVE\x10\x02\x12\x15\n\x11VERIFY_AND_COMMIT\x10\x03\x12\n\n\x06\x43OMMIT\x10\x04\x12\x18\n\x14RECONCILE_AND_COMMIT\x10\x05\"%\n#SetForwardingPipelineConfigResponse\"\xac\x01\n\x18\x46orwardingPipelineConfig\x12$\n\x06p4info\x18\x01 \x01(\x0b\x32\x14.p4.config.v1.P4Info\x12\x18\n\x10p4_device_config\x18\x02 \x01(\x0c\x12\x36\n\x06\x63ookie\x18\x03 \x01(\x0b\x32&.p4.v1.ForwardingPipelineConfig.Cookie\x1a\x18\n\x06\x43ookie\x12\x0e\n\x06\x63ookie\x18\x01 \x01(\x04\"\xe5\x01\n\"GetForwardingPipelineConfigRequest\x12\x11\n\tdevice_id\x18\x01 \x01(\x04\x12M\n\rresponse_type\x18\x02 \x01(\x0e\x32\x36.p4.v1.GetForwardingPipelineConfigRequest.ResponseType\"]\n\x0cResponseType\x12\x07\n\x03\x41LL\x10\x00\x12\x0f\n\x0b\x43OOKIE_ONLY\x10\x01\x12\x15\n\x11P4INFO_AND_COOKIE\x10\x02\x12\x1c\n\x18\x44\x45VICE_CONFIG_AND_COOKIE\x10\x03\"V\n#GetForwardingPipelineConfigResponse\x12/\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x1f.p4.v1.ForwardingPipelineConfig\"t\n\x05\x45rror\x12\x16\n\x0e\x63\x61nonical_code\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\r\n\x05space\x18\x03 \x01(\t\x12\x0c\n\x04\x63ode\x18\x04 \x01(\x05\x12%\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32\x14.google.protobuf.Any\"\x15\n\x13\x43\x61pabilitiesRequest\"5\n\x14\x43\x61pabilitiesResponse\x12\x1d\n\x15p4runtime_api_version\x18\x01 \x01(\t*\x8a\x01\n\x07SdnPort\x12\x14\n\x10SDN_PORT_UNKNOWN\x10\x00\x12\x10\n\x0cSDN_PORT_MIN\x10\x01\x12\x19\n\x0cSDN_PORT_MAX\x10\xff\xfd\xff\xff\xff\xff\xff\xff\xff\x01\x12!\n\x14SDN_PORT_RECIRCULATE\x10\xfa\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x19\n\x0cSDN_PORT_CPU\x10\xfd\xff\xff\xff\xff\xff\xff\xff\xff\x01\x32\x83\x04\n\tP4Runtime\x12\x34\n\x05Write\x12\x13.p4.v1.WriteRequest\x1a\x14.p4.v1.WriteResponse\"\x00\x12\x33\n\x04Read\x12\x12.p4.v1.ReadRequest\x1a\x13.p4.v1.ReadResponse\"\x00\x30\x01\x12v\n\x1bSetForwardingPipelineConfig\x12).p4.v1.SetForwardingPipelineConfigRequest\x1a*.p4.v1.SetForwardingPipelineConfigResponse\"\x00\x12v\n\x1bGetForwardingPipelineConfig\x12).p4.v1.GetForwardingPipelineConfigRequest\x1a*.p4.v1.GetForwardingPipelineConfigResponse\"\x00\x12P\n\rStreamChannel\x12\x1b.p4.v1.StreamMessageRequest\x1a\x1c.p4.v1.StreamMessageResponse\"\x00(\x01\x30\x01\x12I\n\x0c\x43\x61pabilities\x12\x1a.p4.v1.CapabilitiesRequest\x1a\x1b.p4.v1.CapabilitiesResponse\"\x00\x42)Z$github.com/p4lang/p4runtime/go/p4/v1\xf8\x01\x01\x62\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'p4.v1.p4runtime_pb2', _globals)
if not _descriptor._USE_C_DESCRIPTORS:
  _globals['DESCRIPTOR']._loaded_options = None
  _globals['DESCRIPTOR']._serialized_options = b'Z$github.com/p4lang/p4runtime/go/p4/v1\370\001\001'
  _globals['_WRITEREQUEST'].fields_by_name['role_id']._loaded_options = None
  _globals['_WRITEREQUEST'].fields_by_name['role_id']._serialized_options = b'\030\001'
  _globals['_TABLEENTRY'].fields_by_name['controller_metadata']._loaded_options = None
  _globals['_TABLEENTRY'].fields_by_name['controller_metadata']._serialized_options = b'\030\001'
  _globals['_ACTIONPROFILEACTION'].fields_by_name['watch']._loaded_options = None
  _globals['_ACTIONPROFILEACTION'].fields_by_name['watch']._serialized_options = b'\030\001'
  _globals['_ACTIONPROFILEGROUP_MEMBER'].fields_by_name['watch']._loaded_options = None
  _globals['_ACTIONPROFILEGROUP_MEMBER'].fields_by_name['watch']._serialized_options = b'\030\001'
  _globals['_REPLICA'].fields_by_name['egress_port']._loaded_options = None
  _globals['_REPLICA'].fields_by_name['egress_port']._serialized_options = b'\030\001'
  _globals['_ROLE'].fields_by_name['id']._loaded_options = None
  _globals['_ROLE'].fields_by_name['id']._serialized_options = b'\030\001'
  _globals['_SETFORWARDINGPIPELINECONFIGREQUEST'].fields_by_name['role_id']._loaded_options = None
  _globals['_SETFORWARDINGPIPELINECONFIGREQUEST'].fields_by_name['role_id']._serialized_options = b'\030\001'
  _globals['_SDNPORT']._serialized_start=7591
  _globals['_SDNPORT']._serialized_end=7729
  _globals['_WRITEREQUEST']._serialized_start=132
  _globals['_WRITEREQUEST']._serialized_end=400
  _globals['_WRITEREQUEST_ATOMICITY']._serialized_start=321
  _globals['_WRITEREQUEST_ATOMICITY']._serialized_end=400
  _globals['_WRITERESPONSE']._serialized_start=402
  _globals['_WRITERESPONSE']._serialized_end=417
  _globals['_READREQUEST']._serialized_start=419
  _globals['_READREQUEST']._serialized_end=498
  _globals['_READRESPONSE']._serialized_start=500
  _globals['_READRESPONSE']._serialized_end=547
  _globals['_UPDATE']._serialized_start=550
  _globals['_UPDATE']._serialized_end=684
  _globals['_UPDATE_TYPE']._serialized_start=625
  _globals['_UPDATE_TYPE']._serialized_end=684
  _globals['_ENTITY']._serialized_start=687
  _globals['_ENTITY']._serialized_end=1334
  _globals['_EXTERNENTRY']._serialized_start=1336
  _globals['_EXTERNENTRY']._serialized_end=1429
  _globals['_TABLEENTRY']._serialized_start=1432
  _globals['_TABLEENTRY']._serialized_end=1903
  _globals['_TABLEENTRY_IDLETIMEOUT']._serialized_start=1870
  _globals['_TABLEENTRY_IDLETIMEOUT']._serialized_end=1903
  _globals['_FIELDMATCH']._serialized_start=1906
  _globals['_FIELDMATCH']._serialized_end=2380
  _globals['_FIELDMATCH_EXACT']._serialized_start=2193
  _globals['_FIELDMATCH_EXACT']._serialized_end=2215
  _globals['_FIELDMATCH_TERNARY']._serialized_start=2217
  _globals['_FIELDMATCH_TERNARY']._serialized_end=2255
  _globals['_FIELDMATCH_LPM']._serialized_start=2257
  _globals['_FIELDMATCH_LPM']._serialized_end=2297
  _globals['_FIELDMATCH_RANGE']._serialized_start=2299
  _globals['_FIELDMATCH_RANGE']._serialized_end=2333
  _globals['_FIELDMATCH_OPTIONAL']._serialized_start=2335
  _globals['_FIELDMATCH_OPTIONAL']._serialized_end=2360
  _globals['_TABLEACTION']._serialized_start=2383
  _globals['_TABLEACTION']._serialized_end=2576
  _globals['_ACTION']._serialized_start=2578
  _globals['_ACTION']._serialized_end=2684
  _globals['_ACTION_PARAM']._serialized_start=2644
  _globals['_ACTION_PARAM']._serialized_end=2684
  _globals['_ACTIONPROFILEACTIONSET']._serialized_start=2686
  _globals['_ACTIONPROFILEACTIONSET']._serialized_end=2770
  _globals['_ACTIONPROFILEACTION']._serialized_start=2772
  _globals['_ACTIONPROFILEACTION']._serialized_end=2897
  _globals['_ACTIONPROFILEMEMBER']._serialized_start=2899
  _globals['_ACTIONPROFILEMEMBER']._serialized_end=2997
  _globals['_ACTIONPROFILEGROUP']._serialized_start=3000
  _globals['_ACTIONPROFILEGROUP']._serialized_end=3236
  _globals['_ACTIONPROFILEGROUP_MEMBER']._serialized_start=3136
  _globals['_ACTIONPROFILEGROUP_MEMBER']._serialized_end=3236
  _globals['_INDEX']._serialized_start=3238
  _globals['_INDEX']._serialized_end=3260
  _globals['_METERENTRY']._serialized_start=3263
  _globals['_METERENTRY']._serialized_end=3405
  _globals['_DIRECTMETERENTRY']._serialized_start=3408
  _globals['_DIRECTMETERENTRY']._serialized_end=3549
  _globals['_METERCONFIG']._serialized_start=3551
  _globals['_METERCONFIG']._serialized_end=3622
  _globals['_COUNTERENTRY']._serialized_start=3624
  _globals['_COUNTERENTRY']._serialized_end=3721
  _globals['_DIRECTCOUNTERENTRY']._serialized_start=3723
  _globals['_DIRECTCOUNTERENTRY']._serialized_end=3817
  _globals['_COUNTERDATA']._serialized_start=3819
  _globals['_COUNTERDATA']._serialized_end=3874
  _globals['_METERCOUNTERDATA']._serialized_start=3876
  _globals['_METERCOUNTERDATA']._serialized_end=3998
  _globals['_PACKETREPLICATIONENGINEENTRY']._serialized_start=4001
  _globals['_PACKETREPLICATIONENGINEENTRY']._serialized_end=4157
  _globals['_REPLICA']._serialized_start=4159
  _globals['_REPLICA']._serialized_end=4242
  _globals['_MULTICASTGROUPENTRY']._serialized_start=4244
  _globals['_MULTICASTGROUPENTRY']._serialized_end=4345
  _globals['_CLONESESSIONENTRY']._serialized_start=4348
  _globals['_CLONESESSIONENTRY']._serialized_end=4476
  _globals['_VALUESETMEMBER']._serialized_start=4478
  _globals['_VALUESETMEMBER']._serialized_end=4528
  _globals['_VALUESETENTRY']._serialized_start=4530
  _globals['_VALUESETENTRY']._serialized_end=4607
  _globals['_REGISTERENTRY']._serialized_start=4609
  _globals['_REGISTERENTRY']._serialized_end=4703
  _globals['_DIGESTENTRY']._serialized_start=4706
  _globals['_DIGESTENTRY']._serialized_end=4862
  _globals['_DIGESTENTRY_CONFIG']._serialized_start=4783
  _globals['_DIGESTENTRY_CONFIG']._serialized_end=4862
  _globals['_STREAMMESSAGEREQUEST']._serialized_start=4865
  _globals['_STREAMMESSAGEREQUEST']._serialized_end=5071
  _globals['_PACKETOUT']._serialized_start=5073
  _globals['_PACKETOUT']._serialized_end=5142
  _globals['_DIGESTLISTACK']._serialized_start=5144
  _globals['_DIGESTLISTACK']._serialized_end=5195
  _globals['_STREAMMESSAGERESPONSE']._serialized_start=5198
  _globals['_STREAMMESSAGERESPONSE']._serialized_end=5503
  _globals['_PACKETIN']._serialized_start=5505
  _globals['_PACKETIN']._serialized_end=5573
  _globals['_DIGESTLIST']._serialized_start=5575
  _globals['_DIGESTLIST']._serialized_end=5671
  _globals['_PACKETMETADATA']._serialized_start=5673
  _globals['_PACKETMETADATA']._serialized_end=5725
  _globals['_MASTERARBITRATIONUPDATE']._serialized_start=5728
  _globals['_MASTERARBITRATIONUPDATE']._serialized_end=5872
  _globals['_ROLE']._serialized_start=5874
  _globals['_ROLE']._serialized_end=5948
  _globals['_IDLETIMEOUTNOTIFICATION']._serialized_start=5950
  _globals['_IDLETIMEOUTNOTIFICATION']._serialized_end=6034
  _globals['_STREAMERROR']._serialized_start=6037
  _globals['_STREAMERROR']._serialized_end=6272
  _globals['_PACKETOUTERROR']._serialized_start=6274
  _globals['_PACKETOUTERROR']._serialized_end=6328
  _globals['_DIGESTLISTACKERROR']._serialized_start=6330
  _globals['_DIGESTLISTACKERROR']._serialized_end=6397
  _globals['_STREAMOTHERERROR']._serialized_start=6399
  _globals['_STREAMOTHERERROR']._serialized_end=6454
  _globals['_UINT128']._serialized_start=6456
  _globals['_UINT128']._serialized_end=6492
  _globals['_SETFORWARDINGPIPELINECONFIGREQUEST']._serialized_start=6495
  _globals['_SETFORWARDINGPIPELINECONFIGREQUEST']._serialized_end=6858
  _globals['_SETFORWARDINGPIPELINECONFIGREQUEST_ACTION']._serialized_start=6739
  _globals['_SETFORWARDINGPIPELINECONFIGREQUEST_ACTION']._serialized_end=6858
  _globals['_SETFORWARDINGPIPELINECONFIGRESPONSE']._serialized_start=6860
  _globals['_SETFORWARDINGPIPELINECONFIGRESPONSE']._serialized_end=6897
  _globals['_FORWARDINGPIPELINECONFIG']._serialized_start=6900
  _globals['_FORWARDINGPIPELINECONFIG']._serialized_end=7072
  _globals['_FORWARDINGPIPELINECONFIG_COOKIE']._serialized_start=7048
  _globals['_FORWARDINGPIPELINECONFIG_COOKIE']._serialized_end=7072
  _globals['_GETFORWARDINGPIPELINECONFIGREQUEST']._serialized_start=7075
  _globals['_GETFORWARDINGPIPELINECONFIGREQUEST']._serialized_end=7304
  _globals['_GETFORWARDINGPIPELINECONFIGREQUEST_RESPONSETYPE']._serialized_start=7211
  _globals['_GETFORWARDINGPIPELINECONFIGREQUEST_RESPONSETYPE']._serialized_end=7304
  _globals['_GETFORWARDINGPIPELINECONFIGRESPONSE']._serialized_start=7306
  _globals['_GETFORWARDINGPIPELINECONFIGRESPONSE']._serialized_end=7392
  _globals['_ERROR']._serialized_start=7394
  _globals['_ERROR']._serialized_end=7510
  _globals['_CAPABILITIESREQUEST']._serialized_start=7512
  _globals['_CAPABILITIESREQUEST']._serialized_end=7533
  _globals['_CAPABILITIESRESPONSE']._serialized_start=7535
  _globals['_CAPABILITIESRESPONSE']._serialized_end=7588
  _globals['_P4RUNTIME']._serialized_start=7732
  _globals['_P4RUNTIME']._serialized_end=8247
# @@protoc_insertion_point(module_scope)
