summaryrefslogtreecommitdiff
path: root/avstream/avscamera/sys/AvsCameraFilter.h
blob: ce81cedeaf4a82da0036b45edebf3b731bf0e783 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/**************************************************************************

    A/V Stream Camera Sample

    Copyright (c) 2015, Microsoft Corporation.

    File:

        AvsCameraFilter.h

    Abstract:

        Filter class implementation.  Derived from CCapturefilter.
        This class overloads basic filter behavior for our device.

    History:

        created 02/24/2015

**************************************************************************/

class CAvsCameraFilter : public CCaptureFilter
{
public:
    //
    //  Ctor
    //
    CAvsCameraFilter(
        _In_    PKSFILTER Filter
    );

    //
    //  Dtor
    //
    virtual
    ~CAvsCameraFilter ();

    //
    // DispatchCreate():
    //
    // This is the filter creation dispatch for the capture filter.  It
    // creates the CCaptureFilter object, associates it with the AVStream
    // object, and bags it for easy cleanup later.
    //
    static
    NTSTATUS
    DispatchCreate (
        _In_    PKSFILTER Filter,
        _In_    PIRP Irp
    );

    //  Example of adding a new, custom property.
    DECLARE_PROPERTY_HANDLERS( ULONG, CustomDummy )

protected:
    DWORD       m_CustomValue;
};