//==========================================================================; // // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY // KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR // PURPOSE. // // Copyright (c) 1992 - 1998 Microsoft Corporation. All Rights Reserved. // //--------------------------------------------------------------------------; /* * Null Filter - A filter that does nothing and has no pins !!! */ class CNoPins : public CBaseFilter { public: // Make one of these static CUnknown * WINAPI CreateInstance(LPUNKNOWN punk, HRESULT *phr); // Constructor CNoPins(LPUNKNOWN pUnk, HRESULT *phr); // Interface methods STDMETHODIMP Run(REFERENCE_TIME tStart); STDMETHODIMP Stop(); // CBaseFilter methods int CNoPins::GetPinCount(); // 0 pins CBasePin *CNoPins::GetPin(int iPin); private: // Locking CCritSec m_Lock; // Don't send EC_COMPLETE twice BOOL m_bComplete; }; /* Our class id */ // NoPins filter object // a8fbb9c0-92e1-11cf-b4d1-00805f6cbbea DEFINE_GUID(CLSID_NoPins, 0xa8fbb9c0, 0x92e1, 0x11cf, 0xb4, 0xd1, 0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea);