Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(80)

Side by Side Diff: third_party/WebKit/Source/modules/shapedetection/FaceDetector.h

Issue 2455973007: FaceDetection: add support for <video> input (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef FaceDetector_h 5 #ifndef FaceDetector_h
6 #define FaceDetector_h 6 #define FaceDetector_h
7 7
8 #include "bindings/core/v8/ScriptPromise.h" 8 #include "bindings/core/v8/ScriptPromise.h"
9 #include "bindings/core/v8/ScriptPromiseResolver.h" 9 #include "bindings/core/v8/ScriptPromiseResolver.h"
10 #include "bindings/core/v8/ScriptWrappable.h" 10 #include "bindings/core/v8/ScriptWrappable.h"
11 #include "modules/ModulesExport.h" 11 #include "modules/ModulesExport.h"
12 #include "modules/canvas2d/CanvasRenderingContext2D.h" 12 #include "modules/canvas2d/CanvasRenderingContext2D.h"
13 #include "public/platform/modules/shapedetection/shapedetection.mojom-blink.h" 13 #include "public/platform/modules/shapedetection/shapedetection.mojom-blink.h"
14 #include "wtf/CheckedNumeric.h"
14 15
15 namespace blink { 16 namespace blink {
16 17
17 class LocalFrame; 18 class LocalFrame;
18 19
19 class MODULES_EXPORT FaceDetector final 20 class MODULES_EXPORT FaceDetector final
20 : public GarbageCollectedFinalized<FaceDetector>, 21 : public GarbageCollectedFinalized<FaceDetector>,
21 public ScriptWrappable { 22 public ScriptWrappable {
22 DEFINE_WRAPPERTYPEINFO(); 23 DEFINE_WRAPPERTYPEINFO();
23 24
24 public: 25 public:
25 static FaceDetector* create(ScriptState*); 26 static FaceDetector* create(ScriptState*);
26 27
27 ScriptPromise detect(ScriptState*, const CanvasImageSourceUnion&); 28 ScriptPromise detect(ScriptState*, const CanvasImageSourceUnion&);
28 DECLARE_TRACE(); 29 DECLARE_TRACE();
29 30
30 private: 31 private:
31 explicit FaceDetector(LocalFrame&); 32 explicit FaceDetector(LocalFrame&);
32 ScriptPromise detectFacesOnImageElement(ScriptPromiseResolver*, 33 ScriptPromise detectFacesOnImageElement(ScriptPromiseResolver*,
33 const HTMLImageElement*); 34 const HTMLImageElement*);
34 ScriptPromise detectFacesOnImageBitmap(ScriptPromiseResolver*, ImageBitmap*); 35 ScriptPromise detectFacesOnImageBitmap(ScriptPromiseResolver*, ImageBitmap*);
36 ScriptPromise detectFacesOnVideoElement(ScriptPromiseResolver*,
37 const HTMLVideoElement*);
35 38
39 ScriptPromise detectFacesOnData(ScriptPromiseResolver*,
40 uint8_t* data,
41 WTF::CheckedNumeric<int> size,
42 int width,
43 int height);
36 void onDetectFace(ScriptPromiseResolver*, 44 void onDetectFace(ScriptPromiseResolver*,
37 mojom::blink::FaceDetectionResultPtr); 45 mojom::blink::FaceDetectionResultPtr);
38 46
39 mojom::blink::ShapeDetectionPtr m_service; 47 mojom::blink::ShapeDetectionPtr m_service;
40 48
41 HeapHashSet<Member<ScriptPromiseResolver>> m_serviceRequests; 49 HeapHashSet<Member<ScriptPromiseResolver>> m_serviceRequests;
42 }; 50 };
43 51
44 } // namespace blink 52 } // namespace blink
45 53
46 #endif // FaceDetector_h 54 #endif // FaceDetector_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698