tffdshowdec.h.svn-base

来自「ffshow源码」· SVN-BASE 代码 · 共 481 行 · 第 1/2 页

SVN-BASE
481
字号
    }    STDMETHODIMP_(int) getMinOrder2(void) {return deciD->getMinOrder2();}   STDMETHODIMP_(int) getMaxOrder2(void) {return deciD->getMaxOrder2();}   STDMETHODIMP resetFilter(unsigned int filterID) {return deciD->resetFilter(filterID);}   STDMETHODIMP resetFilterEx(unsigned int filterID,unsigned int filterPageId) {return deciD->resetFilterEx(filterID,filterPageId);}   STDMETHODIMP getFilterTip(unsigned int filterID,tchar *buf,size_t buflen)    {     char_t *buft=(char_t*)alloca(buflen*sizeof(char_t));     HRESULT hr;     if (SUCCEEDED(hr=deciD->getFilterTip(filterID,buft,buflen)))      text<tchar>(buft,buf);     return hr;     }    STDMETHODIMP getFilterTipEx(unsigned int filterID,unsigned int filterPageId,tchar *buf,size_t buflen)     {     char_t *buft=(char_t*)alloca(buflen*sizeof(char_t));     HRESULT hr;     if (SUCCEEDED(hr=deciD->getFilterTipEx(filterID,filterPageId,buft,buflen)))      text<tchar>(buft,buf);     return hr;     }    STDMETHODIMP filterHasReset(unsigned int filterID) {return deciD->filterHasReset(filterID);}   STDMETHODIMP filterHasResetEx(unsigned int filterID,unsigned int filterPageId) {return deciD->filterHasResetEx(filterID,filterPageId);}   STDMETHODIMP getPresetsPtr(Tpresets* *presetsPtr)    {     return E_NOTIMPL;    }   STDMETHODIMP newSample(IMediaSample* *samplePtr) {return deciD->newSample(samplePtr);}   STDMETHODIMP deliverSample_unused(IMediaSample *sample) {return deciD->deliverSample_unused(sample);}   STDMETHODIMP resetOrder(void) {return deciD->resetOrder();}   STDMETHODIMP resetKeys(void) {return deciD->resetKeys();}   STDMETHODIMP putStringParams(const tchar *params,tchar sep,int loaddef)    {     return deciD->putStringParams(text<char_t>(params),(char_t)sep,loaddef);    }    STDMETHODIMP_(const TfilterIDFF*) getNextFilterIDFF(void) {return deciD->getNextFilterIDFF();}   STDMETHODIMP cyclePresets(int step) {return deciD->cyclePresets(step);}   STDMETHODIMP exportKeysToGML(const tchar *flnm)     {     return deciD->exportKeysToGML(text<char_t>(flnm));    }    STDMETHODIMP getShortDescription(tchar *buf,int buflen)     {     char_t *buft=(char_t*)alloca(buflen*sizeof(char_t));     HRESULT hr;     if (SUCCEEDED(hr=deciD->getShortDescription(buft,buflen)))      text<tchar>(buft,buf);     return hr;     }    STDMETHODIMP_(const tchar*) getActivePresetName2(void)     {     return NULL;    }    STDMETHODIMP createPresetPages(const tchar *presetname,TffdshowPageDec *pages)     {     return E_NOTIMPL;    }    STDMETHODIMP getEncoderInfo(tchar *buf,size_t buflen)    {     char_t *buft=(char_t*)alloca(buflen*sizeof(char_t));     HRESULT hr;     if (SUCCEEDED(hr=deciD->getEncoderInfo(buft,buflen)))      text<tchar>(buft,buf);     return hr;     }   STDMETHODIMP_(const tchar*) getDecoderName(void)     {     return NULL;    }   STDMETHODIMP_(const TfilterIDFF*) getFilterIDFF_notimpl(void) {return deciD->getFilterIDFF_notimpl();}   STDMETHODIMP getFilterIDFFs(const tchar *presetname,const TfilterIDFFs* *filters)     {     return E_NOTIMPL;    }    /*    STDMETHODIMP getParam(unsigned int paramID,int* value) {return deciD->getParam(paramID,value);}   STDMETHODIMP putParam(unsigned int paramID,int val) {return deciD->putParam(paramID,val);}   STDMETHODIMP invParam(unsigned int paramID) {return deciD->invParam(paramID);}   STDMETHODIMP getParamStr3(unsigned int paramID,const tchar* *value)     {     return E_NOTIMPL;    }    STDMETHODIMP putParamStr(unsigned int paramID,const tchar *buf)    {     return deciD->putParamStr(paramID,text<char_t>(buf));    }    STDMETHODIMP getParamInfo(unsigned int paramID,TffdshowParamInfo *paramPtr)    {     return E_NOTIMPL;    }    STDMETHODIMP notifyParam(int id,int val) {return deciD->notifyParam(id,val);}   STDMETHODIMP notifyParamStr(int id,const tchar *val)     {     return deciD->notifyParamStr(id,text<char_t>(val));    }   */     STDMETHODIMP initRemote(void) {return deciD->initRemote();}   STDMETHODIMP saveRemoteSettings(void) {return deciD->saveRemoteSettings();}   STDMETHODIMP loadRemoteSettings(void) {return deciD->loadRemoteSettings();}   STDMETHODIMP setFilterOrder(unsigned int filterID,unsigned int newOrder) {return deciD->setFilterOrder(filterID,newOrder);}   //STDMETHODIMP savePresetMem(void *buf,unsigned int len) {return deciD->savePresetMem(buf,len);}   //STDMETHODIMP loadPresetMem(const void *buf,unsigned int len) {return deciD->loadPresetMem(buf,len);}   //STDMETHODIMP resetParam(unsigned int paramID) {return deciD->resetParam(paramID);}   //STDMETHODIMP initMouse(void) {return deciD->initMouse();}   STDMETHODIMP_(unsigned int) getPresetAutoloadItemsCount2(void) {return deciD->getPresetAutoloadItemsCount2();}   STDMETHODIMP getPresetAutoloadItemInfo(unsigned int index,const tchar* *name,const tchar* *hint,int *allowWildcard,int *is,int *isVal,tchar *val,size_t vallen,int *isList,int *isHelp)     {     return E_NOTIMPL;    }    STDMETHODIMP setPresetAutoloadItem(unsigned int index,int is,const tchar *val)    {     return deciD->setPresetAutoloadItem(index,is,text<char_t>(val));    }    STDMETHODIMP_(const tchar*) getPresetAutoloadItemList(unsigned int paramIndex,unsigned int listIndex)    {     return NULL;    }   STDMETHODIMP_(const tchar**) getSupportedFOURCCs(void)    {     return NULL;    }   STDMETHODIMP_(const Tstrptrs*) getCodecsList(void)     {     return NULL;    }    STDMETHODIMP queryFilterInterface(const IID &iid,void **ptr) {return deciD->queryFilterInterface(iid,ptr);}   STDMETHODIMP setOnNewFiltersMsg(HWND wnd,unsigned int msg) {return deciD->setOnNewFiltersMsg(wnd,msg);}   STDMETHODIMP sendOnNewFiltersMsg(void) {return deciD->sendOnNewFiltersMsg();}   STDMETHODIMP setKeyParamKeyCheck(unsigned int i,int key,int *prev,const tchar* *prevDescr)     {     return E_NOTIMPL;    }    STDMETHODIMP_(int) getInputBitrate2(void)    {     return deciD->getInputBitrate2();    }   STDMETHODIMP getPresetAutoloadItemHelp(unsigned int index,const tchar* *helpPtr)     {     return E_NOTIMPL;    }   STDMETHODIMP_(int) getOSDpresetCount2(void) {return deciD->getOSDpresetCount2();}   STDMETHODIMP_(const tchar*) getOSDpresetName2(unsigned int i)    {     return NULL;    }    STDMETHODIMP_(const tchar*) getOSDpresetFormat2(const tchar *presetName)     {     return NULL;    }    STDMETHODIMP setOSDpresetFormat(const tchar *presetName,const tchar *format) {return deciD->setOSDpresetFormat(text<char_t>(presetName),text<char_t>(format));}   STDMETHODIMP setOSDpresetName(unsigned int i,const tchar *name) {return deciD->setOSDpresetName(i,text<char_t>(name));}   STDMETHODIMP addOSDpreset(const tchar *presetName,const tchar *format) {return deciD->addOSDpreset(text<char_t>(presetName),text<char_t>(format));}   STDMETHODIMP deleteOSDpreset(const tchar *presetName) {return deciD->deleteOSDpreset(text<char_t>(presetName));}   STDMETHODIMP cycleOSDpresets(void) {return deciD->cycleOSDpresets();}   STDMETHODIMP_(const tchar*) getOSDstartupFormat(int *duration)    {     return NULL;    }  } dec_char; template<class Tinterface> Tinterface* getDecInterface(void);private: static const int VERSION=26; Tfilters* &filters; Tstrptrs codecs; HWND onNewFiltersWnd;unsigned int onNewFiltersMsg;protected: Tpresets *presets; Tpreset* &presetSettings; virtual void getColls(TintStrColls &colls); void initPreset(void); TglobalSettingsDec *globalSettings; TdialogSettingsDec *dialogSettings;  virtual HRESULT onGraphRemove(void); const CLSID &proppageid; virtual HRESULT onInitDialog(void);  Tkeyboard *keys; Tmouse *mouse; Tremote *remote; virtual void onTrayIconChange(int id,int newval); virtual void sendOnChange(int paramID,int val) {TffdshowBase::sendOnChange(paramID,val);} bool firsttransform,discontinuity; // IAMStreamSelect STDMETHODIMP Count(DWORD* pcStreams); STDMETHODIMP Info(long lIndex, AM_MEDIA_TYPE** ppmt, DWORD* pdwFlags, LCID* plcid, DWORD* pdwGroup, WCHAR** ppszName, IUnknown** ppObject, IUnknown** ppUnk); STDMETHODIMP Enable(long lIndex, DWORD dwFlags); virtual bool isStreamsMenu(void) const =0; struct Tstream  {   Tstream(TffdshowDec *Iself,int Iorder,int Igroup):self(Iself),order(Iorder),group(Igroup) {}   virtual ~Tstream() {}   TffdshowDec *self;   int group;   int order;   virtual DWORD getFlags(void)=0;   virtual const char_t* getName(void)=0;   virtual bool action(void)=0;  }; struct TstreamFilter :Tstream  {  private:   Ttranslate *tr;  public:   TstreamFilter(TffdshowDec *Iself,int Iorder,int Igroup,const TfilterIDFF *If,Ttranslate *Itr);   virtual ~TstreamFilter();   const TfilterIDFF *f;   virtual DWORD getFlags(void);   virtual const char_t* getName(void);   virtual bool action(void);  }; struct TstreamPreset :Tstream  {   TstreamPreset(TffdshowDec *Iself,int Iorder,int Igroup,const char_t *Ipreset):Tstream(Iself,Iorder,Igroup),preset(Ipreset) {}   const char_t *preset;   virtual DWORD getFlags(void);   virtual const char_t* getName(void);   virtual bool action(void);  }; struct Tstreams :array_vector<Tstream*,255>  {   ~Tstreams()    {     for (iterator s=begin();s!=end();s++)      delete *s;    }  }; Tstreams streams; static bool streamsSort(const Tstream *s1,const Tstream *s2); virtual AM_MEDIA_TYPE* getInputMediaType(int lIndex); virtual void addOwnStreams(void) {}};#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?