• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Autogenerated by the ProtoZero compiler plugin. DO NOT EDIT.
2 
3 #ifndef PERFETTO_PROTOS_PROCESS_DESCRIPTOR_PROTO_H_
4 #define PERFETTO_PROTOS_PROCESS_DESCRIPTOR_PROTO_H_
5 
6 #include <stddef.h>
7 #include <stdint.h>
8 
9 #include "perfetto/protozero/message.h"
10 #include "perfetto/protozero/packed_repeated_fields.h"
11 #include "perfetto/protozero/proto_decoder.h"
12 #include "perfetto/protozero/proto_utils.h"
13 
14 namespace perfetto {
15 namespace protos {
16 namespace pbzero {
17 
18 enum ProcessDescriptor_ChromeProcessType : int32_t;
19 
20 enum ProcessDescriptor_ChromeProcessType : int32_t {
21   ProcessDescriptor_ChromeProcessType_PROCESS_UNSPECIFIED = 0,
22   ProcessDescriptor_ChromeProcessType_PROCESS_BROWSER = 1,
23   ProcessDescriptor_ChromeProcessType_PROCESS_RENDERER = 2,
24   ProcessDescriptor_ChromeProcessType_PROCESS_UTILITY = 3,
25   ProcessDescriptor_ChromeProcessType_PROCESS_ZYGOTE = 4,
26   ProcessDescriptor_ChromeProcessType_PROCESS_SANDBOX_HELPER = 5,
27   ProcessDescriptor_ChromeProcessType_PROCESS_GPU = 6,
28   ProcessDescriptor_ChromeProcessType_PROCESS_PPAPI_PLUGIN = 7,
29   ProcessDescriptor_ChromeProcessType_PROCESS_PPAPI_BROKER = 8,
30 };
31 
32 const ProcessDescriptor_ChromeProcessType ProcessDescriptor_ChromeProcessType_MIN = ProcessDescriptor_ChromeProcessType_PROCESS_UNSPECIFIED;
33 const ProcessDescriptor_ChromeProcessType ProcessDescriptor_ChromeProcessType_MAX = ProcessDescriptor_ChromeProcessType_PROCESS_PPAPI_BROKER;
34 
35 class ProcessDescriptor_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/6, /*HAS_NONPACKED_REPEATED_FIELDS=*/true> {
36  public:
ProcessDescriptor_Decoder(const uint8_t * data,size_t len)37   ProcessDescriptor_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
ProcessDescriptor_Decoder(const std::string & raw)38   explicit ProcessDescriptor_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
ProcessDescriptor_Decoder(const::protozero::ConstBytes & raw)39   explicit ProcessDescriptor_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_pid()40   bool has_pid() const { return at<1>().valid(); }
pid()41   int32_t pid() const { return at<1>().as_int32(); }
has_cmdline()42   bool has_cmdline() const { return at<2>().valid(); }
cmdline()43   ::protozero::RepeatedFieldIterator<::protozero::ConstChars> cmdline() const { return GetRepeated<::protozero::ConstChars>(2); }
has_process_name()44   bool has_process_name() const { return at<6>().valid(); }
process_name()45   ::protozero::ConstChars process_name() const { return at<6>().as_string(); }
has_process_priority()46   bool has_process_priority() const { return at<5>().valid(); }
process_priority()47   int32_t process_priority() const { return at<5>().as_int32(); }
has_chrome_process_type()48   bool has_chrome_process_type() const { return at<4>().valid(); }
chrome_process_type()49   int32_t chrome_process_type() const { return at<4>().as_int32(); }
has_legacy_sort_index()50   bool has_legacy_sort_index() const { return at<3>().valid(); }
legacy_sort_index()51   int32_t legacy_sort_index() const { return at<3>().as_int32(); }
52 };
53 
54 class ProcessDescriptor : public ::protozero::Message {
55  public:
56   using Decoder = ProcessDescriptor_Decoder;
57   enum : int32_t {
58     kPidFieldNumber = 1,
59     kCmdlineFieldNumber = 2,
60     kProcessNameFieldNumber = 6,
61     kProcessPriorityFieldNumber = 5,
62     kChromeProcessTypeFieldNumber = 4,
63     kLegacySortIndexFieldNumber = 3,
64   };
65   using ChromeProcessType = ::perfetto::protos::pbzero::ProcessDescriptor_ChromeProcessType;
66   static const ChromeProcessType PROCESS_UNSPECIFIED = ProcessDescriptor_ChromeProcessType_PROCESS_UNSPECIFIED;
67   static const ChromeProcessType PROCESS_BROWSER = ProcessDescriptor_ChromeProcessType_PROCESS_BROWSER;
68   static const ChromeProcessType PROCESS_RENDERER = ProcessDescriptor_ChromeProcessType_PROCESS_RENDERER;
69   static const ChromeProcessType PROCESS_UTILITY = ProcessDescriptor_ChromeProcessType_PROCESS_UTILITY;
70   static const ChromeProcessType PROCESS_ZYGOTE = ProcessDescriptor_ChromeProcessType_PROCESS_ZYGOTE;
71   static const ChromeProcessType PROCESS_SANDBOX_HELPER = ProcessDescriptor_ChromeProcessType_PROCESS_SANDBOX_HELPER;
72   static const ChromeProcessType PROCESS_GPU = ProcessDescriptor_ChromeProcessType_PROCESS_GPU;
73   static const ChromeProcessType PROCESS_PPAPI_PLUGIN = ProcessDescriptor_ChromeProcessType_PROCESS_PPAPI_PLUGIN;
74   static const ChromeProcessType PROCESS_PPAPI_BROKER = ProcessDescriptor_ChromeProcessType_PROCESS_PPAPI_BROKER;
set_pid(int32_t value)75   void set_pid(int32_t value) {
76     AppendVarInt(1, value);
77   }
add_cmdline(const std::string & value)78   void add_cmdline(const std::string& value) {
79     AppendBytes(2, value.data(), value.size());
80   }
add_cmdline(const char * data,size_t size)81   void add_cmdline(const char* data, size_t size) {
82     AppendBytes(2, data, size);
83   }
set_process_name(const std::string & value)84   void set_process_name(const std::string& value) {
85     AppendBytes(6, value.data(), value.size());
86   }
set_process_name(const char * data,size_t size)87   void set_process_name(const char* data, size_t size) {
88     AppendBytes(6, data, size);
89   }
set_process_priority(int32_t value)90   void set_process_priority(int32_t value) {
91     AppendVarInt(5, value);
92   }
set_chrome_process_type(::perfetto::protos::pbzero::ProcessDescriptor_ChromeProcessType value)93   void set_chrome_process_type(::perfetto::protos::pbzero::ProcessDescriptor_ChromeProcessType value) {
94     AppendTinyVarInt(4, value);
95   }
set_legacy_sort_index(int32_t value)96   void set_legacy_sort_index(int32_t value) {
97     AppendVarInt(3, value);
98   }
99 };
100 
101 } // Namespace.
102 } // Namespace.
103 } // Namespace.
104 #endif  // Include guard.
105