1 // Copyright 2019 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef SERVICES_DEVICE_BINDER_OVERRIDES_H_
6 #define SERVICES_DEVICE_BINDER_OVERRIDES_H_
8 #include "base/component_export.h"
9 #include "base/functional/callback.h"
10 #include "build/build_config.h"
11 #include "mojo/public/cpp/bindings/pending_receiver.h"
12 #include "services/device/public/mojom/geolocation_context.mojom.h"
13 #include "services/device/public/mojom/pressure_manager.mojom.h"
15 #if BUILDFLAG(IS_ANDROID)
16 #include "services/device/public/mojom/nfc_provider.mojom.h"
22 using GeolocationContextBinder = base::RepeatingCallback<void(
23 mojo::PendingReceiver<device::mojom::GeolocationContext>)>;
24 COMPONENT_EXPORT(DEVICE_SERVICE_BINDER_OVERRIDES)
25 GeolocationContextBinder& GetGeolocationContextBinderOverride();
27 using PressureManagerBinder = base::RepeatingCallback<void(
28 mojo::PendingReceiver<device::mojom::PressureManager>)>;
29 COMPONENT_EXPORT(DEVICE_SERVICE_BINDER_OVERRIDES)
30 PressureManagerBinder& GetPressureManagerBinderOverride();
32 #if BUILDFLAG(IS_ANDROID)
33 using NFCProviderBinder = base::RepeatingCallback<void(
34 mojo::PendingReceiver<device::mojom::NFCProvider>)>;
35 COMPONENT_EXPORT(DEVICE_SERVICE_BINDER_OVERRIDES)
36 NFCProviderBinder& GetNFCProviderBinderOverride();
39 } // namespace internal
42 #endif // SERVICES_DEVICE_BINDER_OVERRIDES_H_