Thu, 15 Jan 2015 15:55:04 +0100
Back out 97036ab72558 which inappropriately compared turds to third parties.
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
3 * You can obtain one at http://mozilla.org/MPL/2.0/. */
5 #ifndef DOM_CAMERA_DOMCAMERACONTROLLISTENER_H
6 #define DOM_CAMERA_DOMCAMERACONTROLLISTENER_H
8 #include "nsProxyRelease.h"
9 #include "CameraControlListener.h"
11 namespace mozilla {
13 class nsDOMCameraControl;
14 class CameraPreviewMediaStream;
16 class DOMCameraControlListener : public CameraControlListener
17 {
18 public:
19 DOMCameraControlListener(nsDOMCameraControl* aDOMCameraControl, CameraPreviewMediaStream* aStream);
21 virtual void OnAutoFocusComplete(bool aAutoFocusSucceeded) MOZ_OVERRIDE;
22 virtual void OnAutoFocusMoving(bool aIsMoving) MOZ_OVERRIDE;
23 virtual void OnFacesDetected(const nsTArray<ICameraControl::Face>& aFaces) MOZ_OVERRIDE;
24 virtual void OnTakePictureComplete(uint8_t* aData, uint32_t aLength, const nsAString& aMimeType) MOZ_OVERRIDE;
26 virtual void OnHardwareStateChange(HardwareState aState) MOZ_OVERRIDE;
27 virtual void OnPreviewStateChange(PreviewState aState) MOZ_OVERRIDE;
28 virtual void OnRecorderStateChange(RecorderState aState, int32_t aStatus, int32_t aTrackNum) MOZ_OVERRIDE;
29 virtual void OnConfigurationChange(const CameraListenerConfiguration& aConfiguration) MOZ_OVERRIDE;
30 virtual void OnShutter() MOZ_OVERRIDE;
31 virtual bool OnNewPreviewFrame(layers::Image* aImage, uint32_t aWidth, uint32_t aHeight) MOZ_OVERRIDE;
32 virtual void OnError(CameraErrorContext aContext, CameraError aError) MOZ_OVERRIDE;
34 protected:
35 virtual ~DOMCameraControlListener();
37 nsMainThreadPtrHandle<nsDOMCameraControl> mDOMCameraControl;
38 CameraPreviewMediaStream* mStream;
40 class DOMCallback;
42 private:
43 DOMCameraControlListener(const DOMCameraControlListener&) MOZ_DELETE;
44 DOMCameraControlListener& operator=(const DOMCameraControlListener&) MOZ_DELETE;
45 };
47 } // namespace mozilla
49 #endif // DOM_CAMERA_DOMCAMERACONTROLLISTENER_H