00001 /* 00002 * Copyright (C) 2003-2005 Gabest 00003 * http://www.gabest.org 00004 * 00005 * This Program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2, or (at your option) 00008 * any later version. 00009 * 00010 * This Program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with GNU Make; see the file COPYING. If not, write to 00017 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 00018 * http://www.gnu.org/copyleft/gpl.html 00019 * 00020 */ 00021 00022 #pragma once 00023 00024 class CBaseMuxerOutputPin : public CBaseOutputPin 00025 { 00026 public: 00027 CBaseMuxerOutputPin(TCHAR* pName, CBaseFilter* pFilter, CCritSec* pLock, HRESULT* phr); 00028 virtual ~CBaseMuxerOutputPin(); 00029 00030 HRESULT DecideBufferSize(IMemAllocator* pAlloc, ALLOCATOR_PROPERTIES* pProperties); 00031 00032 HRESULT CheckMediaType(const CMediaType* pmt); 00033 HRESULT GetMediaType(int iPosition, CMediaType* pmt); 00034 00035 STDMETHODIMP Notify(IBaseFilter* pSender, Quality q); 00036 };