• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2018 Google Inc. All Rights Reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//   http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.27.1
18// 	protoc        v3.9.1
19// source: metrics.proto
20
21package metrics_proto
22
23import (
24	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
25	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
26	reflect "reflect"
27	sync "sync"
28)
29
30const (
31	// Verify that this generated code is sufficiently up-to-date.
32	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
33	// Verify that runtime/protoimpl is sufficiently up-to-date.
34	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
35)
36
37type MetricsBase_BuildVariant int32
38
39const (
40	MetricsBase_USER      MetricsBase_BuildVariant = 0
41	MetricsBase_USERDEBUG MetricsBase_BuildVariant = 1
42	MetricsBase_ENG       MetricsBase_BuildVariant = 2
43)
44
45// Enum value maps for MetricsBase_BuildVariant.
46var (
47	MetricsBase_BuildVariant_name = map[int32]string{
48		0: "USER",
49		1: "USERDEBUG",
50		2: "ENG",
51	}
52	MetricsBase_BuildVariant_value = map[string]int32{
53		"USER":      0,
54		"USERDEBUG": 1,
55		"ENG":       2,
56	}
57)
58
59func (x MetricsBase_BuildVariant) Enum() *MetricsBase_BuildVariant {
60	p := new(MetricsBase_BuildVariant)
61	*p = x
62	return p
63}
64
65func (x MetricsBase_BuildVariant) String() string {
66	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
67}
68
69func (MetricsBase_BuildVariant) Descriptor() protoreflect.EnumDescriptor {
70	return file_metrics_proto_enumTypes[0].Descriptor()
71}
72
73func (MetricsBase_BuildVariant) Type() protoreflect.EnumType {
74	return &file_metrics_proto_enumTypes[0]
75}
76
77func (x MetricsBase_BuildVariant) Number() protoreflect.EnumNumber {
78	return protoreflect.EnumNumber(x)
79}
80
81// Deprecated: Do not use.
82func (x *MetricsBase_BuildVariant) UnmarshalJSON(b []byte) error {
83	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
84	if err != nil {
85		return err
86	}
87	*x = MetricsBase_BuildVariant(num)
88	return nil
89}
90
91// Deprecated: Use MetricsBase_BuildVariant.Descriptor instead.
92func (MetricsBase_BuildVariant) EnumDescriptor() ([]byte, []int) {
93	return file_metrics_proto_rawDescGZIP(), []int{0, 0}
94}
95
96type MetricsBase_Arch int32
97
98const (
99	MetricsBase_UNKNOWN MetricsBase_Arch = 0
100	MetricsBase_ARM     MetricsBase_Arch = 1
101	MetricsBase_ARM64   MetricsBase_Arch = 2
102	MetricsBase_X86     MetricsBase_Arch = 3
103	MetricsBase_X86_64  MetricsBase_Arch = 4
104)
105
106// Enum value maps for MetricsBase_Arch.
107var (
108	MetricsBase_Arch_name = map[int32]string{
109		0: "UNKNOWN",
110		1: "ARM",
111		2: "ARM64",
112		3: "X86",
113		4: "X86_64",
114	}
115	MetricsBase_Arch_value = map[string]int32{
116		"UNKNOWN": 0,
117		"ARM":     1,
118		"ARM64":   2,
119		"X86":     3,
120		"X86_64":  4,
121	}
122)
123
124func (x MetricsBase_Arch) Enum() *MetricsBase_Arch {
125	p := new(MetricsBase_Arch)
126	*p = x
127	return p
128}
129
130func (x MetricsBase_Arch) String() string {
131	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
132}
133
134func (MetricsBase_Arch) Descriptor() protoreflect.EnumDescriptor {
135	return file_metrics_proto_enumTypes[1].Descriptor()
136}
137
138func (MetricsBase_Arch) Type() protoreflect.EnumType {
139	return &file_metrics_proto_enumTypes[1]
140}
141
142func (x MetricsBase_Arch) Number() protoreflect.EnumNumber {
143	return protoreflect.EnumNumber(x)
144}
145
146// Deprecated: Do not use.
147func (x *MetricsBase_Arch) UnmarshalJSON(b []byte) error {
148	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
149	if err != nil {
150		return err
151	}
152	*x = MetricsBase_Arch(num)
153	return nil
154}
155
156// Deprecated: Use MetricsBase_Arch.Descriptor instead.
157func (MetricsBase_Arch) EnumDescriptor() ([]byte, []int) {
158	return file_metrics_proto_rawDescGZIP(), []int{0, 1}
159}
160
161type ModuleTypeInfo_BuildSystem int32
162
163const (
164	ModuleTypeInfo_UNKNOWN ModuleTypeInfo_BuildSystem = 0
165	ModuleTypeInfo_SOONG   ModuleTypeInfo_BuildSystem = 1
166	ModuleTypeInfo_MAKE    ModuleTypeInfo_BuildSystem = 2
167)
168
169// Enum value maps for ModuleTypeInfo_BuildSystem.
170var (
171	ModuleTypeInfo_BuildSystem_name = map[int32]string{
172		0: "UNKNOWN",
173		1: "SOONG",
174		2: "MAKE",
175	}
176	ModuleTypeInfo_BuildSystem_value = map[string]int32{
177		"UNKNOWN": 0,
178		"SOONG":   1,
179		"MAKE":    2,
180	}
181)
182
183func (x ModuleTypeInfo_BuildSystem) Enum() *ModuleTypeInfo_BuildSystem {
184	p := new(ModuleTypeInfo_BuildSystem)
185	*p = x
186	return p
187}
188
189func (x ModuleTypeInfo_BuildSystem) String() string {
190	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
191}
192
193func (ModuleTypeInfo_BuildSystem) Descriptor() protoreflect.EnumDescriptor {
194	return file_metrics_proto_enumTypes[2].Descriptor()
195}
196
197func (ModuleTypeInfo_BuildSystem) Type() protoreflect.EnumType {
198	return &file_metrics_proto_enumTypes[2]
199}
200
201func (x ModuleTypeInfo_BuildSystem) Number() protoreflect.EnumNumber {
202	return protoreflect.EnumNumber(x)
203}
204
205// Deprecated: Do not use.
206func (x *ModuleTypeInfo_BuildSystem) UnmarshalJSON(b []byte) error {
207	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
208	if err != nil {
209		return err
210	}
211	*x = ModuleTypeInfo_BuildSystem(num)
212	return nil
213}
214
215// Deprecated: Use ModuleTypeInfo_BuildSystem.Descriptor instead.
216func (ModuleTypeInfo_BuildSystem) EnumDescriptor() ([]byte, []int) {
217	return file_metrics_proto_rawDescGZIP(), []int{5, 0}
218}
219
220type ExpConfigFetcher_ConfigStatus int32
221
222const (
223	ExpConfigFetcher_NO_CONFIG ExpConfigFetcher_ConfigStatus = 0
224	ExpConfigFetcher_CONFIG    ExpConfigFetcher_ConfigStatus = 1
225	ExpConfigFetcher_ERROR     ExpConfigFetcher_ConfigStatus = 2
226)
227
228// Enum value maps for ExpConfigFetcher_ConfigStatus.
229var (
230	ExpConfigFetcher_ConfigStatus_name = map[int32]string{
231		0: "NO_CONFIG",
232		1: "CONFIG",
233		2: "ERROR",
234	}
235	ExpConfigFetcher_ConfigStatus_value = map[string]int32{
236		"NO_CONFIG": 0,
237		"CONFIG":    1,
238		"ERROR":     2,
239	}
240)
241
242func (x ExpConfigFetcher_ConfigStatus) Enum() *ExpConfigFetcher_ConfigStatus {
243	p := new(ExpConfigFetcher_ConfigStatus)
244	*p = x
245	return p
246}
247
248func (x ExpConfigFetcher_ConfigStatus) String() string {
249	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
250}
251
252func (ExpConfigFetcher_ConfigStatus) Descriptor() protoreflect.EnumDescriptor {
253	return file_metrics_proto_enumTypes[3].Descriptor()
254}
255
256func (ExpConfigFetcher_ConfigStatus) Type() protoreflect.EnumType {
257	return &file_metrics_proto_enumTypes[3]
258}
259
260func (x ExpConfigFetcher_ConfigStatus) Number() protoreflect.EnumNumber {
261	return protoreflect.EnumNumber(x)
262}
263
264// Deprecated: Do not use.
265func (x *ExpConfigFetcher_ConfigStatus) UnmarshalJSON(b []byte) error {
266	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
267	if err != nil {
268		return err
269	}
270	*x = ExpConfigFetcher_ConfigStatus(num)
271	return nil
272}
273
274// Deprecated: Use ExpConfigFetcher_ConfigStatus.Descriptor instead.
275func (ExpConfigFetcher_ConfigStatus) EnumDescriptor() ([]byte, []int) {
276	return file_metrics_proto_rawDescGZIP(), []int{9, 0}
277}
278
279type MetricsBase struct {
280	state         protoimpl.MessageState
281	sizeCache     protoimpl.SizeCache
282	unknownFields protoimpl.UnknownFields
283
284	// Timestamp generated when the build starts.
285	BuildDateTimestamp *int64 `protobuf:"varint,1,opt,name=build_date_timestamp,json=buildDateTimestamp" json:"build_date_timestamp,omitempty"`
286	// It is usually used to specify the branch name [and release candidate].
287	BuildId *string `protobuf:"bytes,2,opt,name=build_id,json=buildId" json:"build_id,omitempty"`
288	// The platform version codename, eg. P, Q, REL.
289	PlatformVersionCodename *string `protobuf:"bytes,3,opt,name=platform_version_codename,json=platformVersionCodename" json:"platform_version_codename,omitempty"`
290	// The target product information, eg. aosp_arm.
291	TargetProduct *string `protobuf:"bytes,4,opt,name=target_product,json=targetProduct" json:"target_product,omitempty"`
292	// The target build variant information, eg. eng.
293	TargetBuildVariant *MetricsBase_BuildVariant `protobuf:"varint,5,opt,name=target_build_variant,json=targetBuildVariant,enum=soong_build_metrics.MetricsBase_BuildVariant,def=2" json:"target_build_variant,omitempty"`
294	// The target arch information, eg. arm.
295	TargetArch *MetricsBase_Arch `protobuf:"varint,6,opt,name=target_arch,json=targetArch,enum=soong_build_metrics.MetricsBase_Arch,def=0" json:"target_arch,omitempty"`
296	// The target arch variant information, eg. armv7-a-neon.
297	TargetArchVariant *string `protobuf:"bytes,7,opt,name=target_arch_variant,json=targetArchVariant" json:"target_arch_variant,omitempty"`
298	// The target cpu variant information, eg. generic.
299	TargetCpuVariant *string `protobuf:"bytes,8,opt,name=target_cpu_variant,json=targetCpuVariant" json:"target_cpu_variant,omitempty"`
300	// The host arch information, eg. x86_64.
301	HostArch *MetricsBase_Arch `protobuf:"varint,9,opt,name=host_arch,json=hostArch,enum=soong_build_metrics.MetricsBase_Arch,def=0" json:"host_arch,omitempty"`
302	// The host 2nd arch information, eg. x86.
303	Host_2NdArch *MetricsBase_Arch `protobuf:"varint,10,opt,name=host_2nd_arch,json=host2ndArch,enum=soong_build_metrics.MetricsBase_Arch,def=0" json:"host_2nd_arch,omitempty"`
304	// The host os information, eg. linux.
305	HostOs *string `protobuf:"bytes,11,opt,name=host_os,json=hostOs" json:"host_os,omitempty"`
306	// The host os extra information, eg. Linux-4.17.0-3rodete2-amd64-x86_64-Debian-GNU.
307	HostOsExtra *string `protobuf:"bytes,12,opt,name=host_os_extra,json=hostOsExtra" json:"host_os_extra,omitempty"`
308	// The host cross os information, eg. windows.
309	HostCrossOs *string `protobuf:"bytes,13,opt,name=host_cross_os,json=hostCrossOs" json:"host_cross_os,omitempty"`
310	// The host cross arch information, eg. x86.
311	HostCrossArch *string `protobuf:"bytes,14,opt,name=host_cross_arch,json=hostCrossArch" json:"host_cross_arch,omitempty"`
312	// The host cross 2nd arch information, eg. x86_64.
313	HostCross_2NdArch *string `protobuf:"bytes,15,opt,name=host_cross_2nd_arch,json=hostCross2ndArch" json:"host_cross_2nd_arch,omitempty"`
314	// The directory for generated built artifacts installation, eg. out.
315	OutDir *string `protobuf:"bytes,16,opt,name=out_dir,json=outDir" json:"out_dir,omitempty"`
316	// The metrics for calling various tools (microfactory) before Soong_UI starts.
317	SetupTools []*PerfInfo `protobuf:"bytes,17,rep,name=setup_tools,json=setupTools" json:"setup_tools,omitempty"`
318	// The metrics for calling Kati by multiple times.
319	KatiRuns []*PerfInfo `protobuf:"bytes,18,rep,name=kati_runs,json=katiRuns" json:"kati_runs,omitempty"`
320	// The metrics for calling Soong.
321	SoongRuns []*PerfInfo `protobuf:"bytes,19,rep,name=soong_runs,json=soongRuns" json:"soong_runs,omitempty"`
322	// The metrics for calling Ninja.
323	NinjaRuns []*PerfInfo `protobuf:"bytes,20,rep,name=ninja_runs,json=ninjaRuns" json:"ninja_runs,omitempty"`
324	// The metrics for the whole build
325	Total             *PerfInfo          `protobuf:"bytes,21,opt,name=total" json:"total,omitempty"`
326	SoongBuildMetrics *SoongBuildMetrics `protobuf:"bytes,22,opt,name=soong_build_metrics,json=soongBuildMetrics" json:"soong_build_metrics,omitempty"`
327	BuildConfig       *BuildConfig       `protobuf:"bytes,23,opt,name=build_config,json=buildConfig" json:"build_config,omitempty"`
328	// The hostname of the machine.
329	Hostname *string `protobuf:"bytes,24,opt,name=hostname" json:"hostname,omitempty"`
330	// The system resource information such as total physical memory.
331	SystemResourceInfo *SystemResourceInfo `protobuf:"bytes,25,opt,name=system_resource_info,json=systemResourceInfo" json:"system_resource_info,omitempty"`
332	// The build command that the user entered to the build system.
333	BuildCommand *string `protobuf:"bytes,26,opt,name=build_command,json=buildCommand" json:"build_command,omitempty"`
334	// The metrics for calling Bazel.
335	BazelRuns []*PerfInfo `protobuf:"bytes,27,rep,name=bazel_runs,json=bazelRuns" json:"bazel_runs,omitempty"`
336	// The metrics of the experiment config fetcher
337	ExpConfigFetcher *ExpConfigFetcher `protobuf:"bytes,28,opt,name=exp_config_fetcher,json=expConfigFetcher" json:"exp_config_fetcher,omitempty"`
338}
339
340// Default values for MetricsBase fields.
341const (
342	Default_MetricsBase_TargetBuildVariant = MetricsBase_ENG
343	Default_MetricsBase_TargetArch         = MetricsBase_UNKNOWN
344	Default_MetricsBase_HostArch           = MetricsBase_UNKNOWN
345	Default_MetricsBase_Host_2NdArch       = MetricsBase_UNKNOWN
346)
347
348func (x *MetricsBase) Reset() {
349	*x = MetricsBase{}
350	if protoimpl.UnsafeEnabled {
351		mi := &file_metrics_proto_msgTypes[0]
352		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
353		ms.StoreMessageInfo(mi)
354	}
355}
356
357func (x *MetricsBase) String() string {
358	return protoimpl.X.MessageStringOf(x)
359}
360
361func (*MetricsBase) ProtoMessage() {}
362
363func (x *MetricsBase) ProtoReflect() protoreflect.Message {
364	mi := &file_metrics_proto_msgTypes[0]
365	if protoimpl.UnsafeEnabled && x != nil {
366		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
367		if ms.LoadMessageInfo() == nil {
368			ms.StoreMessageInfo(mi)
369		}
370		return ms
371	}
372	return mi.MessageOf(x)
373}
374
375// Deprecated: Use MetricsBase.ProtoReflect.Descriptor instead.
376func (*MetricsBase) Descriptor() ([]byte, []int) {
377	return file_metrics_proto_rawDescGZIP(), []int{0}
378}
379
380func (x *MetricsBase) GetBuildDateTimestamp() int64 {
381	if x != nil && x.BuildDateTimestamp != nil {
382		return *x.BuildDateTimestamp
383	}
384	return 0
385}
386
387func (x *MetricsBase) GetBuildId() string {
388	if x != nil && x.BuildId != nil {
389		return *x.BuildId
390	}
391	return ""
392}
393
394func (x *MetricsBase) GetPlatformVersionCodename() string {
395	if x != nil && x.PlatformVersionCodename != nil {
396		return *x.PlatformVersionCodename
397	}
398	return ""
399}
400
401func (x *MetricsBase) GetTargetProduct() string {
402	if x != nil && x.TargetProduct != nil {
403		return *x.TargetProduct
404	}
405	return ""
406}
407
408func (x *MetricsBase) GetTargetBuildVariant() MetricsBase_BuildVariant {
409	if x != nil && x.TargetBuildVariant != nil {
410		return *x.TargetBuildVariant
411	}
412	return Default_MetricsBase_TargetBuildVariant
413}
414
415func (x *MetricsBase) GetTargetArch() MetricsBase_Arch {
416	if x != nil && x.TargetArch != nil {
417		return *x.TargetArch
418	}
419	return Default_MetricsBase_TargetArch
420}
421
422func (x *MetricsBase) GetTargetArchVariant() string {
423	if x != nil && x.TargetArchVariant != nil {
424		return *x.TargetArchVariant
425	}
426	return ""
427}
428
429func (x *MetricsBase) GetTargetCpuVariant() string {
430	if x != nil && x.TargetCpuVariant != nil {
431		return *x.TargetCpuVariant
432	}
433	return ""
434}
435
436func (x *MetricsBase) GetHostArch() MetricsBase_Arch {
437	if x != nil && x.HostArch != nil {
438		return *x.HostArch
439	}
440	return Default_MetricsBase_HostArch
441}
442
443func (x *MetricsBase) GetHost_2NdArch() MetricsBase_Arch {
444	if x != nil && x.Host_2NdArch != nil {
445		return *x.Host_2NdArch
446	}
447	return Default_MetricsBase_Host_2NdArch
448}
449
450func (x *MetricsBase) GetHostOs() string {
451	if x != nil && x.HostOs != nil {
452		return *x.HostOs
453	}
454	return ""
455}
456
457func (x *MetricsBase) GetHostOsExtra() string {
458	if x != nil && x.HostOsExtra != nil {
459		return *x.HostOsExtra
460	}
461	return ""
462}
463
464func (x *MetricsBase) GetHostCrossOs() string {
465	if x != nil && x.HostCrossOs != nil {
466		return *x.HostCrossOs
467	}
468	return ""
469}
470
471func (x *MetricsBase) GetHostCrossArch() string {
472	if x != nil && x.HostCrossArch != nil {
473		return *x.HostCrossArch
474	}
475	return ""
476}
477
478func (x *MetricsBase) GetHostCross_2NdArch() string {
479	if x != nil && x.HostCross_2NdArch != nil {
480		return *x.HostCross_2NdArch
481	}
482	return ""
483}
484
485func (x *MetricsBase) GetOutDir() string {
486	if x != nil && x.OutDir != nil {
487		return *x.OutDir
488	}
489	return ""
490}
491
492func (x *MetricsBase) GetSetupTools() []*PerfInfo {
493	if x != nil {
494		return x.SetupTools
495	}
496	return nil
497}
498
499func (x *MetricsBase) GetKatiRuns() []*PerfInfo {
500	if x != nil {
501		return x.KatiRuns
502	}
503	return nil
504}
505
506func (x *MetricsBase) GetSoongRuns() []*PerfInfo {
507	if x != nil {
508		return x.SoongRuns
509	}
510	return nil
511}
512
513func (x *MetricsBase) GetNinjaRuns() []*PerfInfo {
514	if x != nil {
515		return x.NinjaRuns
516	}
517	return nil
518}
519
520func (x *MetricsBase) GetTotal() *PerfInfo {
521	if x != nil {
522		return x.Total
523	}
524	return nil
525}
526
527func (x *MetricsBase) GetSoongBuildMetrics() *SoongBuildMetrics {
528	if x != nil {
529		return x.SoongBuildMetrics
530	}
531	return nil
532}
533
534func (x *MetricsBase) GetBuildConfig() *BuildConfig {
535	if x != nil {
536		return x.BuildConfig
537	}
538	return nil
539}
540
541func (x *MetricsBase) GetHostname() string {
542	if x != nil && x.Hostname != nil {
543		return *x.Hostname
544	}
545	return ""
546}
547
548func (x *MetricsBase) GetSystemResourceInfo() *SystemResourceInfo {
549	if x != nil {
550		return x.SystemResourceInfo
551	}
552	return nil
553}
554
555func (x *MetricsBase) GetBuildCommand() string {
556	if x != nil && x.BuildCommand != nil {
557		return *x.BuildCommand
558	}
559	return ""
560}
561
562func (x *MetricsBase) GetBazelRuns() []*PerfInfo {
563	if x != nil {
564		return x.BazelRuns
565	}
566	return nil
567}
568
569func (x *MetricsBase) GetExpConfigFetcher() *ExpConfigFetcher {
570	if x != nil {
571		return x.ExpConfigFetcher
572	}
573	return nil
574}
575
576type BuildConfig struct {
577	state         protoimpl.MessageState
578	sizeCache     protoimpl.SizeCache
579	unknownFields protoimpl.UnknownFields
580
581	UseGoma      *bool `protobuf:"varint,1,opt,name=use_goma,json=useGoma" json:"use_goma,omitempty"`
582	UseRbe       *bool `protobuf:"varint,2,opt,name=use_rbe,json=useRbe" json:"use_rbe,omitempty"`
583	ForceUseGoma *bool `protobuf:"varint,3,opt,name=force_use_goma,json=forceUseGoma" json:"force_use_goma,omitempty"`
584	// Whether the Bazel is acting as the Ninja executor for this build.
585	BazelAsNinja *bool `protobuf:"varint,4,opt,name=bazel_as_ninja,json=bazelAsNinja" json:"bazel_as_ninja,omitempty"`
586	// Whether build is occurring in a mixed build mode, where Bazel maintains the
587	// definition and build of some modules in cooperation with Soong.
588	BazelMixedBuild *bool `protobuf:"varint,5,opt,name=bazel_mixed_build,json=bazelMixedBuild" json:"bazel_mixed_build,omitempty"`
589	// These are the targets soong passes to ninja, these targets include special
590	// targets such as droid as well as the regular build targets.
591	Targets []string `protobuf:"bytes,6,rep,name=targets" json:"targets,omitempty"`
592}
593
594func (x *BuildConfig) Reset() {
595	*x = BuildConfig{}
596	if protoimpl.UnsafeEnabled {
597		mi := &file_metrics_proto_msgTypes[1]
598		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
599		ms.StoreMessageInfo(mi)
600	}
601}
602
603func (x *BuildConfig) String() string {
604	return protoimpl.X.MessageStringOf(x)
605}
606
607func (*BuildConfig) ProtoMessage() {}
608
609func (x *BuildConfig) ProtoReflect() protoreflect.Message {
610	mi := &file_metrics_proto_msgTypes[1]
611	if protoimpl.UnsafeEnabled && x != nil {
612		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
613		if ms.LoadMessageInfo() == nil {
614			ms.StoreMessageInfo(mi)
615		}
616		return ms
617	}
618	return mi.MessageOf(x)
619}
620
621// Deprecated: Use BuildConfig.ProtoReflect.Descriptor instead.
622func (*BuildConfig) Descriptor() ([]byte, []int) {
623	return file_metrics_proto_rawDescGZIP(), []int{1}
624}
625
626func (x *BuildConfig) GetUseGoma() bool {
627	if x != nil && x.UseGoma != nil {
628		return *x.UseGoma
629	}
630	return false
631}
632
633func (x *BuildConfig) GetUseRbe() bool {
634	if x != nil && x.UseRbe != nil {
635		return *x.UseRbe
636	}
637	return false
638}
639
640func (x *BuildConfig) GetForceUseGoma() bool {
641	if x != nil && x.ForceUseGoma != nil {
642		return *x.ForceUseGoma
643	}
644	return false
645}
646
647func (x *BuildConfig) GetBazelAsNinja() bool {
648	if x != nil && x.BazelAsNinja != nil {
649		return *x.BazelAsNinja
650	}
651	return false
652}
653
654func (x *BuildConfig) GetBazelMixedBuild() bool {
655	if x != nil && x.BazelMixedBuild != nil {
656		return *x.BazelMixedBuild
657	}
658	return false
659}
660
661func (x *BuildConfig) GetTargets() []string {
662	if x != nil {
663		return x.Targets
664	}
665	return nil
666}
667
668type SystemResourceInfo struct {
669	state         protoimpl.MessageState
670	sizeCache     protoimpl.SizeCache
671	unknownFields protoimpl.UnknownFields
672
673	// The total physical memory in bytes.
674	TotalPhysicalMemory *uint64 `protobuf:"varint,1,opt,name=total_physical_memory,json=totalPhysicalMemory" json:"total_physical_memory,omitempty"`
675	// The total of available cores for building
676	AvailableCpus *int32 `protobuf:"varint,2,opt,name=available_cpus,json=availableCpus" json:"available_cpus,omitempty"`
677}
678
679func (x *SystemResourceInfo) Reset() {
680	*x = SystemResourceInfo{}
681	if protoimpl.UnsafeEnabled {
682		mi := &file_metrics_proto_msgTypes[2]
683		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
684		ms.StoreMessageInfo(mi)
685	}
686}
687
688func (x *SystemResourceInfo) String() string {
689	return protoimpl.X.MessageStringOf(x)
690}
691
692func (*SystemResourceInfo) ProtoMessage() {}
693
694func (x *SystemResourceInfo) ProtoReflect() protoreflect.Message {
695	mi := &file_metrics_proto_msgTypes[2]
696	if protoimpl.UnsafeEnabled && x != nil {
697		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
698		if ms.LoadMessageInfo() == nil {
699			ms.StoreMessageInfo(mi)
700		}
701		return ms
702	}
703	return mi.MessageOf(x)
704}
705
706// Deprecated: Use SystemResourceInfo.ProtoReflect.Descriptor instead.
707func (*SystemResourceInfo) Descriptor() ([]byte, []int) {
708	return file_metrics_proto_rawDescGZIP(), []int{2}
709}
710
711func (x *SystemResourceInfo) GetTotalPhysicalMemory() uint64 {
712	if x != nil && x.TotalPhysicalMemory != nil {
713		return *x.TotalPhysicalMemory
714	}
715	return 0
716}
717
718func (x *SystemResourceInfo) GetAvailableCpus() int32 {
719	if x != nil && x.AvailableCpus != nil {
720		return *x.AvailableCpus
721	}
722	return 0
723}
724
725type PerfInfo struct {
726	state         protoimpl.MessageState
727	sizeCache     protoimpl.SizeCache
728	unknownFields protoimpl.UnknownFields
729
730	// The description for the phase/action/part while the tool running.
731	Description *string `protobuf:"bytes,1,opt,name=description" json:"description,omitempty"`
732	// The name for the running phase/action/part.
733	Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
734	// The absolute start time.
735	// The number of nanoseconds elapsed since January 1, 1970 UTC.
736	StartTime *uint64 `protobuf:"varint,3,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
737	// The real running time.
738	// The number of nanoseconds elapsed since start_time.
739	RealTime *uint64 `protobuf:"varint,4,opt,name=real_time,json=realTime" json:"real_time,omitempty"`
740	// The number of MB for memory use (deprecated as it is too generic).
741	//
742	// Deprecated: Do not use.
743	MemoryUse *uint64 `protobuf:"varint,5,opt,name=memory_use,json=memoryUse" json:"memory_use,omitempty"`
744	// The resource information of each executed process.
745	ProcessesResourceInfo []*ProcessResourceInfo `protobuf:"bytes,6,rep,name=processes_resource_info,json=processesResourceInfo" json:"processes_resource_info,omitempty"`
746}
747
748func (x *PerfInfo) Reset() {
749	*x = PerfInfo{}
750	if protoimpl.UnsafeEnabled {
751		mi := &file_metrics_proto_msgTypes[3]
752		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
753		ms.StoreMessageInfo(mi)
754	}
755}
756
757func (x *PerfInfo) String() string {
758	return protoimpl.X.MessageStringOf(x)
759}
760
761func (*PerfInfo) ProtoMessage() {}
762
763func (x *PerfInfo) ProtoReflect() protoreflect.Message {
764	mi := &file_metrics_proto_msgTypes[3]
765	if protoimpl.UnsafeEnabled && x != nil {
766		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
767		if ms.LoadMessageInfo() == nil {
768			ms.StoreMessageInfo(mi)
769		}
770		return ms
771	}
772	return mi.MessageOf(x)
773}
774
775// Deprecated: Use PerfInfo.ProtoReflect.Descriptor instead.
776func (*PerfInfo) Descriptor() ([]byte, []int) {
777	return file_metrics_proto_rawDescGZIP(), []int{3}
778}
779
780func (x *PerfInfo) GetDescription() string {
781	if x != nil && x.Description != nil {
782		return *x.Description
783	}
784	return ""
785}
786
787func (x *PerfInfo) GetName() string {
788	if x != nil && x.Name != nil {
789		return *x.Name
790	}
791	return ""
792}
793
794func (x *PerfInfo) GetStartTime() uint64 {
795	if x != nil && x.StartTime != nil {
796		return *x.StartTime
797	}
798	return 0
799}
800
801func (x *PerfInfo) GetRealTime() uint64 {
802	if x != nil && x.RealTime != nil {
803		return *x.RealTime
804	}
805	return 0
806}
807
808// Deprecated: Do not use.
809func (x *PerfInfo) GetMemoryUse() uint64 {
810	if x != nil && x.MemoryUse != nil {
811		return *x.MemoryUse
812	}
813	return 0
814}
815
816func (x *PerfInfo) GetProcessesResourceInfo() []*ProcessResourceInfo {
817	if x != nil {
818		return x.ProcessesResourceInfo
819	}
820	return nil
821}
822
823type ProcessResourceInfo struct {
824	state         protoimpl.MessageState
825	sizeCache     protoimpl.SizeCache
826	unknownFields protoimpl.UnknownFields
827
828	// The name of the process for identification.
829	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
830	// The amount of time spent executing in user space in microseconds.
831	UserTimeMicros *uint64 `protobuf:"varint,2,opt,name=user_time_micros,json=userTimeMicros" json:"user_time_micros,omitempty"`
832	// The amount of time spent executing in kernel mode in microseconds.
833	SystemTimeMicros *uint64 `protobuf:"varint,3,opt,name=system_time_micros,json=systemTimeMicros" json:"system_time_micros,omitempty"`
834	// The maximum resident set size memory used in kilobytes.
835	MaxRssKb *uint64 `protobuf:"varint,4,opt,name=max_rss_kb,json=maxRssKb" json:"max_rss_kb,omitempty"`
836	// The number of minor page faults serviced without any I/O activity.
837	MinorPageFaults *uint64 `protobuf:"varint,5,opt,name=minor_page_faults,json=minorPageFaults" json:"minor_page_faults,omitempty"`
838	// The number of major page faults serviced that required I/O activity.
839	MajorPageFaults *uint64 `protobuf:"varint,6,opt,name=major_page_faults,json=majorPageFaults" json:"major_page_faults,omitempty"`
840	// Total IO input in kilobytes.
841	IoInputKb *uint64 `protobuf:"varint,7,opt,name=io_input_kb,json=ioInputKb" json:"io_input_kb,omitempty"`
842	// Total IO output in kilobytes.
843	IoOutputKb *uint64 `protobuf:"varint,8,opt,name=io_output_kb,json=ioOutputKb" json:"io_output_kb,omitempty"`
844	// The number of voluntary context switches
845	VoluntaryContextSwitches *uint64 `protobuf:"varint,9,opt,name=voluntary_context_switches,json=voluntaryContextSwitches" json:"voluntary_context_switches,omitempty"`
846	// The number of involuntary context switches
847	InvoluntaryContextSwitches *uint64 `protobuf:"varint,10,opt,name=involuntary_context_switches,json=involuntaryContextSwitches" json:"involuntary_context_switches,omitempty"`
848}
849
850func (x *ProcessResourceInfo) Reset() {
851	*x = ProcessResourceInfo{}
852	if protoimpl.UnsafeEnabled {
853		mi := &file_metrics_proto_msgTypes[4]
854		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
855		ms.StoreMessageInfo(mi)
856	}
857}
858
859func (x *ProcessResourceInfo) String() string {
860	return protoimpl.X.MessageStringOf(x)
861}
862
863func (*ProcessResourceInfo) ProtoMessage() {}
864
865func (x *ProcessResourceInfo) ProtoReflect() protoreflect.Message {
866	mi := &file_metrics_proto_msgTypes[4]
867	if protoimpl.UnsafeEnabled && x != nil {
868		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
869		if ms.LoadMessageInfo() == nil {
870			ms.StoreMessageInfo(mi)
871		}
872		return ms
873	}
874	return mi.MessageOf(x)
875}
876
877// Deprecated: Use ProcessResourceInfo.ProtoReflect.Descriptor instead.
878func (*ProcessResourceInfo) Descriptor() ([]byte, []int) {
879	return file_metrics_proto_rawDescGZIP(), []int{4}
880}
881
882func (x *ProcessResourceInfo) GetName() string {
883	if x != nil && x.Name != nil {
884		return *x.Name
885	}
886	return ""
887}
888
889func (x *ProcessResourceInfo) GetUserTimeMicros() uint64 {
890	if x != nil && x.UserTimeMicros != nil {
891		return *x.UserTimeMicros
892	}
893	return 0
894}
895
896func (x *ProcessResourceInfo) GetSystemTimeMicros() uint64 {
897	if x != nil && x.SystemTimeMicros != nil {
898		return *x.SystemTimeMicros
899	}
900	return 0
901}
902
903func (x *ProcessResourceInfo) GetMaxRssKb() uint64 {
904	if x != nil && x.MaxRssKb != nil {
905		return *x.MaxRssKb
906	}
907	return 0
908}
909
910func (x *ProcessResourceInfo) GetMinorPageFaults() uint64 {
911	if x != nil && x.MinorPageFaults != nil {
912		return *x.MinorPageFaults
913	}
914	return 0
915}
916
917func (x *ProcessResourceInfo) GetMajorPageFaults() uint64 {
918	if x != nil && x.MajorPageFaults != nil {
919		return *x.MajorPageFaults
920	}
921	return 0
922}
923
924func (x *ProcessResourceInfo) GetIoInputKb() uint64 {
925	if x != nil && x.IoInputKb != nil {
926		return *x.IoInputKb
927	}
928	return 0
929}
930
931func (x *ProcessResourceInfo) GetIoOutputKb() uint64 {
932	if x != nil && x.IoOutputKb != nil {
933		return *x.IoOutputKb
934	}
935	return 0
936}
937
938func (x *ProcessResourceInfo) GetVoluntaryContextSwitches() uint64 {
939	if x != nil && x.VoluntaryContextSwitches != nil {
940		return *x.VoluntaryContextSwitches
941	}
942	return 0
943}
944
945func (x *ProcessResourceInfo) GetInvoluntaryContextSwitches() uint64 {
946	if x != nil && x.InvoluntaryContextSwitches != nil {
947		return *x.InvoluntaryContextSwitches
948	}
949	return 0
950}
951
952type ModuleTypeInfo struct {
953	state         protoimpl.MessageState
954	sizeCache     protoimpl.SizeCache
955	unknownFields protoimpl.UnknownFields
956
957	// The build system, eg. Soong or Make.
958	BuildSystem *ModuleTypeInfo_BuildSystem `protobuf:"varint,1,opt,name=build_system,json=buildSystem,enum=soong_build_metrics.ModuleTypeInfo_BuildSystem,def=0" json:"build_system,omitempty"`
959	// The module type, eg. java_library, cc_binary, and etc.
960	ModuleType *string `protobuf:"bytes,2,opt,name=module_type,json=moduleType" json:"module_type,omitempty"`
961	// The number of logical modules.
962	NumOfModules *uint32 `protobuf:"varint,3,opt,name=num_of_modules,json=numOfModules" json:"num_of_modules,omitempty"`
963}
964
965// Default values for ModuleTypeInfo fields.
966const (
967	Default_ModuleTypeInfo_BuildSystem = ModuleTypeInfo_UNKNOWN
968)
969
970func (x *ModuleTypeInfo) Reset() {
971	*x = ModuleTypeInfo{}
972	if protoimpl.UnsafeEnabled {
973		mi := &file_metrics_proto_msgTypes[5]
974		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
975		ms.StoreMessageInfo(mi)
976	}
977}
978
979func (x *ModuleTypeInfo) String() string {
980	return protoimpl.X.MessageStringOf(x)
981}
982
983func (*ModuleTypeInfo) ProtoMessage() {}
984
985func (x *ModuleTypeInfo) ProtoReflect() protoreflect.Message {
986	mi := &file_metrics_proto_msgTypes[5]
987	if protoimpl.UnsafeEnabled && x != nil {
988		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
989		if ms.LoadMessageInfo() == nil {
990			ms.StoreMessageInfo(mi)
991		}
992		return ms
993	}
994	return mi.MessageOf(x)
995}
996
997// Deprecated: Use ModuleTypeInfo.ProtoReflect.Descriptor instead.
998func (*ModuleTypeInfo) Descriptor() ([]byte, []int) {
999	return file_metrics_proto_rawDescGZIP(), []int{5}
1000}
1001
1002func (x *ModuleTypeInfo) GetBuildSystem() ModuleTypeInfo_BuildSystem {
1003	if x != nil && x.BuildSystem != nil {
1004		return *x.BuildSystem
1005	}
1006	return Default_ModuleTypeInfo_BuildSystem
1007}
1008
1009func (x *ModuleTypeInfo) GetModuleType() string {
1010	if x != nil && x.ModuleType != nil {
1011		return *x.ModuleType
1012	}
1013	return ""
1014}
1015
1016func (x *ModuleTypeInfo) GetNumOfModules() uint32 {
1017	if x != nil && x.NumOfModules != nil {
1018		return *x.NumOfModules
1019	}
1020	return 0
1021}
1022
1023type CriticalUserJourneyMetrics struct {
1024	state         protoimpl.MessageState
1025	sizeCache     protoimpl.SizeCache
1026	unknownFields protoimpl.UnknownFields
1027
1028	// The name of a critical user journey test.
1029	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
1030	// The metrics produced when running the critical user journey test.
1031	Metrics *MetricsBase `protobuf:"bytes,2,opt,name=metrics" json:"metrics,omitempty"`
1032}
1033
1034func (x *CriticalUserJourneyMetrics) Reset() {
1035	*x = CriticalUserJourneyMetrics{}
1036	if protoimpl.UnsafeEnabled {
1037		mi := &file_metrics_proto_msgTypes[6]
1038		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1039		ms.StoreMessageInfo(mi)
1040	}
1041}
1042
1043func (x *CriticalUserJourneyMetrics) String() string {
1044	return protoimpl.X.MessageStringOf(x)
1045}
1046
1047func (*CriticalUserJourneyMetrics) ProtoMessage() {}
1048
1049func (x *CriticalUserJourneyMetrics) ProtoReflect() protoreflect.Message {
1050	mi := &file_metrics_proto_msgTypes[6]
1051	if protoimpl.UnsafeEnabled && x != nil {
1052		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1053		if ms.LoadMessageInfo() == nil {
1054			ms.StoreMessageInfo(mi)
1055		}
1056		return ms
1057	}
1058	return mi.MessageOf(x)
1059}
1060
1061// Deprecated: Use CriticalUserJourneyMetrics.ProtoReflect.Descriptor instead.
1062func (*CriticalUserJourneyMetrics) Descriptor() ([]byte, []int) {
1063	return file_metrics_proto_rawDescGZIP(), []int{6}
1064}
1065
1066func (x *CriticalUserJourneyMetrics) GetName() string {
1067	if x != nil && x.Name != nil {
1068		return *x.Name
1069	}
1070	return ""
1071}
1072
1073func (x *CriticalUserJourneyMetrics) GetMetrics() *MetricsBase {
1074	if x != nil {
1075		return x.Metrics
1076	}
1077	return nil
1078}
1079
1080type CriticalUserJourneysMetrics struct {
1081	state         protoimpl.MessageState
1082	sizeCache     protoimpl.SizeCache
1083	unknownFields protoimpl.UnknownFields
1084
1085	// A set of metrics from a run of the critical user journey tests.
1086	Cujs []*CriticalUserJourneyMetrics `protobuf:"bytes,1,rep,name=cujs" json:"cujs,omitempty"`
1087}
1088
1089func (x *CriticalUserJourneysMetrics) Reset() {
1090	*x = CriticalUserJourneysMetrics{}
1091	if protoimpl.UnsafeEnabled {
1092		mi := &file_metrics_proto_msgTypes[7]
1093		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1094		ms.StoreMessageInfo(mi)
1095	}
1096}
1097
1098func (x *CriticalUserJourneysMetrics) String() string {
1099	return protoimpl.X.MessageStringOf(x)
1100}
1101
1102func (*CriticalUserJourneysMetrics) ProtoMessage() {}
1103
1104func (x *CriticalUserJourneysMetrics) ProtoReflect() protoreflect.Message {
1105	mi := &file_metrics_proto_msgTypes[7]
1106	if protoimpl.UnsafeEnabled && x != nil {
1107		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1108		if ms.LoadMessageInfo() == nil {
1109			ms.StoreMessageInfo(mi)
1110		}
1111		return ms
1112	}
1113	return mi.MessageOf(x)
1114}
1115
1116// Deprecated: Use CriticalUserJourneysMetrics.ProtoReflect.Descriptor instead.
1117func (*CriticalUserJourneysMetrics) Descriptor() ([]byte, []int) {
1118	return file_metrics_proto_rawDescGZIP(), []int{7}
1119}
1120
1121func (x *CriticalUserJourneysMetrics) GetCujs() []*CriticalUserJourneyMetrics {
1122	if x != nil {
1123		return x.Cujs
1124	}
1125	return nil
1126}
1127
1128type SoongBuildMetrics struct {
1129	state         protoimpl.MessageState
1130	sizeCache     protoimpl.SizeCache
1131	unknownFields protoimpl.UnknownFields
1132
1133	// The number of modules handled by soong_build.
1134	Modules *uint32 `protobuf:"varint,1,opt,name=modules" json:"modules,omitempty"`
1135	// The total number of variants handled by soong_build.
1136	Variants *uint32 `protobuf:"varint,2,opt,name=variants" json:"variants,omitempty"`
1137	// The total number of allocations in soong_build.
1138	TotalAllocCount *uint64 `protobuf:"varint,3,opt,name=total_alloc_count,json=totalAllocCount" json:"total_alloc_count,omitempty"`
1139	// The total size of allocations in soong_build in bytes.
1140	TotalAllocSize *uint64 `protobuf:"varint,4,opt,name=total_alloc_size,json=totalAllocSize" json:"total_alloc_size,omitempty"`
1141	// The approximate maximum size of the heap in soong_build in bytes.
1142	MaxHeapSize *uint64 `protobuf:"varint,5,opt,name=max_heap_size,json=maxHeapSize" json:"max_heap_size,omitempty"`
1143	// Runtime metrics for soong_build execution.
1144	Events []*PerfInfo `protobuf:"bytes,6,rep,name=events" json:"events,omitempty"`
1145}
1146
1147func (x *SoongBuildMetrics) Reset() {
1148	*x = SoongBuildMetrics{}
1149	if protoimpl.UnsafeEnabled {
1150		mi := &file_metrics_proto_msgTypes[8]
1151		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1152		ms.StoreMessageInfo(mi)
1153	}
1154}
1155
1156func (x *SoongBuildMetrics) String() string {
1157	return protoimpl.X.MessageStringOf(x)
1158}
1159
1160func (*SoongBuildMetrics) ProtoMessage() {}
1161
1162func (x *SoongBuildMetrics) ProtoReflect() protoreflect.Message {
1163	mi := &file_metrics_proto_msgTypes[8]
1164	if protoimpl.UnsafeEnabled && x != nil {
1165		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1166		if ms.LoadMessageInfo() == nil {
1167			ms.StoreMessageInfo(mi)
1168		}
1169		return ms
1170	}
1171	return mi.MessageOf(x)
1172}
1173
1174// Deprecated: Use SoongBuildMetrics.ProtoReflect.Descriptor instead.
1175func (*SoongBuildMetrics) Descriptor() ([]byte, []int) {
1176	return file_metrics_proto_rawDescGZIP(), []int{8}
1177}
1178
1179func (x *SoongBuildMetrics) GetModules() uint32 {
1180	if x != nil && x.Modules != nil {
1181		return *x.Modules
1182	}
1183	return 0
1184}
1185
1186func (x *SoongBuildMetrics) GetVariants() uint32 {
1187	if x != nil && x.Variants != nil {
1188		return *x.Variants
1189	}
1190	return 0
1191}
1192
1193func (x *SoongBuildMetrics) GetTotalAllocCount() uint64 {
1194	if x != nil && x.TotalAllocCount != nil {
1195		return *x.TotalAllocCount
1196	}
1197	return 0
1198}
1199
1200func (x *SoongBuildMetrics) GetTotalAllocSize() uint64 {
1201	if x != nil && x.TotalAllocSize != nil {
1202		return *x.TotalAllocSize
1203	}
1204	return 0
1205}
1206
1207func (x *SoongBuildMetrics) GetMaxHeapSize() uint64 {
1208	if x != nil && x.MaxHeapSize != nil {
1209		return *x.MaxHeapSize
1210	}
1211	return 0
1212}
1213
1214func (x *SoongBuildMetrics) GetEvents() []*PerfInfo {
1215	if x != nil {
1216		return x.Events
1217	}
1218	return nil
1219}
1220
1221type ExpConfigFetcher struct {
1222	state         protoimpl.MessageState
1223	sizeCache     protoimpl.SizeCache
1224	unknownFields protoimpl.UnknownFields
1225
1226	// The result of the call to expconfigfetcher
1227	// NO_CONFIG - Not part of experiment
1228	// CONFIG - Part of experiment, config copied successfully
1229	// ERROR - expconfigfetcher failed
1230	Status *ExpConfigFetcher_ConfigStatus `protobuf:"varint,1,opt,name=status,enum=soong_build_metrics.ExpConfigFetcher_ConfigStatus" json:"status,omitempty"`
1231	// The output config filename
1232	Filename *string `protobuf:"bytes,2,opt,name=filename" json:"filename,omitempty"`
1233	// Time, in microseconds, taken by the expconfigfetcher
1234	Micros *uint64 `protobuf:"varint,3,opt,name=micros" json:"micros,omitempty"`
1235}
1236
1237func (x *ExpConfigFetcher) Reset() {
1238	*x = ExpConfigFetcher{}
1239	if protoimpl.UnsafeEnabled {
1240		mi := &file_metrics_proto_msgTypes[9]
1241		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1242		ms.StoreMessageInfo(mi)
1243	}
1244}
1245
1246func (x *ExpConfigFetcher) String() string {
1247	return protoimpl.X.MessageStringOf(x)
1248}
1249
1250func (*ExpConfigFetcher) ProtoMessage() {}
1251
1252func (x *ExpConfigFetcher) ProtoReflect() protoreflect.Message {
1253	mi := &file_metrics_proto_msgTypes[9]
1254	if protoimpl.UnsafeEnabled && x != nil {
1255		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1256		if ms.LoadMessageInfo() == nil {
1257			ms.StoreMessageInfo(mi)
1258		}
1259		return ms
1260	}
1261	return mi.MessageOf(x)
1262}
1263
1264// Deprecated: Use ExpConfigFetcher.ProtoReflect.Descriptor instead.
1265func (*ExpConfigFetcher) Descriptor() ([]byte, []int) {
1266	return file_metrics_proto_rawDescGZIP(), []int{9}
1267}
1268
1269func (x *ExpConfigFetcher) GetStatus() ExpConfigFetcher_ConfigStatus {
1270	if x != nil && x.Status != nil {
1271		return *x.Status
1272	}
1273	return ExpConfigFetcher_NO_CONFIG
1274}
1275
1276func (x *ExpConfigFetcher) GetFilename() string {
1277	if x != nil && x.Filename != nil {
1278		return *x.Filename
1279	}
1280	return ""
1281}
1282
1283func (x *ExpConfigFetcher) GetMicros() uint64 {
1284	if x != nil && x.Micros != nil {
1285		return *x.Micros
1286	}
1287	return 0
1288}
1289
1290var File_metrics_proto protoreflect.FileDescriptor
1291
1292var file_metrics_proto_rawDesc = []byte{
1293	0x0a, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
1294	0x13, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74,
1295	0x72, 0x69, 0x63, 0x73, 0x22, 0xad, 0x0d, 0x0a, 0x0b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
1296	0x42, 0x61, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x64, 0x61,
1297	0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01,
1298	0x28, 0x03, 0x52, 0x12, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
1299	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f,
1300	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x49,
1301	0x64, 0x12, 0x3a, 0x0a, 0x19, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x76, 0x65,
1302	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03,
1303	0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x56, 0x65,
1304	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a,
1305	0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x18,
1306	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x72, 0x6f,
1307	0x64, 0x75, 0x63, 0x74, 0x12, 0x64, 0x0a, 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x62,
1308	0x75, 0x69, 0x6c, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01,
1309	0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64,
1310	0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
1311	0x42, 0x61, 0x73, 0x65, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e,
1312	0x74, 0x3a, 0x03, 0x45, 0x4e, 0x47, 0x52, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x75,
1313	0x69, 0x6c, 0x64, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 0x74, 0x61,
1314	0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
1315	0x25, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65,
1316	0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x73,
1317	0x65, 0x2e, 0x41, 0x72, 0x63, 0x68, 0x3a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x52,
1318	0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x12, 0x2e, 0x0a, 0x13, 0x74,
1319	0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61,
1320	0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
1321	0x41, 0x72, 0x63, 0x68, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74,
1322	0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x70, 0x75, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e,
1323	0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43,
1324	0x70, 0x75, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x09, 0x68, 0x6f, 0x73,
1325	0x74, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73,
1326	0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69,
1327	0x63, 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x73, 0x65, 0x2e, 0x41,
1328	0x72, 0x63, 0x68, 0x3a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x52, 0x08, 0x68, 0x6f,
1329	0x73, 0x74, 0x41, 0x72, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x32,
1330	0x6e, 0x64, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e,
1331	0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72,
1332	0x69, 0x63, 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x73, 0x65, 0x2e,
1333	0x41, 0x72, 0x63, 0x68, 0x3a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x52, 0x0b, 0x68,
1334	0x6f, 0x73, 0x74, 0x32, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x6f,
1335	0x73, 0x74, 0x5f, 0x6f, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x6f, 0x73,
1336	0x74, 0x4f, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x6f, 0x73, 0x5f, 0x65,
1337	0x78, 0x74, 0x72, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x6f, 0x73, 0x74,
1338	0x4f, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x22, 0x0a, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x5f,
1339	0x63, 0x72, 0x6f, 0x73, 0x73, 0x5f, 0x6f, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
1340	0x68, 0x6f, 0x73, 0x74, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x4f, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x68,
1341	0x6f, 0x73, 0x74, 0x5f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x18, 0x0e,
1342	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x41,
1343	0x72, 0x63, 0x68, 0x12, 0x2d, 0x0a, 0x13, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x63, 0x72, 0x6f, 0x73,
1344	0x73, 0x5f, 0x32, 0x6e, 0x64, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09,
1345	0x52, 0x10, 0x68, 0x6f, 0x73, 0x74, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x32, 0x6e, 0x64, 0x41, 0x72,
1346	0x63, 0x68, 0x12, 0x17, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x10, 0x20,
1347	0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x44, 0x69, 0x72, 0x12, 0x3e, 0x0a, 0x0b, 0x73,
1348	0x65, 0x74, 0x75, 0x70, 0x5f, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b,
1349	0x32, 0x1d, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d,
1350	0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x52,
1351	0x0a, 0x73, 0x65, 0x74, 0x75, 0x70, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x3a, 0x0a, 0x09, 0x6b,
1352	0x61, 0x74, 0x69, 0x5f, 0x72, 0x75, 0x6e, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d,
1353	0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74,
1354	0x72, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x6b,
1355	0x61, 0x74, 0x69, 0x52, 0x75, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x0a, 0x73, 0x6f, 0x6f, 0x6e, 0x67,
1356	0x5f, 0x72, 0x75, 0x6e, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x73, 0x6f,
1357	0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
1358	0x73, 0x2e, 0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x73, 0x6f, 0x6f, 0x6e,
1359	0x67, 0x52, 0x75, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x0a, 0x6e, 0x69, 0x6e, 0x6a, 0x61, 0x5f, 0x72,
1360	0x75, 0x6e, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x73, 0x6f, 0x6f, 0x6e,
1361	0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e,
1362	0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6e, 0x69, 0x6e, 0x6a, 0x61, 0x52,
1363	0x75, 0x6e, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x15, 0x20, 0x01,
1364	0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64,
1365	0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66,
1366	0x6f, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x56, 0x0a, 0x13, 0x73, 0x6f, 0x6f, 0x6e,
1367	0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18,
1368	0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75,
1369	0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x53, 0x6f, 0x6f, 0x6e,
1370	0x67, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x11, 0x73,
1371	0x6f, 0x6f, 0x6e, 0x67, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
1372	0x12, 0x43, 0x0a, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
1373	0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62,
1374	0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x42, 0x75, 0x69,
1375	0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x43,
1376	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d,
1377	0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d,
1378	0x65, 0x12, 0x59, 0x0a, 0x14, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x65, 0x73, 0x6f,
1379	0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32,
1380	0x27, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65,
1381	0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x6f,
1382	0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x12, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
1383	0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d,
1384	0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x1a, 0x20,
1385	0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e,
1386	0x64, 0x12, 0x3c, 0x0a, 0x0a, 0x62, 0x61, 0x7a, 0x65, 0x6c, 0x5f, 0x72, 0x75, 0x6e, 0x73, 0x18,
1387	0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75,
1388	0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x66,
1389	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x62, 0x61, 0x7a, 0x65, 0x6c, 0x52, 0x75, 0x6e, 0x73, 0x12,
1390	0x53, 0x0a, 0x12, 0x65, 0x78, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x66, 0x65,
1391	0x74, 0x63, 0x68, 0x65, 0x72, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x6f,
1392	0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
1393	0x73, 0x2e, 0x45, 0x78, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x65, 0x74, 0x63, 0x68,
1394	0x65, 0x72, 0x52, 0x10, 0x65, 0x78, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x65, 0x74,
1395	0x63, 0x68, 0x65, 0x72, 0x22, 0x30, 0x0a, 0x0c, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x56, 0x61, 0x72,
1396	0x69, 0x61, 0x6e, 0x74, 0x12, 0x08, 0x0a, 0x04, 0x55, 0x53, 0x45, 0x52, 0x10, 0x00, 0x12, 0x0d,
1397	0x0a, 0x09, 0x55, 0x53, 0x45, 0x52, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x01, 0x12, 0x07, 0x0a,
1398	0x03, 0x45, 0x4e, 0x47, 0x10, 0x02, 0x22, 0x3c, 0x0a, 0x04, 0x41, 0x72, 0x63, 0x68, 0x12, 0x0b,
1399	0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41,
1400	0x52, 0x4d, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x52, 0x4d, 0x36, 0x34, 0x10, 0x02, 0x12,
1401	0x07, 0x0a, 0x03, 0x58, 0x38, 0x36, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x58, 0x38, 0x36, 0x5f,
1402	0x36, 0x34, 0x10, 0x04, 0x22, 0xd3, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f,
1403	0x6e, 0x66, 0x69, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x5f, 0x67, 0x6f, 0x6d, 0x61,
1404	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x75, 0x73, 0x65, 0x47, 0x6f, 0x6d, 0x61, 0x12,
1405	0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x5f, 0x72, 0x62, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
1406	0x52, 0x06, 0x75, 0x73, 0x65, 0x52, 0x62, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x63,
1407	0x65, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x67, 0x6f, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
1408	0x52, 0x0c, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x47, 0x6f, 0x6d, 0x61, 0x12, 0x24,
1409	0x0a, 0x0e, 0x62, 0x61, 0x7a, 0x65, 0x6c, 0x5f, 0x61, 0x73, 0x5f, 0x6e, 0x69, 0x6e, 0x6a, 0x61,
1410	0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x62, 0x61, 0x7a, 0x65, 0x6c, 0x41, 0x73, 0x4e,
1411	0x69, 0x6e, 0x6a, 0x61, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x7a, 0x65, 0x6c, 0x5f, 0x6d, 0x69,
1412	0x78, 0x65, 0x64, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
1413	0x0f, 0x62, 0x61, 0x7a, 0x65, 0x6c, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x42, 0x75, 0x69, 0x6c, 0x64,
1414	0x12, 0x18, 0x0a, 0x07, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28,
1415	0x09, 0x52, 0x07, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x22, 0x6f, 0x0a, 0x12, 0x53, 0x79,
1416	0x73, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f,
1417	0x12, 0x32, 0x0a, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63,
1418	0x61, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
1419	0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x4d, 0x65,
1420	0x6d, 0x6f, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
1421	0x65, 0x5f, 0x63, 0x70, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x76,
1422	0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x70, 0x75, 0x73, 0x22, 0x81, 0x02, 0x0a, 0x08,
1423	0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
1424	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
1425	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
1426	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d,
1427	0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
1428	0x28, 0x04, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a,
1429	0x09, 0x72, 0x65, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
1430	0x52, 0x08, 0x72, 0x65, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0a, 0x6d, 0x65,
1431	0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02,
1432	0x18, 0x01, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x55, 0x73, 0x65, 0x12, 0x60, 0x0a,
1433	0x17, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75,
1434	0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28,
1435	0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74,
1436	0x72, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x6f,
1437	0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x15, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
1438	0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22,
1439	0xb9, 0x03, 0x0a, 0x13, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75,
1440	0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
1441	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x75,
1442	0x73, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x18,
1443	0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x4d,
1444	0x69, 0x63, 0x72, 0x6f, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f,
1445	0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
1446	0x04, 0x52, 0x10, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x4d, 0x69, 0x63,
1447	0x72, 0x6f, 0x73, 0x12, 0x1c, 0x0a, 0x0a, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x73, 0x73, 0x5f, 0x6b,
1448	0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x52, 0x73, 0x73, 0x4b,
1449	0x62, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f,
1450	0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6d, 0x69,
1451	0x6e, 0x6f, 0x72, 0x50, 0x61, 0x67, 0x65, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x2a, 0x0a,
1452	0x11, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x61, 0x75, 0x6c,
1453	0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x50,
1454	0x61, 0x67, 0x65, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x6f, 0x5f,
1455	0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x62, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
1456	0x69, 0x6f, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x4b, 0x62, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x6f, 0x5f,
1457	0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x62, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52,
1458	0x0a, 0x69, 0x6f, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4b, 0x62, 0x12, 0x3c, 0x0a, 0x1a, 0x76,
1459	0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
1460	0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52,
1461	0x18, 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
1462	0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x1c, 0x69, 0x6e, 0x76,
1463	0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
1464	0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52,
1465	0x1a, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x74,
1466	0x65, 0x78, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0xe5, 0x01, 0x0a, 0x0e,
1467	0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5b,
1468	0x0a, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01,
1469	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69,
1470	0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
1471	0x65, 0x54, 0x79, 0x70, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53,
1472	0x79, 0x73, 0x74, 0x65, 0x6d, 0x3a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x52, 0x0b,
1473	0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x6d,
1474	0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
1475	0x52, 0x0a, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0e,
1476	0x6e, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x03,
1477	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x75, 0x6d, 0x4f, 0x66, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
1478	0x65, 0x73, 0x22, 0x2f, 0x0a, 0x0b, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x79, 0x73, 0x74, 0x65,
1479	0x6d, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x09,
1480	0x0a, 0x05, 0x53, 0x4f, 0x4f, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x41, 0x4b,
1481	0x45, 0x10, 0x02, 0x22, 0x6c, 0x0a, 0x1a, 0x43, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x55,
1482	0x73, 0x65, 0x72, 0x4a, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
1483	0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
1484	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
1485	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62,
1486	0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x4d, 0x65, 0x74,
1487	0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x73, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
1488	0x73, 0x22, 0x62, 0x0a, 0x1b, 0x43, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x55, 0x73, 0x65,
1489	0x72, 0x4a, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x73, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
1490	0x12, 0x43, 0x0a, 0x04, 0x63, 0x75, 0x6a, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f,
1491	0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74,
1492	0x72, 0x69, 0x63, 0x73, 0x2e, 0x43, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x55, 0x73, 0x65,
1493	0x72, 0x4a, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52,
1494	0x04, 0x63, 0x75, 0x6a, 0x73, 0x22, 0xfa, 0x01, 0x0a, 0x11, 0x53, 0x6f, 0x6f, 0x6e, 0x67, 0x42,
1495	0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d,
1496	0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x6f,
1497	0x64, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74,
1498	0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74,
1499	0x73, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63,
1500	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x6f,
1501	0x74, 0x61, 0x6c, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a,
1502	0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x5f, 0x73, 0x69, 0x7a,
1503	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x6c,
1504	0x6c, 0x6f, 0x63, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x68,
1505	0x65, 0x61, 0x70, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b,
1506	0x6d, 0x61, 0x78, 0x48, 0x65, 0x61, 0x70, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x65,
1507	0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x73, 0x6f,
1508	0x6f, 0x6e, 0x67, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
1509	0x73, 0x2e, 0x50, 0x65, 0x72, 0x66, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e,
1510	0x74, 0x73, 0x22, 0xc8, 0x01, 0x0a, 0x10, 0x45, 0x78, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
1511	0x46, 0x65, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
1512	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x5f,
1513	0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x45, 0x78,
1514	0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x65, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x43,
1515	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
1516	0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18,
1517	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12,
1518	0x16, 0x0a, 0x06, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52,
1519	0x06, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x22, 0x34, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69,
1520	0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x43, 0x4f,
1521	0x4e, 0x46, 0x49, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47,
1522	0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x42, 0x28, 0x5a,
1523	0x26, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2f, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x2f, 0x75,
1524	0x69, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
1525	0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1526}
1527
1528var (
1529	file_metrics_proto_rawDescOnce sync.Once
1530	file_metrics_proto_rawDescData = file_metrics_proto_rawDesc
1531)
1532
1533func file_metrics_proto_rawDescGZIP() []byte {
1534	file_metrics_proto_rawDescOnce.Do(func() {
1535		file_metrics_proto_rawDescData = protoimpl.X.CompressGZIP(file_metrics_proto_rawDescData)
1536	})
1537	return file_metrics_proto_rawDescData
1538}
1539
1540var file_metrics_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
1541var file_metrics_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
1542var file_metrics_proto_goTypes = []interface{}{
1543	(MetricsBase_BuildVariant)(0),       // 0: soong_build_metrics.MetricsBase.BuildVariant
1544	(MetricsBase_Arch)(0),               // 1: soong_build_metrics.MetricsBase.Arch
1545	(ModuleTypeInfo_BuildSystem)(0),     // 2: soong_build_metrics.ModuleTypeInfo.BuildSystem
1546	(ExpConfigFetcher_ConfigStatus)(0),  // 3: soong_build_metrics.ExpConfigFetcher.ConfigStatus
1547	(*MetricsBase)(nil),                 // 4: soong_build_metrics.MetricsBase
1548	(*BuildConfig)(nil),                 // 5: soong_build_metrics.BuildConfig
1549	(*SystemResourceInfo)(nil),          // 6: soong_build_metrics.SystemResourceInfo
1550	(*PerfInfo)(nil),                    // 7: soong_build_metrics.PerfInfo
1551	(*ProcessResourceInfo)(nil),         // 8: soong_build_metrics.ProcessResourceInfo
1552	(*ModuleTypeInfo)(nil),              // 9: soong_build_metrics.ModuleTypeInfo
1553	(*CriticalUserJourneyMetrics)(nil),  // 10: soong_build_metrics.CriticalUserJourneyMetrics
1554	(*CriticalUserJourneysMetrics)(nil), // 11: soong_build_metrics.CriticalUserJourneysMetrics
1555	(*SoongBuildMetrics)(nil),           // 12: soong_build_metrics.SoongBuildMetrics
1556	(*ExpConfigFetcher)(nil),            // 13: soong_build_metrics.ExpConfigFetcher
1557}
1558var file_metrics_proto_depIdxs = []int32{
1559	0,  // 0: soong_build_metrics.MetricsBase.target_build_variant:type_name -> soong_build_metrics.MetricsBase.BuildVariant
1560	1,  // 1: soong_build_metrics.MetricsBase.target_arch:type_name -> soong_build_metrics.MetricsBase.Arch
1561	1,  // 2: soong_build_metrics.MetricsBase.host_arch:type_name -> soong_build_metrics.MetricsBase.Arch
1562	1,  // 3: soong_build_metrics.MetricsBase.host_2nd_arch:type_name -> soong_build_metrics.MetricsBase.Arch
1563	7,  // 4: soong_build_metrics.MetricsBase.setup_tools:type_name -> soong_build_metrics.PerfInfo
1564	7,  // 5: soong_build_metrics.MetricsBase.kati_runs:type_name -> soong_build_metrics.PerfInfo
1565	7,  // 6: soong_build_metrics.MetricsBase.soong_runs:type_name -> soong_build_metrics.PerfInfo
1566	7,  // 7: soong_build_metrics.MetricsBase.ninja_runs:type_name -> soong_build_metrics.PerfInfo
1567	7,  // 8: soong_build_metrics.MetricsBase.total:type_name -> soong_build_metrics.PerfInfo
1568	12, // 9: soong_build_metrics.MetricsBase.soong_build_metrics:type_name -> soong_build_metrics.SoongBuildMetrics
1569	5,  // 10: soong_build_metrics.MetricsBase.build_config:type_name -> soong_build_metrics.BuildConfig
1570	6,  // 11: soong_build_metrics.MetricsBase.system_resource_info:type_name -> soong_build_metrics.SystemResourceInfo
1571	7,  // 12: soong_build_metrics.MetricsBase.bazel_runs:type_name -> soong_build_metrics.PerfInfo
1572	13, // 13: soong_build_metrics.MetricsBase.exp_config_fetcher:type_name -> soong_build_metrics.ExpConfigFetcher
1573	8,  // 14: soong_build_metrics.PerfInfo.processes_resource_info:type_name -> soong_build_metrics.ProcessResourceInfo
1574	2,  // 15: soong_build_metrics.ModuleTypeInfo.build_system:type_name -> soong_build_metrics.ModuleTypeInfo.BuildSystem
1575	4,  // 16: soong_build_metrics.CriticalUserJourneyMetrics.metrics:type_name -> soong_build_metrics.MetricsBase
1576	10, // 17: soong_build_metrics.CriticalUserJourneysMetrics.cujs:type_name -> soong_build_metrics.CriticalUserJourneyMetrics
1577	7,  // 18: soong_build_metrics.SoongBuildMetrics.events:type_name -> soong_build_metrics.PerfInfo
1578	3,  // 19: soong_build_metrics.ExpConfigFetcher.status:type_name -> soong_build_metrics.ExpConfigFetcher.ConfigStatus
1579	20, // [20:20] is the sub-list for method output_type
1580	20, // [20:20] is the sub-list for method input_type
1581	20, // [20:20] is the sub-list for extension type_name
1582	20, // [20:20] is the sub-list for extension extendee
1583	0,  // [0:20] is the sub-list for field type_name
1584}
1585
1586func init() { file_metrics_proto_init() }
1587func file_metrics_proto_init() {
1588	if File_metrics_proto != nil {
1589		return
1590	}
1591	if !protoimpl.UnsafeEnabled {
1592		file_metrics_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1593			switch v := v.(*MetricsBase); i {
1594			case 0:
1595				return &v.state
1596			case 1:
1597				return &v.sizeCache
1598			case 2:
1599				return &v.unknownFields
1600			default:
1601				return nil
1602			}
1603		}
1604		file_metrics_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1605			switch v := v.(*BuildConfig); i {
1606			case 0:
1607				return &v.state
1608			case 1:
1609				return &v.sizeCache
1610			case 2:
1611				return &v.unknownFields
1612			default:
1613				return nil
1614			}
1615		}
1616		file_metrics_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1617			switch v := v.(*SystemResourceInfo); i {
1618			case 0:
1619				return &v.state
1620			case 1:
1621				return &v.sizeCache
1622			case 2:
1623				return &v.unknownFields
1624			default:
1625				return nil
1626			}
1627		}
1628		file_metrics_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1629			switch v := v.(*PerfInfo); i {
1630			case 0:
1631				return &v.state
1632			case 1:
1633				return &v.sizeCache
1634			case 2:
1635				return &v.unknownFields
1636			default:
1637				return nil
1638			}
1639		}
1640		file_metrics_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1641			switch v := v.(*ProcessResourceInfo); i {
1642			case 0:
1643				return &v.state
1644			case 1:
1645				return &v.sizeCache
1646			case 2:
1647				return &v.unknownFields
1648			default:
1649				return nil
1650			}
1651		}
1652		file_metrics_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
1653			switch v := v.(*ModuleTypeInfo); i {
1654			case 0:
1655				return &v.state
1656			case 1:
1657				return &v.sizeCache
1658			case 2:
1659				return &v.unknownFields
1660			default:
1661				return nil
1662			}
1663		}
1664		file_metrics_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1665			switch v := v.(*CriticalUserJourneyMetrics); i {
1666			case 0:
1667				return &v.state
1668			case 1:
1669				return &v.sizeCache
1670			case 2:
1671				return &v.unknownFields
1672			default:
1673				return nil
1674			}
1675		}
1676		file_metrics_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1677			switch v := v.(*CriticalUserJourneysMetrics); i {
1678			case 0:
1679				return &v.state
1680			case 1:
1681				return &v.sizeCache
1682			case 2:
1683				return &v.unknownFields
1684			default:
1685				return nil
1686			}
1687		}
1688		file_metrics_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1689			switch v := v.(*SoongBuildMetrics); i {
1690			case 0:
1691				return &v.state
1692			case 1:
1693				return &v.sizeCache
1694			case 2:
1695				return &v.unknownFields
1696			default:
1697				return nil
1698			}
1699		}
1700		file_metrics_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1701			switch v := v.(*ExpConfigFetcher); i {
1702			case 0:
1703				return &v.state
1704			case 1:
1705				return &v.sizeCache
1706			case 2:
1707				return &v.unknownFields
1708			default:
1709				return nil
1710			}
1711		}
1712	}
1713	type x struct{}
1714	out := protoimpl.TypeBuilder{
1715		File: protoimpl.DescBuilder{
1716			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1717			RawDescriptor: file_metrics_proto_rawDesc,
1718			NumEnums:      4,
1719			NumMessages:   10,
1720			NumExtensions: 0,
1721			NumServices:   0,
1722		},
1723		GoTypes:           file_metrics_proto_goTypes,
1724		DependencyIndexes: file_metrics_proto_depIdxs,
1725		EnumInfos:         file_metrics_proto_enumTypes,
1726		MessageInfos:      file_metrics_proto_msgTypes,
1727	}.Build()
1728	File_metrics_proto = out.File
1729	file_metrics_proto_rawDesc = nil
1730	file_metrics_proto_goTypes = nil
1731	file_metrics_proto_depIdxs = nil
1732}
1733