1 // Autogenerated by the ProtoZero compiler plugin. DO NOT EDIT. 2 3 #ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_ANDROID_VIEW_SURFACECONTROL_PROTO_H_ 4 #define PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_ANDROID_VIEW_SURFACECONTROL_PROTO_H_ 5 6 #include <stddef.h> 7 #include <stdint.h> 8 9 #include "perfetto/protozero/field_writer.h" 10 #include "perfetto/protozero/message.h" 11 #include "perfetto/protozero/packed_repeated_fields.h" 12 #include "perfetto/protozero/proto_decoder.h" 13 #include "perfetto/protozero/proto_utils.h" 14 15 16 namespace perfetto { 17 namespace protos { 18 namespace pbzero { 19 20 class SurfaceControlProto_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> { 21 public: SurfaceControlProto_Decoder(const uint8_t * data,size_t len)22 SurfaceControlProto_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {} SurfaceControlProto_Decoder(const std::string & raw)23 explicit SurfaceControlProto_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {} SurfaceControlProto_Decoder(const::protozero::ConstBytes & raw)24 explicit SurfaceControlProto_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {} has_hash_code()25 bool has_hash_code() const { return at<1>().valid(); } hash_code()26 int32_t hash_code() const { return at<1>().as_int32(); } has_name()27 bool has_name() const { return at<2>().valid(); } name()28 ::protozero::ConstChars name() const { return at<2>().as_string(); } has_layerid()29 bool has_layerid() const { return at<3>().valid(); } layerid()30 int32_t layerid() const { return at<3>().as_int32(); } 31 }; 32 33 class SurfaceControlProto : public ::protozero::Message { 34 public: 35 using Decoder = SurfaceControlProto_Decoder; 36 enum : int32_t { 37 kHashCodeFieldNumber = 1, 38 kNameFieldNumber = 2, 39 kLayerIdFieldNumber = 3, 40 }; GetName()41 static constexpr const char* GetName() { return ".perfetto.protos.SurfaceControlProto"; } 42 43 44 using FieldMetadata_HashCode = 45 ::protozero::proto_utils::FieldMetadata< 46 1, 47 ::protozero::proto_utils::RepetitionType::kNotRepeated, 48 ::protozero::proto_utils::ProtoSchemaType::kInt32, 49 int32_t, 50 SurfaceControlProto>; 51 52 static constexpr FieldMetadata_HashCode kHashCode{}; set_hash_code(int32_t value)53 void set_hash_code(int32_t value) { 54 static constexpr uint32_t field_id = FieldMetadata_HashCode::kFieldId; 55 // Call the appropriate protozero::Message::Append(field_id, ...) 56 // method based on the type of the field. 57 ::protozero::internal::FieldWriter< 58 ::protozero::proto_utils::ProtoSchemaType::kInt32> 59 ::Append(*this, field_id, value); 60 } 61 62 using FieldMetadata_Name = 63 ::protozero::proto_utils::FieldMetadata< 64 2, 65 ::protozero::proto_utils::RepetitionType::kNotRepeated, 66 ::protozero::proto_utils::ProtoSchemaType::kString, 67 std::string, 68 SurfaceControlProto>; 69 70 static constexpr FieldMetadata_Name kName{}; set_name(const char * data,size_t size)71 void set_name(const char* data, size_t size) { 72 AppendBytes(FieldMetadata_Name::kFieldId, data, size); 73 } set_name(::protozero::ConstChars chars)74 void set_name(::protozero::ConstChars chars) { 75 AppendBytes(FieldMetadata_Name::kFieldId, chars.data, chars.size); 76 } set_name(std::string value)77 void set_name(std::string value) { 78 static constexpr uint32_t field_id = FieldMetadata_Name::kFieldId; 79 // Call the appropriate protozero::Message::Append(field_id, ...) 80 // method based on the type of the field. 81 ::protozero::internal::FieldWriter< 82 ::protozero::proto_utils::ProtoSchemaType::kString> 83 ::Append(*this, field_id, value); 84 } 85 86 using FieldMetadata_LayerId = 87 ::protozero::proto_utils::FieldMetadata< 88 3, 89 ::protozero::proto_utils::RepetitionType::kNotRepeated, 90 ::protozero::proto_utils::ProtoSchemaType::kInt32, 91 int32_t, 92 SurfaceControlProto>; 93 94 static constexpr FieldMetadata_LayerId kLayerId{}; set_layerid(int32_t value)95 void set_layerid(int32_t value) { 96 static constexpr uint32_t field_id = FieldMetadata_LayerId::kFieldId; 97 // Call the appropriate protozero::Message::Append(field_id, ...) 98 // method based on the type of the field. 99 ::protozero::internal::FieldWriter< 100 ::protozero::proto_utils::ProtoSchemaType::kInt32> 101 ::Append(*this, field_id, value); 102 } 103 }; 104 105 } // Namespace. 106 } // Namespace. 107 } // Namespace. 108 #endif // Include guard. 109