#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "services/device/public/mojom/geolocation_internals.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "services/device/public/mojom/geolocation_internals.mojom-params-data.h"
#include "services/device/public/mojom/geolocation_internals.mojom-shared-message-ids.h"
#include "services/device/public/mojom/geolocation_internals.mojom-import-headers.h"
#include "services/device/public/mojom/geolocation_internals.mojom-test-utils.h"
namespace device::mojom {
AccessPointData::AccessPointData()
: … { … }
AccessPointData::AccessPointData(
const std::string& mac_address_in,
int32_t radio_signal_strength_in,
int32_t channel_in,
int32_t signal_to_noise_in,
std::optional<::base::Time> timestamp_in)
: … { … }
AccessPointData::~AccessPointData() = default;
void AccessPointData::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool AccessPointData::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
NetworkLocationDiagnostics::NetworkLocationDiagnostics()
: … { … }
NetworkLocationDiagnostics::NetworkLocationDiagnostics(
std::vector<AccessPointDataPtr> access_point_data_in,
std::optional<::base::Time> wifi_timestamp_in)
: … { … }
NetworkLocationDiagnostics::~NetworkLocationDiagnostics() = default;
void NetworkLocationDiagnostics::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool NetworkLocationDiagnostics::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
PositionCacheDiagnostics::PositionCacheDiagnostics()
: … { … }
PositionCacheDiagnostics::PositionCacheDiagnostics(
uint32_t cache_size_in,
std::optional<::base::Time> last_hit_in,
std::optional<::base::Time> last_miss_in,
std::optional<double> hit_rate_in,
::device::mojom::GeopositionResultPtr last_network_result_in)
: … { … }
PositionCacheDiagnostics::~PositionCacheDiagnostics() = default;
void PositionCacheDiagnostics::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool PositionCacheDiagnostics::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WifiPollingPolicyDiagnostics::WifiPollingPolicyDiagnostics()
: … { … }
WifiPollingPolicyDiagnostics::WifiPollingPolicyDiagnostics(
std::optional<::base::Time> interval_start_in,
::base::TimeDelta interval_duration_in,
::base::TimeDelta polling_interval_in,
::base::TimeDelta default_interval_in,
::base::TimeDelta no_change_interval_in,
::base::TimeDelta two_no_change_interval_in,
::base::TimeDelta no_wifi_interval_in)
: … { … }
WifiPollingPolicyDiagnostics::~WifiPollingPolicyDiagnostics() = default;
void WifiPollingPolicyDiagnostics::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool WifiPollingPolicyDiagnostics::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
GeolocationDiagnostics::GeolocationDiagnostics()
: … { … }
GeolocationDiagnostics::GeolocationDiagnostics(
GeolocationDiagnostics::ProviderState provider_state_in,
NetworkLocationDiagnosticsPtr network_location_diagnostics_in,
PositionCacheDiagnosticsPtr position_cache_diagnostics_in,
WifiPollingPolicyDiagnosticsPtr wifi_polling_policy_diagnostics_in)
: … { … }
GeolocationDiagnostics::~GeolocationDiagnostics() = default;
void GeolocationDiagnostics::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool GeolocationDiagnostics::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
NetworkLocationResponse::NetworkLocationResponse()
: … { … }
NetworkLocationResponse::NetworkLocationResponse(
double latitude_in,
double longitude_in,
std::optional<double> accuracy_in)
: … { … }
NetworkLocationResponse::~NetworkLocationResponse() = default;
void NetworkLocationResponse::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool NetworkLocationResponse::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char GeolocationInternalsObserver::Name_[] = …;
GeolocationInternalsObserver::IPCStableHashFunction GeolocationInternalsObserver::MessageToMethodInfo_(mojo::Message& message) { … }
const char* GeolocationInternalsObserver::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t GeolocationInternalsObserver::OnDiagnosticsChanged_Sym::IPCStableHash() { … }
uint32_t GeolocationInternalsObserver::OnNetworkLocationRequested_Sym::IPCStableHash() { … }
uint32_t GeolocationInternalsObserver::OnNetworkLocationReceived_Sym::IPCStableHash() { … }
# endif
GeolocationInternalsObserverProxy::GeolocationInternalsObserverProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void GeolocationInternalsObserverProxy::OnDiagnosticsChanged(
GeolocationDiagnosticsPtr in_diagnostics) { … }
void GeolocationInternalsObserverProxy::OnNetworkLocationRequested(
std::vector<AccessPointDataPtr> in_access_point_data) { … }
void GeolocationInternalsObserverProxy::OnNetworkLocationReceived(
NetworkLocationResponsePtr in_response) { … }
bool GeolocationInternalsObserverStubDispatch::Accept(
GeolocationInternalsObserver* impl,
mojo::Message* message) { … }
bool GeolocationInternalsObserverStubDispatch::AcceptWithResponder(
GeolocationInternalsObserver* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kGeolocationInternalsObserverValidationInfo[] = …;
bool GeolocationInternalsObserverRequestValidator::Accept(mojo::Message* message) { … }
const char GeolocationInternals::Name_[] = …;
GeolocationInternals::IPCStableHashFunction GeolocationInternals::MessageToMethodInfo_(mojo::Message& message) { … }
const char* GeolocationInternals::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t GeolocationInternals::AddInternalsObserver_Sym::IPCStableHash() { … }
# endif
class GeolocationInternals_AddInternalsObserver_ForwardToCallback
: public mojo::MessageReceiver { … };
GeolocationInternalsProxy::GeolocationInternalsProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void GeolocationInternalsProxy::AddInternalsObserver(
::mojo::PendingRemote<GeolocationInternalsObserver> in_observer, AddInternalsObserverCallback callback) { … }
class GeolocationInternals_AddInternalsObserver_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool GeolocationInternals_AddInternalsObserver_ForwardToCallback::Accept(
mojo::Message* message) { … }
void GeolocationInternals_AddInternalsObserver_ProxyToResponder::Run(
GeolocationDiagnosticsPtr in_diagnostics) { … }
bool GeolocationInternalsStubDispatch::Accept(
GeolocationInternals* impl,
mojo::Message* message) { … }
bool GeolocationInternalsStubDispatch::AcceptWithResponder(
GeolocationInternals* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kGeolocationInternalsValidationInfo[] = …;
bool GeolocationInternalsRequestValidator::Accept(mojo::Message* message) { … }
bool GeolocationInternalsResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::device::mojom::AccessPointData::DataView, ::device::mojom::AccessPointDataPtr>::Read(
::device::mojom::AccessPointData::DataView input,
::device::mojom::AccessPointDataPtr* output) { … }
bool StructTraits<::device::mojom::NetworkLocationDiagnostics::DataView, ::device::mojom::NetworkLocationDiagnosticsPtr>::Read(
::device::mojom::NetworkLocationDiagnostics::DataView input,
::device::mojom::NetworkLocationDiagnosticsPtr* output) { … }
bool StructTraits<::device::mojom::PositionCacheDiagnostics::DataView, ::device::mojom::PositionCacheDiagnosticsPtr>::Read(
::device::mojom::PositionCacheDiagnostics::DataView input,
::device::mojom::PositionCacheDiagnosticsPtr* output) { … }
bool StructTraits<::device::mojom::WifiPollingPolicyDiagnostics::DataView, ::device::mojom::WifiPollingPolicyDiagnosticsPtr>::Read(
::device::mojom::WifiPollingPolicyDiagnostics::DataView input,
::device::mojom::WifiPollingPolicyDiagnosticsPtr* output) { … }
bool StructTraits<::device::mojom::GeolocationDiagnostics::DataView, ::device::mojom::GeolocationDiagnosticsPtr>::Read(
::device::mojom::GeolocationDiagnostics::DataView input,
::device::mojom::GeolocationDiagnosticsPtr* output) { … }
bool StructTraits<::device::mojom::NetworkLocationResponse::DataView, ::device::mojom::NetworkLocationResponsePtr>::Read(
::device::mojom::NetworkLocationResponse::DataView input,
::device::mojom::NetworkLocationResponsePtr* output) { … }
}
namespace device::mojom {
void GeolocationInternalsObserverInterceptorForTesting::OnDiagnosticsChanged(GeolocationDiagnosticsPtr diagnostics) { … }
void GeolocationInternalsObserverInterceptorForTesting::OnNetworkLocationRequested(std::vector<AccessPointDataPtr> access_point_data) { … }
void GeolocationInternalsObserverInterceptorForTesting::OnNetworkLocationReceived(NetworkLocationResponsePtr response) { … }
GeolocationInternalsObserverAsyncWaiter::GeolocationInternalsObserverAsyncWaiter(
GeolocationInternalsObserver* proxy) : … { … }
GeolocationInternalsObserverAsyncWaiter::~GeolocationInternalsObserverAsyncWaiter() = default;
void GeolocationInternalsInterceptorForTesting::AddInternalsObserver(::mojo::PendingRemote<GeolocationInternalsObserver> observer, AddInternalsObserverCallback callback) { … }
GeolocationInternalsAsyncWaiter::GeolocationInternalsAsyncWaiter(
GeolocationInternals* proxy) : … { … }
GeolocationInternalsAsyncWaiter::~GeolocationInternalsAsyncWaiter() = default;
void GeolocationInternalsAsyncWaiter::AddInternalsObserver(
::mojo::PendingRemote<GeolocationInternalsObserver> observer, GeolocationDiagnosticsPtr* out_diagnostics) { … }
GeolocationDiagnosticsPtr GeolocationInternalsAsyncWaiter::AddInternalsObserver(
::mojo::PendingRemote<GeolocationInternalsObserver> observer) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif