public int CreateVideoDecoder(ref D3D11_VIDEO_DECODER_DESC pVideoDesc, ref D3D11_VIDEO_DECODER_CONFIG pConfig, ref IntPtr ppDecoder)
 {
     if (m_CreateVideoDecoderFunc == null)
     {
         var fp = GetFunctionPointer(3);
         m_CreateVideoDecoderFunc = (CreateVideoDecoderFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CreateVideoDecoderFunc));
     }
     return(m_CreateVideoDecoderFunc(m_ptr, ref pVideoDesc, ref pConfig, ref ppDecoder));
 }
 public int GetCreationParameters(ref D3D11_VIDEO_DECODER_DESC pVideoDesc, ref D3D11_VIDEO_DECODER_CONFIG pConfig)
 {
     if (m_GetCreationParametersFunc == null)
     {
         var fp = GetFunctionPointer(7);
         m_GetCreationParametersFunc = (GetCreationParametersFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(GetCreationParametersFunc));
     }
     return(m_GetCreationParametersFunc(m_ptr, ref pVideoDesc, ref pConfig));
 }
 public int GetVideoDecoderConfig(ref D3D11_VIDEO_DECODER_DESC pDesc, uint Index, ref D3D11_VIDEO_DECODER_CONFIG pConfig)
 {
     if (m_GetVideoDecoderConfigFunc == null)
     {
         var fp = GetFunctionPointer(15);
         m_GetVideoDecoderConfigFunc = (GetVideoDecoderConfigFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(GetVideoDecoderConfigFunc));
     }
     return(m_GetVideoDecoderConfigFunc(m_ptr, ref pDesc, Index, ref pConfig));
 }