blob: a67118ecf5b50e2d7c3fcd283402c51af6c1b313 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SERVICES_SHAPE_DETECTION_FACE_DETECTION_IMPL_MAC_H_
#define SERVICES_SHAPE_DETECTION_FACE_DETECTION_IMPL_MAC_H_
#import <QuartzCore/QuartzCore.h>
#include "base/mac/scoped_nsobject.h"
#include "services/shape_detection/public/interfaces/facedetection.mojom.h"
namespace shape_detection {
class FaceDetectionImplMac : public shape_detection::mojom::FaceDetection {
public:
FaceDetectionImplMac(shape_detection::mojom::FaceDetectorOptionsPtr options);
~FaceDetectionImplMac() override;
void Detect(mojo::ScopedSharedBufferHandle frame_data,
uint32_t width,
uint32_t height,
const shape_detection::mojom::FaceDetection::DetectCallback&
callback) override;
private:
base::scoped_nsobject<CIContext> context_;
base::scoped_nsobject<CIDetector> detector_;
DISALLOW_COPY_AND_ASSIGN(FaceDetectionImplMac);
};
} // namespace shape_detection
#endif // SERVICES_SHAPE_DETECTION_FACE_DETECTION_IMPL_MAC_H_