2 * List of components. (for internal use)
4 * hidenori@a2.ctktv.ne.jp
7 #ifndef QUARTZ_COMPLIST_H
8 #define QUARTZ_COMPLIST_H
10 typedef struct QUARTZ_CompList QUARTZ_CompList
;
11 typedef struct QUARTZ_CompListItem QUARTZ_CompListItem
;
13 QUARTZ_CompList
* QUARTZ_CompList_Alloc( void );
14 void QUARTZ_CompList_Free( QUARTZ_CompList
* pList
);
15 void QUARTZ_CompList_Lock( QUARTZ_CompList
* pList
);
16 void QUARTZ_CompList_Unlock( QUARTZ_CompList
* pList
);
18 QUARTZ_CompList
* QUARTZ_CompList_Dup(
19 const QUARTZ_CompList
* pList
, BOOL fDupData
);
20 HRESULT
QUARTZ_CompList_AddComp(
21 QUARTZ_CompList
* pList
, IUnknown
* punk
,
22 const void* pvData
, DWORD dwDataLen
);
23 HRESULT
QUARTZ_CompList_AddTailComp(
24 QUARTZ_CompList
* pList
, IUnknown
* punk
,
25 const void* pvData
, DWORD dwDataLen
);
26 HRESULT
QUARTZ_CompList_RemoveComp( QUARTZ_CompList
* pList
, IUnknown
* punk
);
27 QUARTZ_CompListItem
* QUARTZ_CompList_SearchComp(
28 QUARTZ_CompList
* pList
, IUnknown
* punk
);
29 QUARTZ_CompListItem
* QUARTZ_CompList_SearchData(
30 QUARTZ_CompList
* pList
, const void* pvData
, DWORD dwDataLen
);
31 QUARTZ_CompListItem
* QUARTZ_CompList_GetFirst(
32 QUARTZ_CompList
* pList
);
33 QUARTZ_CompListItem
* QUARTZ_CompList_GetLast(
34 QUARTZ_CompList
* pList
);
35 QUARTZ_CompListItem
* QUARTZ_CompList_GetNext(
36 QUARTZ_CompList
* pList
, QUARTZ_CompListItem
* pPrev
);
37 QUARTZ_CompListItem
* QUARTZ_CompList_GetPrev(
38 QUARTZ_CompList
* pList
, QUARTZ_CompListItem
* pNext
);
39 IUnknown
* QUARTZ_CompList_GetItemPtr( QUARTZ_CompListItem
* pItem
);
40 const void* QUARTZ_CompList_GetDataPtr( QUARTZ_CompListItem
* pItem
);
41 DWORD
QUARTZ_CompList_GetDataLength( QUARTZ_CompListItem
* pItem
);
44 #endif /* QUARTZ_COMPLIST_H */