Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCasimir666 <casimir666@users.sourceforge.net>2007-04-21 22:15:47 +0400
committerCasimir666 <casimir666@users.sourceforge.net>2007-04-21 22:15:47 +0400
commitcf2302ed8ac483e06a46d1c098b8a42983a9f52b (patch)
tree8ebef5cb2f1124b7eafe9ac850fa386b7210aa89 /src/apps/mplayerc/FGFilter.h
parent768d55cfb4ed8dd645f05415bd367c16533287b2 (diff)
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@54 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/apps/mplayerc/FGFilter.h')
-rw-r--r--src/apps/mplayerc/FGFilter.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/apps/mplayerc/FGFilter.h b/src/apps/mplayerc/FGFilter.h
index cae81c000..0a8d025ef 100644
--- a/src/apps/mplayerc/FGFilter.h
+++ b/src/apps/mplayerc/FGFilter.h
@@ -52,7 +52,7 @@ public:
CAtlList<CString> m_protocols, m_extensions, m_chkbytes; // TODO: subtype?
- virtual HRESULT Create(IBaseFilter** ppBF, IUnknown** ppUnk) = 0;
+ virtual HRESULT Create(IBaseFilter** ppBF, CInterfaceList<IUnknown, &IID_IUnknown>& pUnks) = 0;
};
class CFGFilterRegistry : public CFGFilter
@@ -71,7 +71,7 @@ public:
CStringW GetDisplayName() {return m_DisplayName;}
IMoniker* GetMoniker() {return m_pMoniker;}
- HRESULT Create(IBaseFilter** ppBF, IUnknown** ppUnk);
+ HRESULT Create(IBaseFilter** ppBF, CInterfaceList<IUnknown, &IID_IUnknown>& pUnks);
};
template<class T>
@@ -80,12 +80,10 @@ class CFGFilterInternal : public CFGFilter
public:
CFGFilterInternal(CStringW name = L"", UINT64 merit = MERIT64_DO_USE) : CFGFilter(__uuidof(T), name, merit) {}
- HRESULT Create(IBaseFilter** ppBF, IUnknown** ppUnk)
+ HRESULT Create(IBaseFilter** ppBF, CInterfaceList<IUnknown, &IID_IUnknown>& pUnks)
{
CheckPointer(ppBF, E_POINTER);
- if(ppUnk) *ppUnk = NULL;
-
HRESULT hr = S_OK;
CComPtr<IBaseFilter> pBF = new T(NULL, &hr);
if(FAILED(hr)) return hr;
@@ -105,7 +103,7 @@ protected:
public:
CFGFilterFile(const CLSID& clsid, CString path, CStringW name = L"", UINT64 merit = MERIT64_DO_USE);
- HRESULT Create(IBaseFilter** ppBF, IUnknown** ppUnk);
+ HRESULT Create(IBaseFilter** ppBF, CInterfaceList<IUnknown, &IID_IUnknown>& pUnks);
};
class CFGFilterVideoRenderer : public CFGFilter
@@ -116,7 +114,7 @@ protected:
public:
CFGFilterVideoRenderer(HWND hWnd, const CLSID& clsid, CStringW name = L"", UINT64 merit = MERIT64_DO_USE);
- HRESULT Create(IBaseFilter** ppBF, IUnknown** ppUnk);
+ HRESULT Create(IBaseFilter** ppBF, CInterfaceList<IUnknown, &IID_IUnknown>& pUnks);
};
class CFGFilterList
@@ -130,6 +128,7 @@ public:
CFGFilterList();
virtual ~CFGFilterList();
+ bool IsEmpty() {return m_filters.IsEmpty();}
void RemoveAll();
void Insert(CFGFilter* pFGF, int group, bool exactmatch = false, bool autodelete = true);