summaryrefslogtreecommitdiff
path: root/avstream/sampledevicemft/custompin.h
blob: c0c3c35f7fbcfc46aacf11ac79512da559a437cd (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
#pragma once
#include "stdafx.h"
#include "common.h"

//
// Custom Pin is only an input pin in this sample..It is short circuited back
// to the pipeline. This can have uses in implementing depth pins etc.
// It is not exposed to the down stream i.e. captureengine or the
// WinRT code.
// 
class CCustomPin : public CInPin{
public:

    CCustomPin( 
        _In_ IMFAttributes *pAttributes,
        _In_ ULONG PinId,
        _In_ CMultipinMft *pParent
        );
    STDMETHODIMP SendSample(
            _In_ IMFSample *pSample
        );
    STDMETHODIMP_( DeviceStreamState )SetState(
        _In_ DeviceStreamState
        );
};

STDMETHODIMP CheckCustomPin(
    _In_ CInPin * pin,
    _Inout_ PBOOL  isCustom
    );