Note: We no longer publish the latest version of our code here. We primarily use a kumc-bmi github organization. The heron ETL repository, in particular, is not public. Peers in the informatics community should see MultiSiteDev for details on requesting access.

source: webrtc/webrtc/modules/video_capture/windows/video_capture_ds.h @ 0:4bda6873e34c

pub_scrub_3792 tip
Last change on this file since 0:4bda6873e34c was 0:4bda6873e34c, checked in by Michael Prittie <mprittie@…>, 6 years ago

Scrubbed password for publication.

File size: 2.4 KB
Line 
1/*
2 *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
4 *  Use of this source code is governed by a BSD-style license
5 *  that can be found in the LICENSE file in the root of the source
6 *  tree. An additional intellectual property rights grant can be found
7 *  in the file PATENTS.  All contributing project authors may
8 *  be found in the AUTHORS file in the root of the source tree.
9 */
10
11#ifndef WEBRTC_MODULES_VIDEO_CAPTURE_MAIN_SOURCE_WINDOWS_VIDEO_CAPTURE_DS_H_
12#define WEBRTC_MODULES_VIDEO_CAPTURE_MAIN_SOURCE_WINDOWS_VIDEO_CAPTURE_DS_H_
13
14#include "webrtc/modules/video_capture/video_capture_impl.h"
15#include "webrtc/modules/video_capture/windows/device_info_ds.h"
16
17#define CAPTURE_FILTER_NAME L"VideoCaptureFilter"
18#define SINK_FILTER_NAME L"SinkFilter"
19
20namespace webrtc
21{
22namespace videocapturemodule
23{
24// Forward declaraion
25class CaptureSinkFilter;
26
27class VideoCaptureDS: public VideoCaptureImpl
28{
29public:
30    VideoCaptureDS(const int32_t id);
31
32    virtual int32_t Init(const int32_t id, const char* deviceUniqueIdUTF8);
33
34    /*************************************************************************
35     *
36     *   Start/Stop
37     *
38     *************************************************************************/
39    virtual int32_t
40        StartCapture(const VideoCaptureCapability& capability);
41    virtual int32_t StopCapture();
42
43    /**************************************************************************
44     *
45     *   Properties of the set device
46     *
47     **************************************************************************/
48
49    virtual bool CaptureStarted();
50    virtual int32_t CaptureSettings(VideoCaptureCapability& settings);
51
52protected:
53    virtual ~VideoCaptureDS();
54
55    // Help functions
56
57    int32_t
58        SetCameraOutput(const VideoCaptureCapability& requestedCapability);
59    int32_t DisconnectGraph();
60    HRESULT VideoCaptureDS::ConnectDVCamera();
61
62    DeviceInfoDS _dsInfo;
63
64    IBaseFilter* _captureFilter;
65    IGraphBuilder* _graphBuilder;
66    IMediaControl* _mediaControl;
67    CaptureSinkFilter* _sinkFilter;
68    IPin* _inputSendPin;
69    IPin* _outputCapturePin;
70
71    // Microsoft DV interface (external DV cameras)
72    IBaseFilter* _dvFilter;
73    IPin* _inputDvPin;
74    IPin* _outputDvPin;
75
76};
77}  // namespace videocapturemodule
78}  // namespace webrtc
79#endif // WEBRTC_MODULES_VIDEO_CAPTURE_MAIN_SOURCE_WINDOWS_VIDEO_CAPTURE_DS_H_
Note: See TracBrowser for help on using the repository browser.