📄 rmasrc.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 + -