mirror of
https://github.com/libretro/pcsx2.git
synced 2024-12-02 23:26:43 +00:00
ab9bdb009b
Update it to the version found at https://github.com/Microsoft/Windows-classic-samples , which is in an MIT licensed repo, and add the LICENSE file (edited to remove the SIL Open Font LICENSE part since that doesn't apply). Some modifications have been made to reduce the diff/stop git complaining (not including any file that wasn't in the previous version and removing the related header includes in streams.h, and fixing some but not all of the whitespace issues).
57 lines
1.5 KiB
C++
57 lines
1.5 KiB
C++
//------------------------------------------------------------------------------
|
|
// File: AMExtra.h
|
|
//
|
|
// Desc: DirectShow base classes.
|
|
//
|
|
// Copyright (c) 1992-2001 Microsoft Corporation. All rights reserved.
|
|
//------------------------------------------------------------------------------
|
|
|
|
|
|
#ifndef __AMEXTRA__
|
|
#define __AMEXTRA__
|
|
|
|
// Simple rendered input pin
|
|
//
|
|
// NOTE if your filter queues stuff before rendering then it may not be
|
|
// appropriate to use this class
|
|
//
|
|
// In that case queue the end of stream condition until the last sample
|
|
// is actually rendered and flush the condition appropriately
|
|
|
|
class CRenderedInputPin : public CBaseInputPin
|
|
{
|
|
public:
|
|
|
|
CRenderedInputPin(__in_opt LPCTSTR pObjectName,
|
|
__in CBaseFilter *pFilter,
|
|
__in CCritSec *pLock,
|
|
__inout HRESULT *phr,
|
|
__in_opt LPCWSTR pName);
|
|
#ifdef UNICODE
|
|
CRenderedInputPin(__in_opt LPCSTR pObjectName,
|
|
__in CBaseFilter *pFilter,
|
|
__in CCritSec *pLock,
|
|
__inout HRESULT *phr,
|
|
__in_opt LPCWSTR pName);
|
|
#endif
|
|
|
|
// Override methods to track end of stream state
|
|
STDMETHODIMP EndOfStream();
|
|
STDMETHODIMP EndFlush();
|
|
|
|
HRESULT Active();
|
|
HRESULT Run(REFERENCE_TIME tStart);
|
|
|
|
protected:
|
|
|
|
// Member variables to track state
|
|
BOOL m_bAtEndOfStream; // Set by EndOfStream
|
|
BOOL m_bCompleteNotified; // Set when we notify for EC_COMPLETE
|
|
|
|
private:
|
|
void DoCompleteHandling();
|
|
};
|
|
|
|
#endif // __AMEXTRA__
|
|
|