#ifndef COMPONENTS_DEVICE_SIGNALS_CORE_COMMON_MOJOM_SYSTEM_SIGNALS_MOJOM_SHARED_H_
#define COMPONENTS_DEVICE_SIGNALS_CORE_COMMON_MOJOM_SYSTEM_SIGNALS_MOJOM_SHARED_H_
#include <stdint.h>
#include <functional>
#include <iosfwd>
#include <type_traits>
#include <utility>
#include "mojo/public/cpp/bindings/array_data_view.h"
#include "mojo/public/cpp/bindings/enum_traits.h"
#include "mojo/public/cpp/bindings/interface_data_view.h"
#include "mojo/public/cpp/bindings/lib/bindings_internal.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/map_data_view.h"
#include "mojo/public/cpp/bindings/string_data_view.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"
#include "components/device_signals/core/common/mojom/system_signals.mojom-shared-internal.h"
#include "sandbox/policy/mojom/context.mojom-shared.h"
#include "sandbox/policy/mojom/sandbox.mojom-shared.h"
#include "mojo/public/mojom/base/byte_string.mojom-shared.h"
#include "mojo/public/mojom/base/file_path.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
namespace device_signals::mojom {
class ExecutableMetadataDataView;
class FileSystemItemDataView;
class FileSystemItemRequestDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::device_signals::mojom::ExecutableMetadataDataView> { … };
template <>
struct MojomTypeTraits<::device_signals::mojom::FileSystemItemDataView> { … };
template <>
struct MojomTypeTraits<::device_signals::mojom::FileSystemItemRequestDataView> { … };
}
}
namespace device_signals::mojom {
enum class PresenceValue : int32_t { … };
std::ostream& operator<<(std::ostream& os, PresenceValue value);
inline bool IsKnownEnumValue(PresenceValue value) { … }
class SystemSignalsServiceInterfaceBase { … };
SystemSignalsServicePtrDataView;
SystemSignalsServiceRequestDataView;
SystemSignalsServiceAssociatedPtrInfoDataView;
SystemSignalsServiceAssociatedRequestDataView;
class ExecutableMetadataDataView { … };
class FileSystemItemDataView { … };
class FileSystemItemRequestDataView { … };
}
namespace std {
template <>
struct hash<::device_signals::mojom::PresenceValue>
: public mojo::internal::EnumHashImpl<::device_signals::mojom::PresenceValue> { … };
}
namespace mojo {
namespace internal {
Serializer< ::device_signals::mojom::PresenceValue, MaybeConstUserType>;
}
namespace internal {
Serializer< ::device_signals::mojom::ExecutableMetadataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::device_signals::mojom::FileSystemItemDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::device_signals::mojom::FileSystemItemRequestDataView, MaybeConstUserType>;
}
}
namespace device_signals::mojom {
inline void ExecutableMetadataDataView::GetPublicKeysHashesDataView(
mojo::ArrayDataView<::mojo_base::mojom::ByteStringDataView>* output) { … }
inline void ExecutableMetadataDataView::GetProductNameDataView(
mojo::StringDataView* output) { … }
inline void ExecutableMetadataDataView::GetVersionDataView(
mojo::StringDataView* output) { … }
inline void ExecutableMetadataDataView::GetSubjectNameDataView(
mojo::StringDataView* output) { … }
inline void FileSystemItemDataView::GetFilePathDataView(
::mojo_base::mojom::FilePathDataView* output) { … }
inline void FileSystemItemDataView::GetSha256HashDataView(
::mojo_base::mojom::ByteStringDataView* output) { … }
inline void FileSystemItemDataView::GetExecutableMetadataDataView(
ExecutableMetadataDataView* output) { … }
inline void FileSystemItemRequestDataView::GetFilePathDataView(
::mojo_base::mojom::FilePathDataView* output) { … }
}
namespace perfetto {
template <>
struct TraceFormatTraits<::device_signals::mojom::PresenceValue> { … };
}
#endif