ReactOS
0.4.16-dev-91-g764881a
genlist.h
Go to the documentation of this file.
1
/*
2
* PROJECT: ReactOS Setup Library
3
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4
* PURPOSE: Generic list functions
5
* COPYRIGHT: Copyright 2008-2018 Christoph von Wittich <christoph at reactos.org>
6
*/
7
8
#pragma once
9
10
typedef
struct
_GENERIC_LIST_ENTRY
11
{
12
LIST_ENTRY
Entry
;
13
struct
_GENERIC_LIST
*
List
;
14
PVOID
Data
;
15
ULONG_PTR
UiData
;
// Cache variable for any UI list that displays these items
16
}
GENERIC_LIST_ENTRY
, *
PGENERIC_LIST_ENTRY
;
17
18
typedef
struct
_GENERIC_LIST
19
{
20
LIST_ENTRY
ListHead
;
21
ULONG
NumOfEntries
;
22
PGENERIC_LIST_ENTRY
CurrentEntry
;
23
}
GENERIC_LIST
, *
PGENERIC_LIST
;
24
25
26
PGENERIC_LIST
27
CreateGenericList
(
VOID
);
28
29
VOID
30
DestroyGenericList
(
31
IN
OUT
PGENERIC_LIST
List
,
32
IN
BOOLEAN
FreeData);
33
34
BOOLEAN
35
AppendGenericListEntry
(
36
IN
OUT
PGENERIC_LIST
List
,
37
IN
PVOID
Data
,
38
IN
BOOLEAN
Current);
39
40
VOID
41
SetCurrentListEntry
(
42
IN
PGENERIC_LIST
List
,
43
IN
PGENERIC_LIST_ENTRY
Entry
);
44
45
PGENERIC_LIST_ENTRY
46
GetCurrentListEntry
(
47
IN
PGENERIC_LIST
List
);
48
49
PGENERIC_LIST_ENTRY
50
GetFirstListEntry
(
51
IN
PGENERIC_LIST
List
);
52
53
PGENERIC_LIST_ENTRY
54
GetNextListEntry
(
55
IN
PGENERIC_LIST_ENTRY
Entry
);
56
57
PVOID
58
GetListEntryData
(
59
IN
PGENERIC_LIST_ENTRY
Entry
);
60
61
ULONG_PTR
62
GetListEntryUiData
(
63
IN
PGENERIC_LIST_ENTRY
Entry
);
64
65
ULONG
66
GetNumberOfListEntries
(
67
IN
PGENERIC_LIST
List
);
68
69
/* EOF */
BOOLEAN
unsigned char BOOLEAN
Definition:
ProcessorBind.h:185
void
Definition:
nsiface.idl:2307
CreateGenericList
PGENERIC_LIST CreateGenericList(VOID)
Definition:
genlist.c:20
GetListEntryUiData
ULONG_PTR GetListEntryUiData(IN PGENERIC_LIST_ENTRY Entry)
Definition:
genlist.c:133
SetCurrentListEntry
VOID SetCurrentListEntry(IN PGENERIC_LIST List, IN PGENERIC_LIST_ENTRY Entry)
Definition:
genlist.c:87
GENERIC_LIST_ENTRY
struct _GENERIC_LIST_ENTRY GENERIC_LIST_ENTRY
PGENERIC_LIST_ENTRY
struct _GENERIC_LIST_ENTRY * PGENERIC_LIST_ENTRY
GetFirstListEntry
PGENERIC_LIST_ENTRY GetFirstListEntry(IN PGENERIC_LIST List)
Definition:
genlist.c:104
AppendGenericListEntry
BOOLEAN AppendGenericListEntry(IN OUT PGENERIC_LIST List, IN PVOID Data, IN BOOLEAN Current)
Definition:
genlist.c:62
DestroyGenericList
VOID DestroyGenericList(IN OUT PGENERIC_LIST List, IN BOOLEAN FreeData)
Definition:
genlist.c:36
GetCurrentListEntry
PGENERIC_LIST_ENTRY GetCurrentListEntry(IN PGENERIC_LIST List)
Definition:
genlist.c:97
GENERIC_LIST
struct _GENERIC_LIST GENERIC_LIST
PGENERIC_LIST
struct _GENERIC_LIST * PGENERIC_LIST
GetNumberOfListEntries
ULONG GetNumberOfListEntries(IN PGENERIC_LIST List)
Definition:
genlist.c:140
GetListEntryData
PVOID GetListEntryData(IN PGENERIC_LIST_ENTRY Entry)
Definition:
genlist.c:126
GetNextListEntry
PGENERIC_LIST_ENTRY GetNextListEntry(IN PGENERIC_LIST_ENTRY Entry)
Definition:
genlist.c:114
Data
Definition:
sort_test.cpp:77
Entry
base of all file and directory entries
Definition:
entries.h:83
_GENERIC_LIST_ENTRY
Definition:
genlist.h:11
_GENERIC_LIST_ENTRY::Data
PVOID Data
Definition:
genlist.h:14
_GENERIC_LIST_ENTRY::List
struct _GENERIC_LIST * List
Definition:
genlist.h:13
_GENERIC_LIST_ENTRY::Entry
LIST_ENTRY Entry
Definition:
genlist.h:12
_GENERIC_LIST_ENTRY::UiData
ULONG_PTR UiData
Definition:
genlist.h:15
_GENERIC_LIST
Definition:
genlist.h:19
_GENERIC_LIST::ListHead
LIST_ENTRY ListHead
Definition:
genlist.h:20
_GENERIC_LIST::CurrentEntry
PGENERIC_LIST_ENTRY CurrentEntry
Definition:
genlist.h:22
_GENERIC_LIST::NumOfEntries
ULONG NumOfEntries
Definition:
genlist.h:21
_LIST_ENTRY
Definition:
typedefs.h:120
ULONG_PTR
uint32_t ULONG_PTR
Definition:
typedefs.h:65
IN
#define IN
Definition:
typedefs.h:39
ULONG
uint32_t ULONG
Definition:
typedefs.h:59
OUT
#define OUT
Definition:
typedefs.h:40
List
_Must_inspect_result_ _In_ WDFCMRESLIST List
Definition:
wdfresource.h:550
base
setup
lib
utils
genlist.h
Generated on Sun Oct 6 2024 06:02:27 for ReactOS by
1.9.6