⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rmasrc.pas

📁 Delphi源码REAlRMSDK.rar
💻 PAS
字号:
unit RmaSrc;

interface

uses
  PnResult, PnTypes, RmaFiles, RmaPckts;

//***************************************************************************
//
//  $Id: rmasrc.h,v 1.17 1999/01/29 18:32:12 hboone Exp $
//
//  Copyright (C) 1995-1999 RealNetworks, Inc. All rights reserved.
//
//  http://www.real.com/devzone
//
//  This program contains proprietary information of RealNetworks, Inc,
//  and is licensed subject to restrictions on use and distribution.
//
//
//  RealMedia Architecture Packet Source Interfaces.
//
//

//***************************************************************************
//
//  Interface:
//
//	IRMARawSourceObject
//
//  Purpose:
//
//	Object that serves packets to sinks
//
//  IID_IRMARawSourceObject:
//
//	{00001000-0901-11d1-8B06-00A024406D59}
//
//

const
  IID_IRMARawSourceObject: TGUID = '{00001000-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMARawSourceObject}

type
  IRMARawSourceObject = interface (IUnknown)
  ['{00001000-0901-11d1-8B06-00A024406D59}']

    //***********************************************************************
    //	Method:
    //	    IRMARawSourceObject::Init
    //	Purpose:
    //	    Initializes the connection between the source and the sink
    //

    function Init(pUnknown: IUnknown): HRESULT; stdcall;

    function Done: HRESULT; stdcall;

    function GetFileHeader: HRESULT; stdcall;

    function GetStreamHeader(unStreamNumber: UINT16): HRESULT; stdcall;

    function StartPackets(unStreamNumber: UINT16): HRESULT; stdcall;

    function StopPackets(unStreamNumber: UINT16): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMARawSourceObject}

//***************************************************************************
//
//  Interface:
//
//	IRMARawSinkObject
//
//  Purpose:
//
//	Object that receives raw packets from a source
//
//  IID_IRMARawSinkObject:
//
//	{00001001-0901-11d1-8B06-00A024406D59}
//
//

const
  IID_IRMARawSinkObject: TGUID = '{00001001-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMARawSinkObject}

type
  IRMARawSinkObject = interface (IUnknown)
  ['{00001001-0901-11d1-8B06-00A024406D59}']

    //***********************************************************************
    //	Method:
    //	    IRMARawSinkObject::InitDone
    //	Purpose:
    //	    Callback after source object has initialized the connection
    //

    function InitDone(status: PN_RESULT): HRESULT; stdcall;

    function FileHeaderReady(status: PN_RESULT; pHeader: IRMAValues): HRESULT; stdcall;

    function StreamHeaderReady(status: PN_RESULT; pHeader: IRMAValues): HRESULT; stdcall;

    function PacketReady(status: PN_RESULT; pPacket: IRMAPacket): HRESULT; stdcall;

    function StreamDone(unStreamNumber: UINT16): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMARawSinkObject}

//***************************************************************************
//
//  Interface:
//
//	IRMASourceFinderObject
//
//  Purpose:
//
//	Object that allows a sink to search for a raw packet source
//
//  IID_IRMASourceFinderObject:
//
//	{00001002-0901-11d1-8B06-00A024406D59}
//
//

const
  IID_IRMASourceFinderObject: TGUID = '{00001002-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMASourceFinderObject}

  CLSID_IRMASourceFinderObject: TGUID = '{00001002-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM CLSID_IRMASourceFinderObject}

type
  IRMASourceFinderObject = interface (IUnknown)
  ['{00001002-0901-11d1-8B06-00A024406D59}']

    function Init(pUnknown: IUnknown): HRESULT; stdcall;

    function Find(pRequest: IRMARequest): HRESULT; stdcall;

    function Done: HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMASourceFinderObject}

//***************************************************************************
//
//  Interface:
//
//	IRMASourceFinderResponse
//
//  Purpose:
//
//	Object that returns a raw packet source to a sink
//
//  IID_IRMASourceFinderResponse:
//
//	{00001003-0901-11d1-8B06-00A024406D59}
//
//

const
  IID_IRMASourceFinderResponse: TGUID = '{00001003-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMASourceFinderResponse}

type
  IRMASourceFinderResponse = interface (IUnknown)
  ['{00001003-0901-11d1-8B06-00A024406D59}']

    function InitDone(status: PN_RESULT): HRESULT; stdcall;

    function FindDone(status: PN_RESULT; pUnknown: IUnknown): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMASourceFinderResponse}

implementation

end.

⌨️ 快捷键说明

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