#include "base/memory/scoped_ptr.h"
#include "device/vibration/vibration_export.h"
#include "device/vibration/vibration_provider_client.h"
+#include "third_party/mojo/src/mojo/public/cpp/bindings/strong_binding.h"
namespace device {
-class DEVICE_VIBRATION_EXPORT VibrationManagerImplEfl : public mojo::InterfaceImpl<VibrationManager> {
+class DEVICE_VIBRATION_EXPORT VibrationManagerImplEfl : public VibrationManager {
public:
- static VibrationManagerImplEfl* Create();
+ explicit VibrationManagerImplEfl(
+ mojo::InterfaceRequest<VibrationManager> request)
+ : binding_(this, request.Pass()) {}
+ ~VibrationManagerImplEfl() override {}
void Vibrate(int64 milliseconds) override;
void Cancel() override;
static void RegisterProviderClient(VibrationProviderClient* provider_client);
private:
+ friend VibrationManagerImpl;
+
+ // The binding between this object and the other end of the pipe.
+ mojo::StrongBinding<VibrationManager> binding_;
+
static scoped_ptr<VibrationProviderClient> provider_client_;
- VibrationManagerImplEfl() {}
- ~VibrationManagerImplEfl() override {}
};
} // namespace device