face_detection_provider_mac.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. // Copyright 2018 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef SERVICES_SHAPE_DETECTION_FACE_DETECTION_PROVIDER_MAC_H_
  5. #define SERVICES_SHAPE_DETECTION_FACE_DETECTION_PROVIDER_MAC_H_
  6. #include "mojo/public/cpp/bindings/pending_receiver.h"
  7. #include "services/shape_detection/public/mojom/facedetection_provider.mojom.h"
  8. namespace shape_detection {
  9. // The FaceDetectionProviderMac class is a provider that binds an implementation
  10. // of mojom::FaceDetection with Core Image or Vision Framework.
  11. class FaceDetectionProviderMac
  12. : public shape_detection::mojom::FaceDetectionProvider {
  13. public:
  14. FaceDetectionProviderMac();
  15. FaceDetectionProviderMac(const FaceDetectionProviderMac&) = delete;
  16. FaceDetectionProviderMac& operator=(const FaceDetectionProviderMac&) = delete;
  17. ~FaceDetectionProviderMac() override;
  18. // Binds FaceDetection provider receiver to the implementation of
  19. // mojom::FaceDetectionProvider.
  20. static void Create(
  21. mojo::PendingReceiver<mojom::FaceDetectionProvider> receiver);
  22. void CreateFaceDetection(mojo::PendingReceiver<mojom::FaceDetection> receiver,
  23. mojom::FaceDetectorOptionsPtr options) override;
  24. };
  25. } // namespace shape_detection
  26. #endif // SERVICES_SHAPE_DETECTION_FACE_DETECTION_PROVIDER_MAC_H_