xine-lib  1.2.10
outputpin.h
Go to the documentation of this file.
1 #ifndef DS_OUTPUTPIN_H
2 #define DS_OUTPUTPIN_H
3 
4 /* "output pin" - the one that connects to output of filter. */
5 
6 #include "allocator.h"
7 
9 typedef struct _COutputPin COutputPin;
10 
12 {
18  void ( *SetFramePointer )(COutputPin*, char** z);
19  void ( *SetPointer2 )(COutputPin*, char* p);
20  void ( *SetFrameSizePointer )(COutputPin*, long* z);
21  void ( *SetNewFormat )(COutputPin*, const AM_MEDIA_TYPE* a);
22 };
23 
25 
26 #endif /* DS_OUTPUTPIN_H */
COutputPin_SetPointer2
static void COutputPin_SetPointer2(COutputPin *This, char *p)
Definition: outputpin.c:430
IPin_vt::EndOfStream
HRESULT STDCALL(* EndOfStream)(IPin *This)
Definition: interfaces.h:86
_COutputMemPin::pAllocator
MemAllocator * pAllocator
Definition: outputpin.c:34
_IMemInputPin::vt
IMemInputPin_vt * vt
Definition: interfaces.h:268
_AllocatorProperties
Definition: interfaces.h:33
REFERENCE_TIME
long long REFERENCE_TIME
Definition: guids.h:25
IEnumMediaTypes_vt::Clone
HRESULT STDCALL(* Clone)(IEnumMediaTypes *This, IEnumMediaTypes **ppEnum)
Definition: interfaces.h:53
IPin_vt::ReceiveConnection
HRESULT STDCALL(* ReceiveConnection)(IPin *This, IPin *pConnector, const AM_MEDIA_TYPE *pmt)
Definition: interfaces.h:68
IPin_vt::QueryPinInfo
HRESULT STDCALL(* QueryPinInfo)(IPin *This, PIN_INFO *pInfo)
Definition: interfaces.h:75
_COutputPin::refcount
int refcount
Definition: outputpin.h:14
MemAllocatorCreate
MemAllocator * MemAllocatorCreate()
Definition: allocator.c:300
IPin_vt::Connect
HRESULT STDCALL(* Connect)(IPin *This, IPin *pReceivePin, AM_MEDIA_TYPE *pmt)
Definition: interfaces.h:65
IPin_vt::QueryDirection
HRESULT STDCALL(* QueryDirection)(IPin *This, PIN_DIRECTION *pPinDir)
Definition: interfaces.h:76
_COutputPin::SetNewFormat
void(* SetNewFormat)(COutputPin *, const AM_MEDIA_TYPE *a)
Definition: outputpin.h:21
_IMediaSample::vt
struct IMediaSample_vt * vt
Definition: interfaces.h:177
_MemAllocator::SetPointer
void(* SetPointer)(MemAllocator *This, char *pointer)
Definition: allocator.h:21
_COutputMemPin::frame_pointer
char ** frame_pointer
Definition: outputpin.c:31
_COutputPin::type
AM_MEDIA_TYPE type
Definition: outputpin.h:16
IPin_vt::Disconnect
HRESULT STDCALL(* Disconnect)(IPin *This)
Definition: interfaces.h:71
COutputPin_EndOfStream
static HRESULT STDCALL COutputPin_EndOfStream(IPin *This)
Definition: outputpin.c:280
CEnumMediaTypes::interfaces
GUID interfaces[2]
Definition: outputpin.c:25
_COutputMemPin::refcount
int refcount
Definition: outputpin.c:31
IPin_vt::NewSegment
HRESULT STDCALL(* NewSegment)(IPin *This, REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate)
Definition: interfaces.h:89
IPin_vt::QueryInternalConnections
HRESULT STDCALL(* QueryInternalConnections)(IPin *This, IPin **apPin, unsigned long *nPin)
Definition: interfaces.h:83
_PinInfo
Definition: interfaces.h:26
IPin_vt::AddRef
long STDCALL(* AddRef)(IUnknown *This)
Definition: interfaces.h:63
IPin_vt::EnumMediaTypes
HRESULT STDCALL(* EnumMediaTypes)(IPin *This, IEnumMediaTypes **ppEnum)
Definition: interfaces.h:81
_COutputPin::vt
IPin_vt * vt
Definition: outputpin.h:13
COutputPinCreate
COutputPin * COutputPinCreate(const AM_MEDIA_TYPE *amt)
Definition: outputpin.c:493
_COutputPin::remote
IPin * remote
Definition: outputpin.h:17
COutputPin_BeginFlush
static HRESULT STDCALL COutputPin_BeginFlush(IPin *This)
Definition: outputpin.c:285
COutputPin_M_Release
static HRESULT STDCALL COutputPin_M_Release(IUnknown *This)
Definition: outputpin.c:483
COutputPin_Disconnect
static HRESULT STDCALL COutputPin_Disconnect(IPin *This)
Definition: outputpin.c:199
COutputPin_ConnectedTo
static HRESULT STDCALL COutputPin_ConnectedTo(IPin *This, IPin **pPin)
Definition: outputpin.c:205
IMemInputPin_vt::GetAllocator
HRESULT STDCALL(* GetAllocator)(IMemInputPin *This, IMemAllocator **ppAllocator)
Definition: interfaces.h:253
CEnumMediaTypes::type
AM_MEDIA_TYPE type
Definition: outputpin.c:23
IMemInputPin_vt::AddRef
long STDCALL(* AddRef)(IUnknown *This)
Definition: interfaces.h:251
COutputPin_NewSegment
static HRESULT STDCALL COutputPin_NewSegment(IPin *This, REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate)
Definition: outputpin.c:295
CEnumMediaTypesCreate
static CEnumMediaTypes * CEnumMediaTypesCreate(const AM_MEDIA_TYPE *amt)
Definition: outputpin.c:98
CEnumMediaTypes_AddRef
static long STDCALL CEnumMediaTypes_AddRef(IUnknown *This)
Definition: outputpin.c:96
COutputPin_QueryInterface
static HRESULT STDCALL COutputPin_QueryInterface(IUnknown *This, const GUID *iid, void **ppv)
Definition: outputpin.c:135
CEnumMediaTypes
Definition: outputpin.c:20
CEnumMediaTypes::refcount
int refcount
Definition: outputpin.c:23
IID_IMemInputPin
const GUID IID_IMemInputPin
Definition: guids.c:16
IMediaSample_vt::GetSize
LONG STDCALL(* GetSize)(IMediaSample *This)
Definition: interfaces.h:126
IMemInputPin_vt::Receive
HRESULT STDCALL(* Receive)(IMemInputPin *This, IMediaSample *pSample)
Definition: interfaces.h:260
outputpin.h
COutputPin_GetAllocator
static HRESULT STDCALL COutputPin_GetAllocator(IMemInputPin *This, IMemAllocator **ppAllocator)
Definition: outputpin.c:349
_COutputMemPin
Definition: outputpin.c:28
COutputPinCreate
COutputPin * COutputPinCreate(const AM_MEDIA_TYPE *vhdr)
Definition: outputpin.c:493
CEnumMediaTypes::vt
IEnumMediaTypes_vt * vt
Definition: outputpin.c:22
IMemInputPin_vt::QueryInterface
long STDCALL(* QueryInterface)(IUnknown *This, const GUID *riid, void **ppvObject)
Definition: interfaces.h:251
_COutputPin::SetFrameSizePointer
void(* SetFrameSizePointer)(COutputPin *, long *z)
Definition: outputpin.h:20
CEnumMediaTypes_Next
static HRESULT STDCALL CEnumMediaTypes_Next(IEnumMediaTypes *This, ULONG cMediaTypes, AM_MEDIA_TYPE **ppMediaTypes, ULONG *pcFetched)
Definition: outputpin.c:38
COutputPin_GetAllocatorRequirements
static HRESULT STDCALL COutputPin_GetAllocatorRequirements(IMemInputPin *This, ALLOCATOR_PROPERTIES *pProps)
Definition: outputpin.c:367
_COutputMemPin::vt
IMemInputPin_vt * vt
Definition: outputpin.c:30
COutputPin_M_AddRef
static HRESULT STDCALL COutputPin_M_AddRef(IUnknown *This)
Definition: outputpin.c:475
IEnumMediaTypes_vt::Next
HRESULT STDCALL(* Next)(IEnumMediaTypes *This, unsigned long cMediaTypes, AM_MEDIA_TYPE **ppMediaTypes, unsigned long *pcFetched)
Definition: interfaces.h:46
IEnumMediaTypes_vt::QueryInterface
long STDCALL(* QueryInterface)(IUnknown *This, const GUID *riid, void **ppvObject)
Definition: interfaces.h:44
_COutputPin::SetFramePointer
void(* SetFramePointer)(COutputPin *, char **z)
Definition: outputpin.h:18
CEnumMediaTypes_Skip
static HRESULT STDCALL CEnumMediaTypes_Skip(IEnumMediaTypes *This, ULONG cMediaTypes)
Definition: outputpin.c:68
NULL
NULL
Definition: xine_plugin.c:78
IEnumMediaTypes_vt::Reset
HRESULT STDCALL(* Reset)(IEnumMediaTypes *This)
Definition: interfaces.h:52
COutputPin_ConnectionMediaType
static HRESULT STDCALL COutputPin_ConnectionMediaType(IPin *This, AM_MEDIA_TYPE *pmt)
Definition: outputpin.c:215
CEnumMediaTypes_Clone
static HRESULT STDCALL CEnumMediaTypes_Clone(IEnumMediaTypes *This, IEnumMediaTypes **ppEnum)
Definition: outputpin.c:81
COutputPin_EndFlush
static HRESULT STDCALL COutputPin_EndFlush(IPin *This)
Definition: outputpin.c:290
IEnumMediaTypes_vt::AddRef
long STDCALL(* AddRef)(IUnknown *This)
Definition: interfaces.h:44
COutputPin_QueryInternalConnections
static HRESULT STDCALL COutputPin_QueryInternalConnections(IPin *This, IPin **apPin, ULONG *nPin)
Definition: outputpin.c:271
IPin_vt::QueryAccept
HRESULT STDCALL(* QueryAccept)(IPin *This, const AM_MEDIA_TYPE *pmt)
Definition: interfaces.h:79
COutputPin_ReceiveMultiple
static HRESULT STDCALL COutputPin_ReceiveMultiple(IMemInputPin *This, IMediaSample **pSamples, long nSamples, long *nSamplesProcessed)
Definition: outputpin.c:409
IPin_vt::ConnectedTo
HRESULT STDCALL(* ConnectedTo)(IPin *This, IPin **pPin)
Definition: interfaces.h:72
_IPin
Definition: interfaces.h:94
IID_IEnumMediaTypes
const GUID IID_IEnumMediaTypes
Definition: guids.c:14
IPin_vt::QueryId
HRESULT STDCALL(* QueryId)(IPin *This, unsigned short **Id)
Definition: interfaces.h:78
CEnumMediaTypes
struct CEnumMediaTypes CEnumMediaTypes
IPin_vt
Definition: interfaces.h:61
COutputPin_Destroy
static void COutputPin_Destroy(COutputPin *This)
Definition: outputpin.c:447
IEnumMediaTypes_vt
Definition: interfaces.h:42
COutputPin_AddRef
static HRESULT STDCALL COutputPin_AddRef(IUnknown *This)
Definition: outputpin.c:459
IMediaSample_vt::GetActualDataLength
LONG STDCALL(* GetActualDataLength)(IMediaSample *This)
Definition: interfaces.h:148
_COutputPin::mempin
COutputMemPin * mempin
Definition: outputpin.h:14
IPin_vt::QueryInterface
long STDCALL(* QueryInterface)(IUnknown *This, const GUID *riid, void **ppvObject)
Definition: interfaces.h:63
DECLARE_IUNKNOWN
#define DECLARE_IUNKNOWN()
Definition: iunk.h:11
IPin_vt::BeginFlush
HRESULT STDCALL(* BeginFlush)(IPin *This)
Definition: interfaces.h:87
COutputPin_QueryAccept
static HRESULT STDCALL COutputPin_QueryAccept(IPin *This, const AM_MEDIA_TYPE *pmt)
Definition: outputpin.c:254
IPin_vt::ConnectionMediaType
HRESULT STDCALL(* ConnectionMediaType)(IPin *This, AM_MEDIA_TYPE *pmt)
Definition: interfaces.h:73
_MemAllocator
Definition: allocator.h:10
IPin_vt::EndFlush
HRESULT STDCALL(* EndFlush)(IPin *This)
Definition: interfaces.h:88
COutputPin_M_QueryInterface
static HRESULT STDCALL COutputPin_M_QueryInterface(IUnknown *This, const GUID *iid, void **ppv)
Definition: outputpin.c:310
CEnumMediaTypes_QueryInterface
static long STDCALL CEnumMediaTypes_QueryInterface(IUnknown *This, const GUID *riid, void **ppvObject)
Definition: outputpin.c:96
COutputPin_ReceiveCanBlock
static HRESULT STDCALL COutputPin_ReceiveCanBlock(IMemInputPin *This)
Definition: outputpin.c:420
_COutputPin
Definition: outputpin.h:11
IEnumMediaTypes_vt::Skip
HRESULT STDCALL(* Skip)(IEnumMediaTypes *This, unsigned long cMediaTypes)
Definition: interfaces.h:50
COutputPin_NotifyAllocator
static HRESULT STDCALL COutputPin_NotifyAllocator(IMemInputPin *This, IMemAllocator *pAllocator, int bReadOnly)
Definition: outputpin.c:357
PIN_DIRECTION
PIN_DIRECTION
Definition: interfaces.h:20
_IMemInputPin
Definition: interfaces.h:268
COutputPin_Release
static HRESULT STDCALL COutputPin_Release(IUnknown *This)
Definition: outputpin.c:466
IMemInputPin_vt::ReceiveCanBlock
HRESULT STDCALL(* ReceiveCanBlock)(IMemInputPin *This)
Definition: interfaces.h:266
_COutputPin::SetPointer2
void(* SetPointer2)(COutputPin *, char *p)
Definition: outputpin.h:19
COutputPin_Connect
static HRESULT STDCALL COutputPin_Connect(IPin *This, IPin *pReceivePin, AM_MEDIA_TYPE *pmt)
Definition: outputpin.c:167
_IEnumMediaTypes
Definition: interfaces.h:56
allocator.h
COutputPin_QueryId
static HRESULT STDCALL COutputPin_QueryId(IPin *This, LPWSTR *Id)
Definition: outputpin.c:247
Debug
#define Debug
Definition: guids.h:10
IMemInputPin_vt::NotifyAllocator
HRESULT STDCALL(* NotifyAllocator)(IMemInputPin *This, IMemAllocator *pAllocator, int bReadOnly)
Definition: interfaces.h:255
IMemInputPin_vt::GetAllocatorRequirements
HRESULT STDCALL(* GetAllocatorRequirements)(IMemInputPin *This, ALLOCATOR_PROPERTIES *pProps)
Definition: interfaces.h:258
IMemInputPin_vt::ReceiveMultiple
HRESULT STDCALL(* ReceiveMultiple)(IMemInputPin *This, IMediaSample **pSamples, long nSamples, long *nSamplesProcessed)
Definition: interfaces.h:262
PINDIR_INPUT
@ PINDIR_INPUT
Definition: interfaces.h:22
COutputPin_SetFrameSizePointer
static void COutputPin_SetFrameSizePointer(COutputPin *This, long *z)
Definition: outputpin.c:437
IEnumMediaTypes_vt::Release
long STDCALL(* Release)(IUnknown *This)
Definition: interfaces.h:44
COutputPin_EnumMediaTypes
static HRESULT STDCALL COutputPin_EnumMediaTypes(IPin *This, IEnumMediaTypes **ppEnum)
Definition: outputpin.c:261
_IMediaSample
Definition: interfaces.h:177
IMediaSample_vt::GetPointer
HRESULT STDCALL(* GetPointer)(IMediaSample *This, unsigned char **ppBuffer)
Definition: interfaces.h:124
COutputPin_SetFramePointer
static void COutputPin_SetFramePointer(COutputPin *This, char **z)
Definition: outputpin.c:425
COutputPin_QueryDirection
static HRESULT STDCALL COutputPin_QueryDirection(IPin *This, PIN_DIRECTION *pPinDir)
Definition: outputpin.c:237
IMPLEMENT_IUNKNOWN
#define IMPLEMENT_IUNKNOWN(CLASSNAME)
Definition: iunk.h:14
_COutputMemPin::frame_size_pointer
long * frame_size_pointer
Definition: outputpin.c:33
output_unimplemented
static int output_unimplemented(const char *s, void *p)
Definition: outputpin.c:14
_IMemAllocator
Definition: interfaces.h:244
CEnumMediaTypes_Release
static long STDCALL CEnumMediaTypes_Release(IUnknown *This)
Definition: outputpin.c:96
IPin_vt::Release
long STDCALL(* Release)(IUnknown *This)
Definition: interfaces.h:63
IMemInputPin_vt::Release
long STDCALL(* Release)(IUnknown *This)
Definition: interfaces.h:251
COutputPin_Receive
static HRESULT STDCALL COutputPin_Receive(IMemInputPin *This, IMediaSample *pSample)
Definition: outputpin.c:374
COutputPin_ReceiveConnection
static HRESULT STDCALL COutputPin_ReceiveConnection(IPin *This, IPin *pConnector, const AM_MEDIA_TYPE *pmt)
Definition: outputpin.c:189
CEnumMediaTypes_Reset
static HRESULT STDCALL CEnumMediaTypes_Reset(IEnumMediaTypes *This)
Definition: outputpin.c:75
CEnumMediaTypes_Destroy
static void CEnumMediaTypes_Destroy(CEnumMediaTypes *This)
Definition: outputpin.c:89
COutputPin_QueryPinInfo
static HRESULT STDCALL COutputPin_QueryPinInfo(IPin *This, PIN_INFO *pInfo)
Definition: outputpin.c:230
AM_MEDIA_TYPE
AM_MEDIA_TYPE
Definition: guids.h:23
IMemInputPin_vt
Definition: interfaces.h:249
COutputPin_SetNewFormat
static void COutputPin_SetNewFormat(COutputPin *This, const AM_MEDIA_TYPE *amt)
Definition: outputpin.c:442
_COutputMemPin::parent
COutputPin * parent
Definition: outputpin.c:35