Changeset 657 for trunk/kernel/libk/xlist.h
- Timestamp:
- Mar 18, 2020, 11:16:59 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/libk/xlist.h
r656 r657 2 2 * xlist.h - Trans-cluster double circular linked list, using extended pointers. 3 3 * 4 * Author : Alain Greiner (2016,2017,2018,2019 )4 * Author : Alain Greiner (2016,2017,2018,2019,2020) 5 5 * 6 6 * Copyright (c) UPMC Sorbonne Universites … … 50 50 /*************************************************************************** 51 51 * This macro returns the offset (in bytes) of a field in a structure. 52 *************************************************************************** 52 53 * @ type : structure type 53 54 * @ member : name of the field … … 61 62 * This macro returns an extended pointer on the structure containing an 62 63 * embedded xlist_entry_t field. 64 *************************************************************************** 63 65 * @ xlist_xp : extended pointer on the xlist_entry_t field 64 66 * @ type : type of the structure containing the xlist_entry_t … … 74 76 * the root xlist_entry_t. 75 77 * WARNING : check list non empty before using this macro. 78 *************************************************************************** 76 79 * @ root_xp : extended pointer on the root xlist_entry_t 77 80 * @ type : type of the linked elements … … 88 91 * the root xlist_entry_t. 89 92 * WARNING : check list non empty before using this macro. 93 *************************************************************************** 90 94 * @ root_xp : extended pointer on the root xlist_entry_t 91 95 * @ type : type of the linked elements … … 100 104 * This macro traverses an extended double linked list in forward order. 101 105 * WARNING : the iter variable should NOT be deleted during traversal. 106 *************************************************************************** 102 107 * @ root_xp : extended pointer on the root xlist_entry_t 103 108 * @ iter_xp : current extended pointer on a xlist_entry_t … … 112 117 * This macro traverses an extended double linked list in backward order. 113 118 * WARNING : the iter variable should NOT be deleted during traversal. 119 *************************************************************************** 114 120 * @ root_xp : extended pointer on the root xlist_entry_t 115 121 * @ iter_xp : current extended pointer on a xlist_entry_t … … 124 130 * This function returns an extended pointer on the next xlist_entry_t, 125 131 * from an extended pointer on a reference xlist_entry_t. 132 *************************************************************************** 126 133 * @ root : extended pointer on the root xlist_entry_t 127 134 * @ ref : extended pointer on the reference xlist_entry_t … … 144 151 /*************************************************************************** 145 152 * This function returns an extended pointer on the previous xlist_entry_t. 153 *************************************************************************** 146 154 * @ root : extended pointer on the root xlist_entry_t 147 155 * @ ref : extended pointer on the reference xlist_entry_t … … 165 173 * This function initialises the root of an extended double linked list. 166 174 * The root can be located in any cluster. 175 *************************************************************************** 167 176 * @ root_xp : extended pointer on the root xlist_entry_t 168 177 xixi **************************************************************************/ … … 176 185 * This function initialises an entry of an extended double linked list. 177 186 * The entry can be located in any cluster. 187 *************************************************************************** 178 188 * @ entry_xp : extended pointer on the xlist_entry_t 179 189 **************************************************************************/ … … 188 198 * double linked list. Four extended pointers must be modified. 189 199 * The lock protecting the list should have been previously taken. 200 *************************************************************************** 190 201 * @ root_xp : extended pointer on the root xlist_entry_t 191 202 * @ entry_xp : extended pointer on the xlist_entry_t to be inserted … … 214 225 * double linked list. Four extended pointers must be modified. 215 226 * The lock protecting the list should have been previously taken. 227 *************************************************************************** 216 228 * @ root_xp : extended pointer on the root xlist_entry_t 217 229 * @ entry_xp : extended pointer on the xlist_entry_t to be inserted … … 239 251 /*************************************************************************** 240 252 * This function returns true if the list is empty. 253 *************************************************************************** 241 254 * @ root_xp : extended pointer on the root xlist_entry_t. 242 255 **************************************************************************/ … … 253 266 * Two extended pointers must be modified. 254 267 * The memory allocated to the removed entry is not released. 268 *************************************************************************** 255 269 * @ xp : extended pointer on the xlist_entry_t to be removed. 256 270 **************************************************************************/ … … 277 291 * Four extended pointers must be modified. 278 292 * The memory allocated to the removed entry is not released. 293 *************************************************************************** 279 294 * @ old : extended pointer on the xlist_entry_t to be removed. 280 295 * @ new : extended pointer on the xlist_entry_t to be inserted. … … 307 322 /*************************************************************************** 308 323 * This debug function displays all entries of an xlist. 324 *************************************************************************** 309 325 * @ root_xp : extended pointer on the root xlist_entry_t. 310 326 * @ string : list identifier displayed in header.
Note: See TracChangeset
for help on using the changeset viewer.