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