1 // DO NOT EDIT. Autogenerated by Perfetto cppgen_plugin
2 #ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_IPC_WIRE_PROTOCOL_PROTO_CPP_H_
3 #define PERFETTO_PROTOS_PROTOS_PERFETTO_IPC_WIRE_PROTOCOL_PROTO_CPP_H_
4 
5 #include <stdint.h>
6 #include <bitset>
7 #include <vector>
8 #include <string>
9 #include <type_traits>
10 
11 #include "perfetto/protozero/cpp_message_obj.h"
12 #include "perfetto/protozero/copyable_ptr.h"
13 #include "perfetto/base/export.h"
14 
15 namespace perfetto {
16 namespace protos {
17 namespace gen {
18 class IPCFrame;
19 class IPCFrame_SetPeerIdentity;
20 class IPCFrame_RequestError;
21 class IPCFrame_InvokeMethodReply;
22 class IPCFrame_InvokeMethod;
23 class IPCFrame_BindServiceReply;
24 class IPCFrame_BindServiceReply_MethodInfo;
25 class IPCFrame_BindService;
26 }  // namespace perfetto
27 }  // namespace protos
28 }  // namespace gen
29 
30 namespace protozero {
31 class Message;
32 }  // namespace protozero
33 
34 namespace perfetto {
35 namespace protos {
36 namespace gen {
37 
38 class PERFETTO_EXPORT_COMPONENT IPCFrame : public ::protozero::CppMessageObj {
39  public:
40   using BindService = IPCFrame_BindService;
41   using BindServiceReply = IPCFrame_BindServiceReply;
42   using InvokeMethod = IPCFrame_InvokeMethod;
43   using InvokeMethodReply = IPCFrame_InvokeMethodReply;
44   using RequestError = IPCFrame_RequestError;
45   using SetPeerIdentity = IPCFrame_SetPeerIdentity;
46   enum FieldNumbers {
47     kRequestIdFieldNumber = 2,
48     kMsgBindServiceFieldNumber = 3,
49     kMsgBindServiceReplyFieldNumber = 4,
50     kMsgInvokeMethodFieldNumber = 5,
51     kMsgInvokeMethodReplyFieldNumber = 6,
52     kMsgRequestErrorFieldNumber = 7,
53     kSetPeerIdentityFieldNumber = 8,
54     kDataForTestingFieldNumber = 1,
55   };
56 
57   IPCFrame();
58   ~IPCFrame() override;
59   IPCFrame(IPCFrame&&) noexcept;
60   IPCFrame& operator=(IPCFrame&&);
61   IPCFrame(const IPCFrame&);
62   IPCFrame& operator=(const IPCFrame&);
63   bool operator==(const IPCFrame&) const;
64   bool operator!=(const IPCFrame& other) const { return !(*this == other); }
65 
66   bool ParseFromArray(const void*, size_t) override;
67   std::string SerializeAsString() const override;
68   std::vector<uint8_t> SerializeAsArray() const override;
69   void Serialize(::protozero::Message*) const;
70 
has_request_id()71   bool has_request_id() const { return _has_field_[2]; }
request_id()72   uint64_t request_id() const { return request_id_; }
set_request_id(uint64_t value)73   void set_request_id(uint64_t value) { request_id_ = value; _has_field_.set(2); }
74 
has_msg_bind_service()75   bool has_msg_bind_service() const { return _has_field_[3]; }
msg_bind_service()76   const IPCFrame_BindService& msg_bind_service() const { return *msg_bind_service_; }
mutable_msg_bind_service()77   IPCFrame_BindService* mutable_msg_bind_service() { _has_field_.set(3); return msg_bind_service_.get(); }
78 
has_msg_bind_service_reply()79   bool has_msg_bind_service_reply() const { return _has_field_[4]; }
msg_bind_service_reply()80   const IPCFrame_BindServiceReply& msg_bind_service_reply() const { return *msg_bind_service_reply_; }
mutable_msg_bind_service_reply()81   IPCFrame_BindServiceReply* mutable_msg_bind_service_reply() { _has_field_.set(4); return msg_bind_service_reply_.get(); }
82 
has_msg_invoke_method()83   bool has_msg_invoke_method() const { return _has_field_[5]; }
msg_invoke_method()84   const IPCFrame_InvokeMethod& msg_invoke_method() const { return *msg_invoke_method_; }
mutable_msg_invoke_method()85   IPCFrame_InvokeMethod* mutable_msg_invoke_method() { _has_field_.set(5); return msg_invoke_method_.get(); }
86 
has_msg_invoke_method_reply()87   bool has_msg_invoke_method_reply() const { return _has_field_[6]; }
msg_invoke_method_reply()88   const IPCFrame_InvokeMethodReply& msg_invoke_method_reply() const { return *msg_invoke_method_reply_; }
mutable_msg_invoke_method_reply()89   IPCFrame_InvokeMethodReply* mutable_msg_invoke_method_reply() { _has_field_.set(6); return msg_invoke_method_reply_.get(); }
90 
has_msg_request_error()91   bool has_msg_request_error() const { return _has_field_[7]; }
msg_request_error()92   const IPCFrame_RequestError& msg_request_error() const { return *msg_request_error_; }
mutable_msg_request_error()93   IPCFrame_RequestError* mutable_msg_request_error() { _has_field_.set(7); return msg_request_error_.get(); }
94 
has_set_peer_identity()95   bool has_set_peer_identity() const { return _has_field_[8]; }
set_peer_identity()96   const IPCFrame_SetPeerIdentity& set_peer_identity() const { return *set_peer_identity_; }
mutable_set_peer_identity()97   IPCFrame_SetPeerIdentity* mutable_set_peer_identity() { _has_field_.set(8); return set_peer_identity_.get(); }
98 
data_for_testing()99   const std::vector<std::string>& data_for_testing() const { return data_for_testing_; }
mutable_data_for_testing()100   std::vector<std::string>* mutable_data_for_testing() { return &data_for_testing_; }
data_for_testing_size()101   int data_for_testing_size() const { return static_cast<int>(data_for_testing_.size()); }
clear_data_for_testing()102   void clear_data_for_testing() { data_for_testing_.clear(); }
add_data_for_testing(std::string value)103   void add_data_for_testing(std::string value) { data_for_testing_.emplace_back(value); }
add_data_for_testing()104   std::string* add_data_for_testing() { data_for_testing_.emplace_back(); return &data_for_testing_.back(); }
105 
106  private:
107   uint64_t request_id_{};
108   ::protozero::CopyablePtr<IPCFrame_BindService> msg_bind_service_;
109   ::protozero::CopyablePtr<IPCFrame_BindServiceReply> msg_bind_service_reply_;
110   ::protozero::CopyablePtr<IPCFrame_InvokeMethod> msg_invoke_method_;
111   ::protozero::CopyablePtr<IPCFrame_InvokeMethodReply> msg_invoke_method_reply_;
112   ::protozero::CopyablePtr<IPCFrame_RequestError> msg_request_error_;
113   ::protozero::CopyablePtr<IPCFrame_SetPeerIdentity> set_peer_identity_;
114   std::vector<std::string> data_for_testing_;
115 
116   // Allows to preserve unknown protobuf fields for compatibility
117   // with future versions of .proto files.
118   std::string unknown_fields_;
119 
120   std::bitset<9> _has_field_{};
121 };
122 
123 
124 class PERFETTO_EXPORT_COMPONENT IPCFrame_SetPeerIdentity : public ::protozero::CppMessageObj {
125  public:
126   enum FieldNumbers {
127     kPidFieldNumber = 1,
128     kUidFieldNumber = 2,
129     kMachineIdHintFieldNumber = 3,
130   };
131 
132   IPCFrame_SetPeerIdentity();
133   ~IPCFrame_SetPeerIdentity() override;
134   IPCFrame_SetPeerIdentity(IPCFrame_SetPeerIdentity&&) noexcept;
135   IPCFrame_SetPeerIdentity& operator=(IPCFrame_SetPeerIdentity&&);
136   IPCFrame_SetPeerIdentity(const IPCFrame_SetPeerIdentity&);
137   IPCFrame_SetPeerIdentity& operator=(const IPCFrame_SetPeerIdentity&);
138   bool operator==(const IPCFrame_SetPeerIdentity&) const;
139   bool operator!=(const IPCFrame_SetPeerIdentity& other) const { return !(*this == other); }
140 
141   bool ParseFromArray(const void*, size_t) override;
142   std::string SerializeAsString() const override;
143   std::vector<uint8_t> SerializeAsArray() const override;
144   void Serialize(::protozero::Message*) const;
145 
has_pid()146   bool has_pid() const { return _has_field_[1]; }
pid()147   int32_t pid() const { return pid_; }
set_pid(int32_t value)148   void set_pid(int32_t value) { pid_ = value; _has_field_.set(1); }
149 
has_uid()150   bool has_uid() const { return _has_field_[2]; }
uid()151   int32_t uid() const { return uid_; }
set_uid(int32_t value)152   void set_uid(int32_t value) { uid_ = value; _has_field_.set(2); }
153 
has_machine_id_hint()154   bool has_machine_id_hint() const { return _has_field_[3]; }
machine_id_hint()155   const std::string& machine_id_hint() const { return machine_id_hint_; }
set_machine_id_hint(const std::string & value)156   void set_machine_id_hint(const std::string& value) { machine_id_hint_ = value; _has_field_.set(3); }
157 
158  private:
159   int32_t pid_{};
160   int32_t uid_{};
161   std::string machine_id_hint_{};
162 
163   // Allows to preserve unknown protobuf fields for compatibility
164   // with future versions of .proto files.
165   std::string unknown_fields_;
166 
167   std::bitset<4> _has_field_{};
168 };
169 
170 
171 class PERFETTO_EXPORT_COMPONENT IPCFrame_RequestError : public ::protozero::CppMessageObj {
172  public:
173   enum FieldNumbers {
174     kErrorFieldNumber = 1,
175   };
176 
177   IPCFrame_RequestError();
178   ~IPCFrame_RequestError() override;
179   IPCFrame_RequestError(IPCFrame_RequestError&&) noexcept;
180   IPCFrame_RequestError& operator=(IPCFrame_RequestError&&);
181   IPCFrame_RequestError(const IPCFrame_RequestError&);
182   IPCFrame_RequestError& operator=(const IPCFrame_RequestError&);
183   bool operator==(const IPCFrame_RequestError&) const;
184   bool operator!=(const IPCFrame_RequestError& other) const { return !(*this == other); }
185 
186   bool ParseFromArray(const void*, size_t) override;
187   std::string SerializeAsString() const override;
188   std::vector<uint8_t> SerializeAsArray() const override;
189   void Serialize(::protozero::Message*) const;
190 
has_error()191   bool has_error() const { return _has_field_[1]; }
error()192   const std::string& error() const { return error_; }
set_error(const std::string & value)193   void set_error(const std::string& value) { error_ = value; _has_field_.set(1); }
194 
195  private:
196   std::string error_{};
197 
198   // Allows to preserve unknown protobuf fields for compatibility
199   // with future versions of .proto files.
200   std::string unknown_fields_;
201 
202   std::bitset<2> _has_field_{};
203 };
204 
205 
206 class PERFETTO_EXPORT_COMPONENT IPCFrame_InvokeMethodReply : public ::protozero::CppMessageObj {
207  public:
208   enum FieldNumbers {
209     kSuccessFieldNumber = 1,
210     kHasMoreFieldNumber = 2,
211     kReplyProtoFieldNumber = 3,
212   };
213 
214   IPCFrame_InvokeMethodReply();
215   ~IPCFrame_InvokeMethodReply() override;
216   IPCFrame_InvokeMethodReply(IPCFrame_InvokeMethodReply&&) noexcept;
217   IPCFrame_InvokeMethodReply& operator=(IPCFrame_InvokeMethodReply&&);
218   IPCFrame_InvokeMethodReply(const IPCFrame_InvokeMethodReply&);
219   IPCFrame_InvokeMethodReply& operator=(const IPCFrame_InvokeMethodReply&);
220   bool operator==(const IPCFrame_InvokeMethodReply&) const;
221   bool operator!=(const IPCFrame_InvokeMethodReply& other) const { return !(*this == other); }
222 
223   bool ParseFromArray(const void*, size_t) override;
224   std::string SerializeAsString() const override;
225   std::vector<uint8_t> SerializeAsArray() const override;
226   void Serialize(::protozero::Message*) const;
227 
has_success()228   bool has_success() const { return _has_field_[1]; }
success()229   bool success() const { return success_; }
set_success(bool value)230   void set_success(bool value) { success_ = value; _has_field_.set(1); }
231 
has_has_more()232   bool has_has_more() const { return _has_field_[2]; }
has_more()233   bool has_more() const { return has_more_; }
set_has_more(bool value)234   void set_has_more(bool value) { has_more_ = value; _has_field_.set(2); }
235 
has_reply_proto()236   bool has_reply_proto() const { return _has_field_[3]; }
reply_proto()237   const std::string& reply_proto() const { return reply_proto_; }
set_reply_proto(const std::string & value)238   void set_reply_proto(const std::string& value) { reply_proto_ = value; _has_field_.set(3); }
set_reply_proto(const void * p,size_t s)239   void set_reply_proto(const void* p, size_t s) { reply_proto_.assign(reinterpret_cast<const char*>(p), s); _has_field_.set(3); }
240 
241  private:
242   bool success_{};
243   bool has_more_{};
244   std::string reply_proto_{};
245 
246   // Allows to preserve unknown protobuf fields for compatibility
247   // with future versions of .proto files.
248   std::string unknown_fields_;
249 
250   std::bitset<4> _has_field_{};
251 };
252 
253 
254 class PERFETTO_EXPORT_COMPONENT IPCFrame_InvokeMethod : public ::protozero::CppMessageObj {
255  public:
256   enum FieldNumbers {
257     kServiceIdFieldNumber = 1,
258     kMethodIdFieldNumber = 2,
259     kArgsProtoFieldNumber = 3,
260     kDropReplyFieldNumber = 4,
261   };
262 
263   IPCFrame_InvokeMethod();
264   ~IPCFrame_InvokeMethod() override;
265   IPCFrame_InvokeMethod(IPCFrame_InvokeMethod&&) noexcept;
266   IPCFrame_InvokeMethod& operator=(IPCFrame_InvokeMethod&&);
267   IPCFrame_InvokeMethod(const IPCFrame_InvokeMethod&);
268   IPCFrame_InvokeMethod& operator=(const IPCFrame_InvokeMethod&);
269   bool operator==(const IPCFrame_InvokeMethod&) const;
270   bool operator!=(const IPCFrame_InvokeMethod& other) const { return !(*this == other); }
271 
272   bool ParseFromArray(const void*, size_t) override;
273   std::string SerializeAsString() const override;
274   std::vector<uint8_t> SerializeAsArray() const override;
275   void Serialize(::protozero::Message*) const;
276 
has_service_id()277   bool has_service_id() const { return _has_field_[1]; }
service_id()278   uint32_t service_id() const { return service_id_; }
set_service_id(uint32_t value)279   void set_service_id(uint32_t value) { service_id_ = value; _has_field_.set(1); }
280 
has_method_id()281   bool has_method_id() const { return _has_field_[2]; }
method_id()282   uint32_t method_id() const { return method_id_; }
set_method_id(uint32_t value)283   void set_method_id(uint32_t value) { method_id_ = value; _has_field_.set(2); }
284 
has_args_proto()285   bool has_args_proto() const { return _has_field_[3]; }
args_proto()286   const std::string& args_proto() const { return args_proto_; }
set_args_proto(const std::string & value)287   void set_args_proto(const std::string& value) { args_proto_ = value; _has_field_.set(3); }
set_args_proto(const void * p,size_t s)288   void set_args_proto(const void* p, size_t s) { args_proto_.assign(reinterpret_cast<const char*>(p), s); _has_field_.set(3); }
289 
has_drop_reply()290   bool has_drop_reply() const { return _has_field_[4]; }
drop_reply()291   bool drop_reply() const { return drop_reply_; }
set_drop_reply(bool value)292   void set_drop_reply(bool value) { drop_reply_ = value; _has_field_.set(4); }
293 
294  private:
295   uint32_t service_id_{};
296   uint32_t method_id_{};
297   std::string args_proto_{};
298   bool drop_reply_{};
299 
300   // Allows to preserve unknown protobuf fields for compatibility
301   // with future versions of .proto files.
302   std::string unknown_fields_;
303 
304   std::bitset<5> _has_field_{};
305 };
306 
307 
308 class PERFETTO_EXPORT_COMPONENT IPCFrame_BindServiceReply : public ::protozero::CppMessageObj {
309  public:
310   using MethodInfo = IPCFrame_BindServiceReply_MethodInfo;
311   enum FieldNumbers {
312     kSuccessFieldNumber = 1,
313     kServiceIdFieldNumber = 2,
314     kMethodsFieldNumber = 3,
315   };
316 
317   IPCFrame_BindServiceReply();
318   ~IPCFrame_BindServiceReply() override;
319   IPCFrame_BindServiceReply(IPCFrame_BindServiceReply&&) noexcept;
320   IPCFrame_BindServiceReply& operator=(IPCFrame_BindServiceReply&&);
321   IPCFrame_BindServiceReply(const IPCFrame_BindServiceReply&);
322   IPCFrame_BindServiceReply& operator=(const IPCFrame_BindServiceReply&);
323   bool operator==(const IPCFrame_BindServiceReply&) const;
324   bool operator!=(const IPCFrame_BindServiceReply& other) const { return !(*this == other); }
325 
326   bool ParseFromArray(const void*, size_t) override;
327   std::string SerializeAsString() const override;
328   std::vector<uint8_t> SerializeAsArray() const override;
329   void Serialize(::protozero::Message*) const;
330 
has_success()331   bool has_success() const { return _has_field_[1]; }
success()332   bool success() const { return success_; }
set_success(bool value)333   void set_success(bool value) { success_ = value; _has_field_.set(1); }
334 
has_service_id()335   bool has_service_id() const { return _has_field_[2]; }
service_id()336   uint32_t service_id() const { return service_id_; }
set_service_id(uint32_t value)337   void set_service_id(uint32_t value) { service_id_ = value; _has_field_.set(2); }
338 
methods()339   const std::vector<IPCFrame_BindServiceReply_MethodInfo>& methods() const { return methods_; }
mutable_methods()340   std::vector<IPCFrame_BindServiceReply_MethodInfo>* mutable_methods() { return &methods_; }
341   int methods_size() const;
342   void clear_methods();
343   IPCFrame_BindServiceReply_MethodInfo* add_methods();
344 
345  private:
346   bool success_{};
347   uint32_t service_id_{};
348   std::vector<IPCFrame_BindServiceReply_MethodInfo> methods_;
349 
350   // Allows to preserve unknown protobuf fields for compatibility
351   // with future versions of .proto files.
352   std::string unknown_fields_;
353 
354   std::bitset<4> _has_field_{};
355 };
356 
357 
358 class PERFETTO_EXPORT_COMPONENT IPCFrame_BindServiceReply_MethodInfo : public ::protozero::CppMessageObj {
359  public:
360   enum FieldNumbers {
361     kIdFieldNumber = 1,
362     kNameFieldNumber = 2,
363   };
364 
365   IPCFrame_BindServiceReply_MethodInfo();
366   ~IPCFrame_BindServiceReply_MethodInfo() override;
367   IPCFrame_BindServiceReply_MethodInfo(IPCFrame_BindServiceReply_MethodInfo&&) noexcept;
368   IPCFrame_BindServiceReply_MethodInfo& operator=(IPCFrame_BindServiceReply_MethodInfo&&);
369   IPCFrame_BindServiceReply_MethodInfo(const IPCFrame_BindServiceReply_MethodInfo&);
370   IPCFrame_BindServiceReply_MethodInfo& operator=(const IPCFrame_BindServiceReply_MethodInfo&);
371   bool operator==(const IPCFrame_BindServiceReply_MethodInfo&) const;
372   bool operator!=(const IPCFrame_BindServiceReply_MethodInfo& other) const { return !(*this == other); }
373 
374   bool ParseFromArray(const void*, size_t) override;
375   std::string SerializeAsString() const override;
376   std::vector<uint8_t> SerializeAsArray() const override;
377   void Serialize(::protozero::Message*) const;
378 
has_id()379   bool has_id() const { return _has_field_[1]; }
id()380   uint32_t id() const { return id_; }
set_id(uint32_t value)381   void set_id(uint32_t value) { id_ = value; _has_field_.set(1); }
382 
has_name()383   bool has_name() const { return _has_field_[2]; }
name()384   const std::string& name() const { return name_; }
set_name(const std::string & value)385   void set_name(const std::string& value) { name_ = value; _has_field_.set(2); }
386 
387  private:
388   uint32_t id_{};
389   std::string name_{};
390 
391   // Allows to preserve unknown protobuf fields for compatibility
392   // with future versions of .proto files.
393   std::string unknown_fields_;
394 
395   std::bitset<3> _has_field_{};
396 };
397 
398 
399 class PERFETTO_EXPORT_COMPONENT IPCFrame_BindService : public ::protozero::CppMessageObj {
400  public:
401   enum FieldNumbers {
402     kServiceNameFieldNumber = 1,
403   };
404 
405   IPCFrame_BindService();
406   ~IPCFrame_BindService() override;
407   IPCFrame_BindService(IPCFrame_BindService&&) noexcept;
408   IPCFrame_BindService& operator=(IPCFrame_BindService&&);
409   IPCFrame_BindService(const IPCFrame_BindService&);
410   IPCFrame_BindService& operator=(const IPCFrame_BindService&);
411   bool operator==(const IPCFrame_BindService&) const;
412   bool operator!=(const IPCFrame_BindService& other) const { return !(*this == other); }
413 
414   bool ParseFromArray(const void*, size_t) override;
415   std::string SerializeAsString() const override;
416   std::vector<uint8_t> SerializeAsArray() const override;
417   void Serialize(::protozero::Message*) const;
418 
has_service_name()419   bool has_service_name() const { return _has_field_[1]; }
service_name()420   const std::string& service_name() const { return service_name_; }
set_service_name(const std::string & value)421   void set_service_name(const std::string& value) { service_name_ = value; _has_field_.set(1); }
422 
423  private:
424   std::string service_name_{};
425 
426   // Allows to preserve unknown protobuf fields for compatibility
427   // with future versions of .proto files.
428   std::string unknown_fields_;
429 
430   std::bitset<2> _has_field_{};
431 };
432 
433 }  // namespace perfetto
434 }  // namespace protos
435 }  // namespace gen
436 
437 #endif  // PERFETTO_PROTOS_PROTOS_PERFETTO_IPC_WIRE_PROTOCOL_PROTO_CPP_H_
438