blob: 0656fa948d1a0b8f43eb477863762755e9f16207 [file] [log] [blame]
// Autogenerated by the ProtoZero compiler plugin. DO NOT EDIT.
#ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_FTRACE_CGROUP_PROTO_H_
#define PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_FTRACE_CGROUP_PROTO_H_
#include <stddef.h>
#include <stdint.h>
#include "perfetto/protozero/field_writer.h"
#include "perfetto/protozero/message.h"
#include "perfetto/protozero/packed_repeated_fields.h"
#include "perfetto/protozero/proto_decoder.h"
#include "perfetto/protozero/proto_utils.h"
namespace perfetto {
namespace protos {
namespace pbzero {
class CgroupSetupRootFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupSetupRootFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupSetupRootFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupSetupRootFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_ss_mask() const { return at<2>().valid(); }
uint32_t ss_mask() const { return at<2>().as_uint32(); }
bool has_name() const { return at<3>().valid(); }
::protozero::ConstChars name() const { return at<3>().as_string(); }
};
class CgroupSetupRootFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupSetupRootFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kSsMaskFieldNumber = 2,
kNameFieldNumber = 3,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupSetupRootFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupSetupRootFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_SsMask =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint32,
uint32_t,
CgroupSetupRootFtraceEvent>;
static constexpr FieldMetadata_SsMask kSsMask{};
void set_ss_mask(uint32_t value) {
static constexpr uint32_t field_id = FieldMetadata_SsMask::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint32>
::Append(*this, field_id, value);
}
using FieldMetadata_Name =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupSetupRootFtraceEvent>;
static constexpr FieldMetadata_Name kName{};
void set_name(const char* data, size_t size) {
AppendBytes(FieldMetadata_Name::kFieldId, data, size);
}
void set_name(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Name::kFieldId, chars.data, chars.size);
}
void set_name(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Name::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupRenameFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/5, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupRenameFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupRenameFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupRenameFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_id() const { return at<2>().valid(); }
int32_t id() const { return at<2>().as_int32(); }
bool has_cname() const { return at<3>().valid(); }
::protozero::ConstChars cname() const { return at<3>().as_string(); }
bool has_level() const { return at<4>().valid(); }
int32_t level() const { return at<4>().as_int32(); }
bool has_path() const { return at<5>().valid(); }
::protozero::ConstChars path() const { return at<5>().as_string(); }
};
class CgroupRenameFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupRenameFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kIdFieldNumber = 2,
kCnameFieldNumber = 3,
kLevelFieldNumber = 4,
kPathFieldNumber = 5,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupRenameFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRenameFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Id =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRenameFtraceEvent>;
static constexpr FieldMetadata_Id kId{};
void set_id(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Id::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Cname =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupRenameFtraceEvent>;
static constexpr FieldMetadata_Cname kCname{};
void set_cname(const char* data, size_t size) {
AppendBytes(FieldMetadata_Cname::kFieldId, data, size);
}
void set_cname(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Cname::kFieldId, chars.data, chars.size);
}
void set_cname(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Cname::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_Level =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRenameFtraceEvent>;
static constexpr FieldMetadata_Level kLevel{};
void set_level(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Level::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Path =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupRenameFtraceEvent>;
static constexpr FieldMetadata_Path kPath{};
void set_path(const char* data, size_t size) {
AppendBytes(FieldMetadata_Path::kFieldId, data, size);
}
void set_path(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Path::kFieldId, chars.data, chars.size);
}
void set_path(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Path::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupReleaseFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/5, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupReleaseFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupReleaseFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupReleaseFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_id() const { return at<2>().valid(); }
int32_t id() const { return at<2>().as_int32(); }
bool has_cname() const { return at<3>().valid(); }
::protozero::ConstChars cname() const { return at<3>().as_string(); }
bool has_level() const { return at<4>().valid(); }
int32_t level() const { return at<4>().as_int32(); }
bool has_path() const { return at<5>().valid(); }
::protozero::ConstChars path() const { return at<5>().as_string(); }
};
class CgroupReleaseFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupReleaseFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kIdFieldNumber = 2,
kCnameFieldNumber = 3,
kLevelFieldNumber = 4,
kPathFieldNumber = 5,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupReleaseFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupReleaseFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Id =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupReleaseFtraceEvent>;
static constexpr FieldMetadata_Id kId{};
void set_id(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Id::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Cname =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupReleaseFtraceEvent>;
static constexpr FieldMetadata_Cname kCname{};
void set_cname(const char* data, size_t size) {
AppendBytes(FieldMetadata_Cname::kFieldId, data, size);
}
void set_cname(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Cname::kFieldId, chars.data, chars.size);
}
void set_cname(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Cname::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_Level =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupReleaseFtraceEvent>;
static constexpr FieldMetadata_Level kLevel{};
void set_level(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Level::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Path =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupReleaseFtraceEvent>;
static constexpr FieldMetadata_Path kPath{};
void set_path(const char* data, size_t size) {
AppendBytes(FieldMetadata_Path::kFieldId, data, size);
}
void set_path(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Path::kFieldId, chars.data, chars.size);
}
void set_path(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Path::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupDestroyRootFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupDestroyRootFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupDestroyRootFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupDestroyRootFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_ss_mask() const { return at<2>().valid(); }
uint32_t ss_mask() const { return at<2>().as_uint32(); }
bool has_name() const { return at<3>().valid(); }
::protozero::ConstChars name() const { return at<3>().as_string(); }
};
class CgroupDestroyRootFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupDestroyRootFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kSsMaskFieldNumber = 2,
kNameFieldNumber = 3,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupDestroyRootFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupDestroyRootFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_SsMask =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint32,
uint32_t,
CgroupDestroyRootFtraceEvent>;
static constexpr FieldMetadata_SsMask kSsMask{};
void set_ss_mask(uint32_t value) {
static constexpr uint32_t field_id = FieldMetadata_SsMask::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint32>
::Append(*this, field_id, value);
}
using FieldMetadata_Name =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupDestroyRootFtraceEvent>;
static constexpr FieldMetadata_Name kName{};
void set_name(const char* data, size_t size) {
AppendBytes(FieldMetadata_Name::kFieldId, data, size);
}
void set_name(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Name::kFieldId, chars.data, chars.size);
}
void set_name(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Name::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupTransferTasksFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/7, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupTransferTasksFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupTransferTasksFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupTransferTasksFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_dst_root() const { return at<1>().valid(); }
int32_t dst_root() const { return at<1>().as_int32(); }
bool has_dst_id() const { return at<2>().valid(); }
int32_t dst_id() const { return at<2>().as_int32(); }
bool has_pid() const { return at<3>().valid(); }
int32_t pid() const { return at<3>().as_int32(); }
bool has_comm() const { return at<4>().valid(); }
::protozero::ConstChars comm() const { return at<4>().as_string(); }
bool has_cname() const { return at<5>().valid(); }
::protozero::ConstChars cname() const { return at<5>().as_string(); }
bool has_dst_level() const { return at<6>().valid(); }
int32_t dst_level() const { return at<6>().as_int32(); }
bool has_dst_path() const { return at<7>().valid(); }
::protozero::ConstChars dst_path() const { return at<7>().as_string(); }
};
class CgroupTransferTasksFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupTransferTasksFtraceEvent_Decoder;
enum : int32_t {
kDstRootFieldNumber = 1,
kDstIdFieldNumber = 2,
kPidFieldNumber = 3,
kCommFieldNumber = 4,
kCnameFieldNumber = 5,
kDstLevelFieldNumber = 6,
kDstPathFieldNumber = 7,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupTransferTasksFtraceEvent"; }
using FieldMetadata_DstRoot =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_DstRoot kDstRoot{};
void set_dst_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_DstRoot::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_DstId =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_DstId kDstId{};
void set_dst_id(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_DstId::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Pid =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_Pid kPid{};
void set_pid(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Pid::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Comm =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_Comm kComm{};
void set_comm(const char* data, size_t size) {
AppendBytes(FieldMetadata_Comm::kFieldId, data, size);
}
void set_comm(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Comm::kFieldId, chars.data, chars.size);
}
void set_comm(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Comm::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_Cname =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_Cname kCname{};
void set_cname(const char* data, size_t size) {
AppendBytes(FieldMetadata_Cname::kFieldId, data, size);
}
void set_cname(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Cname::kFieldId, chars.data, chars.size);
}
void set_cname(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Cname::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_DstLevel =
::protozero::proto_utils::FieldMetadata<
6,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_DstLevel kDstLevel{};
void set_dst_level(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_DstLevel::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_DstPath =
::protozero::proto_utils::FieldMetadata<
7,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupTransferTasksFtraceEvent>;
static constexpr FieldMetadata_DstPath kDstPath{};
void set_dst_path(const char* data, size_t size) {
AppendBytes(FieldMetadata_DstPath::kFieldId, data, size);
}
void set_dst_path(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_DstPath::kFieldId, chars.data, chars.size);
}
void set_dst_path(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_DstPath::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupRmdirFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/5, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupRmdirFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupRmdirFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupRmdirFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_id() const { return at<2>().valid(); }
int32_t id() const { return at<2>().as_int32(); }
bool has_cname() const { return at<3>().valid(); }
::protozero::ConstChars cname() const { return at<3>().as_string(); }
bool has_level() const { return at<4>().valid(); }
int32_t level() const { return at<4>().as_int32(); }
bool has_path() const { return at<5>().valid(); }
::protozero::ConstChars path() const { return at<5>().as_string(); }
};
class CgroupRmdirFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupRmdirFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kIdFieldNumber = 2,
kCnameFieldNumber = 3,
kLevelFieldNumber = 4,
kPathFieldNumber = 5,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupRmdirFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRmdirFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Id =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRmdirFtraceEvent>;
static constexpr FieldMetadata_Id kId{};
void set_id(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Id::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Cname =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupRmdirFtraceEvent>;
static constexpr FieldMetadata_Cname kCname{};
void set_cname(const char* data, size_t size) {
AppendBytes(FieldMetadata_Cname::kFieldId, data, size);
}
void set_cname(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Cname::kFieldId, chars.data, chars.size);
}
void set_cname(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Cname::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_Level =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRmdirFtraceEvent>;
static constexpr FieldMetadata_Level kLevel{};
void set_level(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Level::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Path =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupRmdirFtraceEvent>;
static constexpr FieldMetadata_Path kPath{};
void set_path(const char* data, size_t size) {
AppendBytes(FieldMetadata_Path::kFieldId, data, size);
}
void set_path(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Path::kFieldId, chars.data, chars.size);
}
void set_path(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Path::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupRemountFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupRemountFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupRemountFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupRemountFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_ss_mask() const { return at<2>().valid(); }
uint32_t ss_mask() const { return at<2>().as_uint32(); }
bool has_name() const { return at<3>().valid(); }
::protozero::ConstChars name() const { return at<3>().as_string(); }
};
class CgroupRemountFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupRemountFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kSsMaskFieldNumber = 2,
kNameFieldNumber = 3,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupRemountFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupRemountFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_SsMask =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint32,
uint32_t,
CgroupRemountFtraceEvent>;
static constexpr FieldMetadata_SsMask kSsMask{};
void set_ss_mask(uint32_t value) {
static constexpr uint32_t field_id = FieldMetadata_SsMask::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint32>
::Append(*this, field_id, value);
}
using FieldMetadata_Name =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupRemountFtraceEvent>;
static constexpr FieldMetadata_Name kName{};
void set_name(const char* data, size_t size) {
AppendBytes(FieldMetadata_Name::kFieldId, data, size);
}
void set_name(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Name::kFieldId, chars.data, chars.size);
}
void set_name(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Name::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupMkdirFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/5, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupMkdirFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupMkdirFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupMkdirFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_root() const { return at<1>().valid(); }
int32_t root() const { return at<1>().as_int32(); }
bool has_id() const { return at<2>().valid(); }
int32_t id() const { return at<2>().as_int32(); }
bool has_cname() const { return at<3>().valid(); }
::protozero::ConstChars cname() const { return at<3>().as_string(); }
bool has_level() const { return at<4>().valid(); }
int32_t level() const { return at<4>().as_int32(); }
bool has_path() const { return at<5>().valid(); }
::protozero::ConstChars path() const { return at<5>().as_string(); }
};
class CgroupMkdirFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupMkdirFtraceEvent_Decoder;
enum : int32_t {
kRootFieldNumber = 1,
kIdFieldNumber = 2,
kCnameFieldNumber = 3,
kLevelFieldNumber = 4,
kPathFieldNumber = 5,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupMkdirFtraceEvent"; }
using FieldMetadata_Root =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupMkdirFtraceEvent>;
static constexpr FieldMetadata_Root kRoot{};
void set_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Root::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Id =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupMkdirFtraceEvent>;
static constexpr FieldMetadata_Id kId{};
void set_id(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Id::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Cname =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupMkdirFtraceEvent>;
static constexpr FieldMetadata_Cname kCname{};
void set_cname(const char* data, size_t size) {
AppendBytes(FieldMetadata_Cname::kFieldId, data, size);
}
void set_cname(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Cname::kFieldId, chars.data, chars.size);
}
void set_cname(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Cname::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_Level =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupMkdirFtraceEvent>;
static constexpr FieldMetadata_Level kLevel{};
void set_level(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Level::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Path =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupMkdirFtraceEvent>;
static constexpr FieldMetadata_Path kPath{};
void set_path(const char* data, size_t size) {
AppendBytes(FieldMetadata_Path::kFieldId, data, size);
}
void set_path(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Path::kFieldId, chars.data, chars.size);
}
void set_path(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Path::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
class CgroupAttachTaskFtraceEvent_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/7, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
CgroupAttachTaskFtraceEvent_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit CgroupAttachTaskFtraceEvent_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit CgroupAttachTaskFtraceEvent_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_dst_root() const { return at<1>().valid(); }
int32_t dst_root() const { return at<1>().as_int32(); }
bool has_dst_id() const { return at<2>().valid(); }
int32_t dst_id() const { return at<2>().as_int32(); }
bool has_pid() const { return at<3>().valid(); }
int32_t pid() const { return at<3>().as_int32(); }
bool has_comm() const { return at<4>().valid(); }
::protozero::ConstChars comm() const { return at<4>().as_string(); }
bool has_cname() const { return at<5>().valid(); }
::protozero::ConstChars cname() const { return at<5>().as_string(); }
bool has_dst_level() const { return at<6>().valid(); }
int32_t dst_level() const { return at<6>().as_int32(); }
bool has_dst_path() const { return at<7>().valid(); }
::protozero::ConstChars dst_path() const { return at<7>().as_string(); }
};
class CgroupAttachTaskFtraceEvent : public ::protozero::Message {
public:
using Decoder = CgroupAttachTaskFtraceEvent_Decoder;
enum : int32_t {
kDstRootFieldNumber = 1,
kDstIdFieldNumber = 2,
kPidFieldNumber = 3,
kCommFieldNumber = 4,
kCnameFieldNumber = 5,
kDstLevelFieldNumber = 6,
kDstPathFieldNumber = 7,
};
static constexpr const char* GetName() { return ".perfetto.protos.CgroupAttachTaskFtraceEvent"; }
using FieldMetadata_DstRoot =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_DstRoot kDstRoot{};
void set_dst_root(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_DstRoot::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_DstId =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_DstId kDstId{};
void set_dst_id(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_DstId::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Pid =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_Pid kPid{};
void set_pid(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_Pid::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_Comm =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_Comm kComm{};
void set_comm(const char* data, size_t size) {
AppendBytes(FieldMetadata_Comm::kFieldId, data, size);
}
void set_comm(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Comm::kFieldId, chars.data, chars.size);
}
void set_comm(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Comm::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_Cname =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_Cname kCname{};
void set_cname(const char* data, size_t size) {
AppendBytes(FieldMetadata_Cname::kFieldId, data, size);
}
void set_cname(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_Cname::kFieldId, chars.data, chars.size);
}
void set_cname(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_Cname::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
using FieldMetadata_DstLevel =
::protozero::proto_utils::FieldMetadata<
6,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_DstLevel kDstLevel{};
void set_dst_level(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_DstLevel::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_DstPath =
::protozero::proto_utils::FieldMetadata<
7,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kString,
std::string,
CgroupAttachTaskFtraceEvent>;
static constexpr FieldMetadata_DstPath kDstPath{};
void set_dst_path(const char* data, size_t size) {
AppendBytes(FieldMetadata_DstPath::kFieldId, data, size);
}
void set_dst_path(::protozero::ConstChars chars) {
AppendBytes(FieldMetadata_DstPath::kFieldId, chars.data, chars.size);
}
void set_dst_path(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_DstPath::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kString>
::Append(*this, field_id, value);
}
};
} // Namespace.
} // Namespace.
} // Namespace.
#endif // Include guard.