~ubuntu-branches/ubuntu/quantal/gutenprint/quantal

« back to all changes in this revision

Viewing changes to doc/gutenprint/html/group__list.html

  • Committer: Package Import Robot
  • Author(s): Till Kamppeter
  • Date: 2012-06-19 17:12:48 UTC
  • mfrom: (1.1.15)
  • Revision ID: package-import@ubuntu.com-20120619171248-cbil10m2dqnc71rr
Tags: 5.2.8-0ubuntu1
* New upstream release
   - Added support for Canon PIXMA DS700, DS810, 50i, 80i, 450i, 455i, 470PD,
     475PD, 550i, 560i, 850i, 860i, 865R, 900PD, 950i, 960i, 990i, 6100i,
     6500i, 9100i, 9900i, i450X, i455X, i475D, i550X, i560X, i905D, i965,
     i990, i9950, iP90, iP90v, iP100, iP6320D, MP260, MX320, MX370, MX430,
     MX510, MX710, MX890, E500, E600, PIXUS iP2700, iP3100, iP4100,
     EPSON Stylus NX420, SX420, TX420
   - CD printing on many Canon printers.
   - Non-working Canon's removed.
   - More Japanese models supported.
   - Printer modes for most printer models are now determined by the
     media, based on information from the corresponding Windows
     driver. If an incompatible mode is selected by the user, a
     suitable mode is substituted, based on the other active
     parameters and quality setting. Modes are also substituted
     based on cartridge selection and duplex selection. Inktype is
     then automatically adjusted.
   - Added support for 8-bit inks to Canon backend, and modes using
     them.
   - Adjusted margins and page sizes of Canon printers.
   - Added borderless functionality to most Canon printers.
   - A problem whereby printing did not work at all on some Linux
     distributions has been fixed.
   - Printing on the Epson Stylus NX200, SX200, and SX205 is believed
     to be corrected.
* debian/patches/0002-genppd-don-t-write-color-profile-information-with-br.patch,
  debian/patches/0003-upgrade-getopt.patch,
  debian/patches/0004-no-data-dumper-needed.patch,
  debian/patches/0005-use-dnointerpolate-in-ghostscript-command-lines.patch:
  Removed, change applied upstream.
* debian/rules: Touch ppd-updater file(s) so that they have the time stamp
  of the build of this package The time stamp of the ppd-updater files tells
  CUPS' trigger script whether they come from different package versions or
  not (LP: #932882).

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
5
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
6
6
<title>libgutenprint API Reference: list</title>
7
 
 
8
7
<link href="tabs.css" rel="stylesheet" type="text/css"/>
 
8
<script type="text/javascript" src="jquery.js"></script>
 
9
<script type="text/javascript" src="dynsections.js"></script>
9
10
<link href="doxygen.css" rel="stylesheet" type="text/css" />
10
 
 
11
 
 
12
 
 
13
11
</head>
14
12
<body>
15
 
<div id="top"><!-- do not remove this div! -->
16
 
 
17
 
 
 
13
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
18
14
<div id="titlearea">
19
15
<table cellspacing="0" cellpadding="0">
20
16
 <tbody>
21
17
 <tr style="height: 56px;">
22
 
  
23
 
  
24
18
  <td style="padding-left: 0.5em;">
25
19
   <div id="projectname">libgutenprint API Reference
26
 
   &#160;<span id="projectnumber">5.2.8-pre1</span>
 
20
   &#160;<span id="projectnumber">5.2.8</span>
27
21
   </div>
28
 
   
29
22
  </td>
30
 
  
31
 
  
32
 
  
33
23
 </tr>
34
24
 </tbody>
35
25
</table>
36
26
</div>
37
 
 
38
 
<!-- Generated by Doxygen 1.7.6.1 -->
 
27
<!-- end header part -->
 
28
<!-- Generated by Doxygen 1.8.1 -->
39
29
  <div id="navrow1" class="tabs">
40
30
    <ul class="tablist">
41
31
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
45
35
      <li><a href="files.html"><span>Files</span></a></li>
46
36
    </ul>
47
37
  </div>
48
 
</div>
 
38
</div><!-- top -->
49
39
<div class="header">
50
40
  <div class="summary">
51
41
<a href="#typedef-members">Typedefs</a> &#124;
58
48
<p>The list data type implements a fast generic doubly-linked list.  
59
49
<a href="#details">More...</a></p>
60
50
<table class="memberdecls">
61
 
<tr><td colspan="2"><h2><a name="typedef-members"></a>
 
51
<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
62
52
Typedefs</h2></td></tr>
63
 
<tr><td class="memItemLeft" align="right" valign="top">typedef struct stp_list_item&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a></td></tr>
64
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The list item opaque data type.  <a href="#ga67b4fafe1ab6ead5be7500f88874bdb0"></a><br/></td></tr>
65
 
<tr><td class="memItemLeft" align="right" valign="top">typedef struct stp_list&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a></td></tr>
66
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The list opaque data type.  <a href="#ga53cf4f01ab7d712f771cb5fb479d2ba7"></a><br/></td></tr>
67
 
<tr><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a> )(void *)</td></tr>
68
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to free the data a node contains.  <a href="#gac09ea139ad36a6e21f30755439afeab5"></a><br/></td></tr>
69
 
<tr><td class="memItemLeft" align="right" valign="top">typedef void *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a> )(const void *)</td></tr>
70
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to copy the data a node contains.  <a href="#ga8d8084abc24eb4b00290916d5ff44c1f"></a><br/></td></tr>
71
 
<tr><td class="memItemLeft" align="right" valign="top">typedef const char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> )(const void *)</td></tr>
72
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to get the name of a node.  <a href="#ga815993ed02f7e9c7b5cb4680f0504d97"></a><br/></td></tr>
73
 
<tr><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a> )(const void *, const void *)</td></tr>
74
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to compare two nodes.  <a href="#gae5c7167d6fc957fee0b6aff45bc0b126"></a><br/></td></tr>
75
 
<tr><td colspan="2"><h2><a name="func-members"></a>
 
53
<tr class="memitem:ga67b4fafe1ab6ead5be7500f88874bdb0"><td class="memItemLeft" align="right" valign="top">typedef struct stp_list_item&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a></td></tr>
 
54
<tr class="memdesc:ga67b4fafe1ab6ead5be7500f88874bdb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">The list item opaque data type.  <a href="#ga67b4fafe1ab6ead5be7500f88874bdb0"></a><br/></td></tr>
 
55
<tr class="memitem:ga53cf4f01ab7d712f771cb5fb479d2ba7"><td class="memItemLeft" align="right" valign="top">typedef struct stp_list&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a></td></tr>
 
56
<tr class="memdesc:ga53cf4f01ab7d712f771cb5fb479d2ba7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The list opaque data type.  <a href="#ga53cf4f01ab7d712f771cb5fb479d2ba7"></a><br/></td></tr>
 
57
<tr class="memitem:gac09ea139ad36a6e21f30755439afeab5"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a> )(void *)</td></tr>
 
58
<tr class="memdesc:gac09ea139ad36a6e21f30755439afeab5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to free the data a node contains.  <a href="#gac09ea139ad36a6e21f30755439afeab5"></a><br/></td></tr>
 
59
<tr class="memitem:ga8d8084abc24eb4b00290916d5ff44c1f"><td class="memItemLeft" align="right" valign="top">typedef void *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a> )(const void *)</td></tr>
 
60
<tr class="memdesc:ga8d8084abc24eb4b00290916d5ff44c1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to copy the data a node contains.  <a href="#ga8d8084abc24eb4b00290916d5ff44c1f"></a><br/></td></tr>
 
61
<tr class="memitem:ga815993ed02f7e9c7b5cb4680f0504d97"><td class="memItemLeft" align="right" valign="top">typedef const char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> )(const void *)</td></tr>
 
62
<tr class="memdesc:ga815993ed02f7e9c7b5cb4680f0504d97"><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to get the name of a node.  <a href="#ga815993ed02f7e9c7b5cb4680f0504d97"></a><br/></td></tr>
 
63
<tr class="memitem:gae5c7167d6fc957fee0b6aff45bc0b126"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a> )(const void *, const void *)</td></tr>
 
64
<tr class="memdesc:gae5c7167d6fc957fee0b6aff45bc0b126"><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function to compare two nodes.  <a href="#gae5c7167d6fc957fee0b6aff45bc0b126"></a><br/></td></tr>
 
65
</table><table class="memberdecls">
 
66
<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
76
67
Functions</h2></td></tr>
77
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga55fbb8f7a3920b783b02183c5ea57624">stp_list_node_free_data</a> (void *item)</td></tr>
78
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Free node data allocated with stp_malloc.  <a href="#ga55fbb8f7a3920b783b02183c5ea57624"></a><br/></td></tr>
79
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga3cfea94cd07f50d7d9b4ce384d349fca">stp_list_create</a> (void)</td></tr>
80
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new list object.  <a href="#ga3cfea94cd07f50d7d9b4ce384d349fca"></a><br/></td></tr>
81
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga0ba249dd06efbf5c0af8511ceab671e8">stp_list_copy</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
82
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy and allocate a list object.  <a href="#ga0ba249dd06efbf5c0af8511ceab671e8"></a><br/></td></tr>
83
 
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae23ef06175b27dd6772d4d4c098999b1">stp_list_destroy</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
84
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a list object.  <a href="#gae23ef06175b27dd6772d4d4c098999b1"></a><br/></td></tr>
85
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gad185100e8d7969a473e9d42bc8084572">stp_list_get_start</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
86
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the first item in a list.  <a href="#gad185100e8d7969a473e9d42bc8084572"></a><br/></td></tr>
87
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae939f15ee1a6e4c0aaad7a7be7f40b74">stp_list_get_end</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
88
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the last item in a list.  <a href="#gae939f15ee1a6e4c0aaad7a7be7f40b74"></a><br/></td></tr>
89
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gad377973e8b13d02c9c111d970f491993">stp_list_get_item_by_index</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, int idx)</td></tr>
90
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an item in a list by its index.  <a href="#gad377973e8b13d02c9c111d970f491993"></a><br/></td></tr>
91
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga729867c847dd8282f74806968c708f28">stp_list_get_item_by_name</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, const char *name)</td></tr>
92
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an item in a list by its name.  <a href="#ga729867c847dd8282f74806968c708f28"></a><br/></td></tr>
93
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gacc9140df3f4311cd750ba10a1cbf37d1">stp_list_get_item_by_long_name</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, const char *long_name)</td></tr>
94
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an item in a list by its long name.  <a href="#gacc9140df3f4311cd750ba10a1cbf37d1"></a><br/></td></tr>
95
 
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae22741060734c9cbc47656c5ea35c3f3">stp_list_get_length</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
96
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the length of a list.  <a href="#gae22741060734c9cbc47656c5ea35c3f3"></a><br/></td></tr>
97
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae3300d7971c393d119d6fd62e2b578ec">stp_list_set_freefunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a> freefunc)</td></tr>
98
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node free function.  <a href="#gae3300d7971c393d119d6fd62e2b578ec"></a><br/></td></tr>
99
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gabfc1ef258084a3e1ad959aa3d2f053f4">stp_list_get_freefunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
100
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node free function.  <a href="#gabfc1ef258084a3e1ad959aa3d2f053f4"></a><br/></td></tr>
101
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga7e002ed25bbfbad236c1c619841f1ac6">stp_list_set_copyfunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a> copyfunc)</td></tr>
102
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node copy function.  <a href="#ga7e002ed25bbfbad236c1c619841f1ac6"></a><br/></td></tr>
103
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga686e92ee802147171e5fc723d0079b8d">stp_list_get_copyfunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
104
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node copy function.  <a href="#ga686e92ee802147171e5fc723d0079b8d"></a><br/></td></tr>
105
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga889af512d87a00d696acc0b6b3fafe78">stp_list_set_namefunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> namefunc)</td></tr>
106
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node name function.  <a href="#ga889af512d87a00d696acc0b6b3fafe78"></a><br/></td></tr>
107
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga50b1ab3c3b6b0ba7c0cf2128e2024369">stp_list_get_namefunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
108
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node name function.  <a href="#ga50b1ab3c3b6b0ba7c0cf2128e2024369"></a><br/></td></tr>
109
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga5be91978431b0ed48ea7919807bdcb73">stp_list_set_long_namefunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> long_namefunc)</td></tr>
110
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node long name function.  <a href="#ga5be91978431b0ed48ea7919807bdcb73"></a><br/></td></tr>
111
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gab99b3ed6da1ea739eed3f2c04fbb7fa7">stp_list_get_long_namefunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
112
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node long name function.  <a href="#gab99b3ed6da1ea739eed3f2c04fbb7fa7"></a><br/></td></tr>
113
 
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gab1d2486542b858b44b299cfcdf7d8784">stp_list_set_sortfunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a> sortfunc)</td></tr>
114
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node sort function.  <a href="#gab1d2486542b858b44b299cfcdf7d8784"></a><br/></td></tr>
115
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga4b32e315d3fd23eabeffcc8d931ea454">stp_list_get_sortfunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
116
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node sort function.  <a href="#ga4b32e315d3fd23eabeffcc8d931ea454"></a><br/></td></tr>
117
 
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae726297a82e140672a018e135ffc6a0e">stp_list_item_create</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *next, const void *data)</td></tr>
118
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new list item.  <a href="#gae726297a82e140672a018e135ffc6a0e"></a><br/></td></tr>
119
 
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga5e36d4f61e00cb3e4c4a759f5e7e9f4b">stp_list_item_destroy</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
120
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a list item.  <a href="#ga5e36d4f61e00cb3e4c4a759f5e7e9f4b"></a><br/></td></tr>
121
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gabaa2a241055402438a0cae6f40cf6a78">stp_list_item_prev</a> (const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
122
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the previous item in the list.  <a href="#gabaa2a241055402438a0cae6f40cf6a78"></a><br/></td></tr>
123
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga81ab310caf6432ce1e492eaafdb6c0d7">stp_list_item_next</a> (const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
124
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next item in the list.  <a href="#ga81ab310caf6432ce1e492eaafdb6c0d7"></a><br/></td></tr>
125
 
<tr><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gad6f6b303b40fa75f22a86391785178cb">stp_list_item_get_data</a> (const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
126
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the data associated with a list item.  <a href="#gad6f6b303b40fa75f22a86391785178cb"></a><br/></td></tr>
127
 
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gac1e34edcd47ffdc119cdcaf5ad38e1c4">stp_list_item_set_data</a> (<a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item, void *data)</td></tr>
128
 
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the data associated with a list item.  <a href="#gac1e34edcd47ffdc119cdcaf5ad38e1c4"></a><br/></td></tr>
 
68
<tr class="memitem:ga55fbb8f7a3920b783b02183c5ea57624"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga55fbb8f7a3920b783b02183c5ea57624">stp_list_node_free_data</a> (void *item)</td></tr>
 
69
<tr class="memdesc:ga55fbb8f7a3920b783b02183c5ea57624"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free node data allocated with stp_malloc.  <a href="#ga55fbb8f7a3920b783b02183c5ea57624"></a><br/></td></tr>
 
70
<tr class="memitem:ga3cfea94cd07f50d7d9b4ce384d349fca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga3cfea94cd07f50d7d9b4ce384d349fca">stp_list_create</a> (void)</td></tr>
 
71
<tr class="memdesc:ga3cfea94cd07f50d7d9b4ce384d349fca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new list object.  <a href="#ga3cfea94cd07f50d7d9b4ce384d349fca"></a><br/></td></tr>
 
72
<tr class="memitem:ga0ba249dd06efbf5c0af8511ceab671e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga0ba249dd06efbf5c0af8511ceab671e8">stp_list_copy</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
73
<tr class="memdesc:ga0ba249dd06efbf5c0af8511ceab671e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy and allocate a list object.  <a href="#ga0ba249dd06efbf5c0af8511ceab671e8"></a><br/></td></tr>
 
74
<tr class="memitem:gae23ef06175b27dd6772d4d4c098999b1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae23ef06175b27dd6772d4d4c098999b1">stp_list_destroy</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
75
<tr class="memdesc:gae23ef06175b27dd6772d4d4c098999b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a list object.  <a href="#gae23ef06175b27dd6772d4d4c098999b1"></a><br/></td></tr>
 
76
<tr class="memitem:gad185100e8d7969a473e9d42bc8084572"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gad185100e8d7969a473e9d42bc8084572">stp_list_get_start</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
77
<tr class="memdesc:gad185100e8d7969a473e9d42bc8084572"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the first item in a list.  <a href="#gad185100e8d7969a473e9d42bc8084572"></a><br/></td></tr>
 
78
<tr class="memitem:gae939f15ee1a6e4c0aaad7a7be7f40b74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae939f15ee1a6e4c0aaad7a7be7f40b74">stp_list_get_end</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
79
<tr class="memdesc:gae939f15ee1a6e4c0aaad7a7be7f40b74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the last item in a list.  <a href="#gae939f15ee1a6e4c0aaad7a7be7f40b74"></a><br/></td></tr>
 
80
<tr class="memitem:gad377973e8b13d02c9c111d970f491993"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gad377973e8b13d02c9c111d970f491993">stp_list_get_item_by_index</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, int idx)</td></tr>
 
81
<tr class="memdesc:gad377973e8b13d02c9c111d970f491993"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an item in a list by its index.  <a href="#gad377973e8b13d02c9c111d970f491993"></a><br/></td></tr>
 
82
<tr class="memitem:ga729867c847dd8282f74806968c708f28"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga729867c847dd8282f74806968c708f28">stp_list_get_item_by_name</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, const char *name)</td></tr>
 
83
<tr class="memdesc:ga729867c847dd8282f74806968c708f28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an item in a list by its name.  <a href="#ga729867c847dd8282f74806968c708f28"></a><br/></td></tr>
 
84
<tr class="memitem:gacc9140df3f4311cd750ba10a1cbf37d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gacc9140df3f4311cd750ba10a1cbf37d1">stp_list_get_item_by_long_name</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, const char *long_name)</td></tr>
 
85
<tr class="memdesc:gacc9140df3f4311cd750ba10a1cbf37d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an item in a list by its long name.  <a href="#gacc9140df3f4311cd750ba10a1cbf37d1"></a><br/></td></tr>
 
86
<tr class="memitem:gae22741060734c9cbc47656c5ea35c3f3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae22741060734c9cbc47656c5ea35c3f3">stp_list_get_length</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
87
<tr class="memdesc:gae22741060734c9cbc47656c5ea35c3f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the length of a list.  <a href="#gae22741060734c9cbc47656c5ea35c3f3"></a><br/></td></tr>
 
88
<tr class="memitem:gae3300d7971c393d119d6fd62e2b578ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae3300d7971c393d119d6fd62e2b578ec">stp_list_set_freefunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a> freefunc)</td></tr>
 
89
<tr class="memdesc:gae3300d7971c393d119d6fd62e2b578ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node free function.  <a href="#gae3300d7971c393d119d6fd62e2b578ec"></a><br/></td></tr>
 
90
<tr class="memitem:gabfc1ef258084a3e1ad959aa3d2f053f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gabfc1ef258084a3e1ad959aa3d2f053f4">stp_list_get_freefunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
91
<tr class="memdesc:gabfc1ef258084a3e1ad959aa3d2f053f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node free function.  <a href="#gabfc1ef258084a3e1ad959aa3d2f053f4"></a><br/></td></tr>
 
92
<tr class="memitem:ga7e002ed25bbfbad236c1c619841f1ac6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga7e002ed25bbfbad236c1c619841f1ac6">stp_list_set_copyfunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a> copyfunc)</td></tr>
 
93
<tr class="memdesc:ga7e002ed25bbfbad236c1c619841f1ac6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node copy function.  <a href="#ga7e002ed25bbfbad236c1c619841f1ac6"></a><br/></td></tr>
 
94
<tr class="memitem:ga686e92ee802147171e5fc723d0079b8d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga686e92ee802147171e5fc723d0079b8d">stp_list_get_copyfunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
95
<tr class="memdesc:ga686e92ee802147171e5fc723d0079b8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node copy function.  <a href="#ga686e92ee802147171e5fc723d0079b8d"></a><br/></td></tr>
 
96
<tr class="memitem:ga889af512d87a00d696acc0b6b3fafe78"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga889af512d87a00d696acc0b6b3fafe78">stp_list_set_namefunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> namefunc)</td></tr>
 
97
<tr class="memdesc:ga889af512d87a00d696acc0b6b3fafe78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node name function.  <a href="#ga889af512d87a00d696acc0b6b3fafe78"></a><br/></td></tr>
 
98
<tr class="memitem:ga50b1ab3c3b6b0ba7c0cf2128e2024369"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga50b1ab3c3b6b0ba7c0cf2128e2024369">stp_list_get_namefunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
99
<tr class="memdesc:ga50b1ab3c3b6b0ba7c0cf2128e2024369"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node name function.  <a href="#ga50b1ab3c3b6b0ba7c0cf2128e2024369"></a><br/></td></tr>
 
100
<tr class="memitem:ga5be91978431b0ed48ea7919807bdcb73"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga5be91978431b0ed48ea7919807bdcb73">stp_list_set_long_namefunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> long_namefunc)</td></tr>
 
101
<tr class="memdesc:ga5be91978431b0ed48ea7919807bdcb73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node long name function.  <a href="#ga5be91978431b0ed48ea7919807bdcb73"></a><br/></td></tr>
 
102
<tr class="memitem:gab99b3ed6da1ea739eed3f2c04fbb7fa7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gab99b3ed6da1ea739eed3f2c04fbb7fa7">stp_list_get_long_namefunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
103
<tr class="memdesc:gab99b3ed6da1ea739eed3f2c04fbb7fa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node long name function.  <a href="#gab99b3ed6da1ea739eed3f2c04fbb7fa7"></a><br/></td></tr>
 
104
<tr class="memitem:gab1d2486542b858b44b299cfcdf7d8784"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gab1d2486542b858b44b299cfcdf7d8784">stp_list_set_sortfunc</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a> sortfunc)</td></tr>
 
105
<tr class="memdesc:gab1d2486542b858b44b299cfcdf7d8784"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a list node sort function.  <a href="#gab1d2486542b858b44b299cfcdf7d8784"></a><br/></td></tr>
 
106
<tr class="memitem:ga4b32e315d3fd23eabeffcc8d931ea454"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga4b32e315d3fd23eabeffcc8d931ea454">stp_list_get_sortfunc</a> (const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list)</td></tr>
 
107
<tr class="memdesc:ga4b32e315d3fd23eabeffcc8d931ea454"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list node sort function.  <a href="#ga4b32e315d3fd23eabeffcc8d931ea454"></a><br/></td></tr>
 
108
<tr class="memitem:gae726297a82e140672a018e135ffc6a0e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gae726297a82e140672a018e135ffc6a0e">stp_list_item_create</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *next, const void *data)</td></tr>
 
109
<tr class="memdesc:gae726297a82e140672a018e135ffc6a0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new list item.  <a href="#gae726297a82e140672a018e135ffc6a0e"></a><br/></td></tr>
 
110
<tr class="memitem:ga5e36d4f61e00cb3e4c4a759f5e7e9f4b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga5e36d4f61e00cb3e4c4a759f5e7e9f4b">stp_list_item_destroy</a> (<a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *list, <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
 
111
<tr class="memdesc:ga5e36d4f61e00cb3e4c4a759f5e7e9f4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a list item.  <a href="#ga5e36d4f61e00cb3e4c4a759f5e7e9f4b"></a><br/></td></tr>
 
112
<tr class="memitem:gabaa2a241055402438a0cae6f40cf6a78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gabaa2a241055402438a0cae6f40cf6a78">stp_list_item_prev</a> (const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
 
113
<tr class="memdesc:gabaa2a241055402438a0cae6f40cf6a78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the previous item in the list.  <a href="#gabaa2a241055402438a0cae6f40cf6a78"></a><br/></td></tr>
 
114
<tr class="memitem:ga81ab310caf6432ce1e492eaafdb6c0d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#ga81ab310caf6432ce1e492eaafdb6c0d7">stp_list_item_next</a> (const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
 
115
<tr class="memdesc:ga81ab310caf6432ce1e492eaafdb6c0d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next item in the list.  <a href="#ga81ab310caf6432ce1e492eaafdb6c0d7"></a><br/></td></tr>
 
116
<tr class="memitem:gad6f6b303b40fa75f22a86391785178cb"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gad6f6b303b40fa75f22a86391785178cb">stp_list_item_get_data</a> (const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item)</td></tr>
 
117
<tr class="memdesc:gad6f6b303b40fa75f22a86391785178cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the data associated with a list item.  <a href="#gad6f6b303b40fa75f22a86391785178cb"></a><br/></td></tr>
 
118
<tr class="memitem:gac1e34edcd47ffdc119cdcaf5ad38e1c4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__list.html#gac1e34edcd47ffdc119cdcaf5ad38e1c4">stp_list_item_set_data</a> (<a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *item, void *data)</td></tr>
 
119
<tr class="memdesc:gac1e34edcd47ffdc119cdcaf5ad38e1c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the data associated with a list item.  <a href="#gac1e34edcd47ffdc119cdcaf5ad38e1c4"></a><br/></td></tr>
129
120
</table>
130
121
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
131
122
<p>The list data type implements a fast generic doubly-linked list. </p>
132
123
<p>It supports all of the operations you might want in a list (insert, remove, iterate over the list, copy whole lists), plus some (optional) less common features: finding items by index, name or long name, and sorting. These should also be fairly fast, due to caching in the list head. </p>
133
124
<hr/><h2>Typedef Documentation</h2>
134
 
<a class="anchor" id="ga67b4fafe1ab6ead5be7500f88874bdb0"></a><!-- doxytag: member="list.h::stp_list_item_t" ref="ga67b4fafe1ab6ead5be7500f88874bdb0" args="" -->
 
125
<a class="anchor" id="ga67b4fafe1ab6ead5be7500f88874bdb0"></a>
135
126
<div class="memitem">
136
127
<div class="memproto">
137
128
      <table class="memname">
139
130
          <td class="memname">typedef struct stp_list_item <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a></td>
140
131
        </tr>
141
132
      </table>
142
 
</div>
143
 
<div class="memdoc">
 
133
</div><div class="memdoc">
144
134
 
145
135
<p>The list item opaque data type. </p>
146
136
<p>This object is a node in the list. </p>
147
137
 
148
138
</div>
149
139
</div>
150
 
<a class="anchor" id="ga53cf4f01ab7d712f771cb5fb479d2ba7"></a><!-- doxytag: member="list.h::stp_list_t" ref="ga53cf4f01ab7d712f771cb5fb479d2ba7" args="" -->
 
140
<a class="anchor" id="ga53cf4f01ab7d712f771cb5fb479d2ba7"></a>
151
141
<div class="memitem">
152
142
<div class="memproto">
153
143
      <table class="memname">
155
145
          <td class="memname">typedef struct stp_list <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a></td>
156
146
        </tr>
157
147
      </table>
158
 
</div>
159
 
<div class="memdoc">
 
148
</div><div class="memdoc">
160
149
 
161
150
<p>The list opaque data type. </p>
162
151
<p>This object represents the list as a whole. </p>
163
152
 
164
153
</div>
165
154
</div>
166
 
<a class="anchor" id="ga8d8084abc24eb4b00290916d5ff44c1f"></a><!-- doxytag: member="list.h::stp_node_copyfunc" ref="ga8d8084abc24eb4b00290916d5ff44c1f" args=")(const void *)" -->
 
155
<a class="anchor" id="ga8d8084abc24eb4b00290916d5ff44c1f"></a>
167
156
<div class="memitem">
168
157
<div class="memproto">
169
158
      <table class="memname">
170
159
        <tr>
171
 
          <td class="memname">typedef void*(* <a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a>)(const void *)</td>
 
160
          <td class="memname">typedef void*(* stp_node_copyfunc)(const void *)</td>
172
161
        </tr>
173
162
      </table>
174
 
</div>
175
 
<div class="memdoc">
 
163
</div><div class="memdoc">
176
164
 
177
165
<p>A callback function to copy the data a node contains. </p>
178
166
<p>The parameter is a pointer to the node data. The return value is a pointer to the new copy of the data. </p>
179
167
 
180
168
</div>
181
169
</div>
182
 
<a class="anchor" id="gac09ea139ad36a6e21f30755439afeab5"></a><!-- doxytag: member="list.h::stp_node_freefunc" ref="gac09ea139ad36a6e21f30755439afeab5" args=")(void *)" -->
 
170
<a class="anchor" id="gac09ea139ad36a6e21f30755439afeab5"></a>
183
171
<div class="memitem">
184
172
<div class="memproto">
185
173
      <table class="memname">
186
174
        <tr>
187
 
          <td class="memname">typedef void(* <a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a>)(void *)</td>
 
175
          <td class="memname">typedef void(* stp_node_freefunc)(void *)</td>
188
176
        </tr>
189
177
      </table>
190
 
</div>
191
 
<div class="memdoc">
 
178
</div><div class="memdoc">
192
179
 
193
180
<p>A callback function to free the data a node contains. </p>
194
181
<p>The parameter is a pointer to the node data. </p>
195
182
 
196
183
</div>
197
184
</div>
198
 
<a class="anchor" id="ga815993ed02f7e9c7b5cb4680f0504d97"></a><!-- doxytag: member="list.h::stp_node_namefunc" ref="ga815993ed02f7e9c7b5cb4680f0504d97" args=")(const void *)" -->
 
185
<a class="anchor" id="ga815993ed02f7e9c7b5cb4680f0504d97"></a>
199
186
<div class="memitem">
200
187
<div class="memproto">
201
188
      <table class="memname">
202
189
        <tr>
203
 
          <td class="memname">typedef const char*(* <a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a>)(const void *)</td>
 
190
          <td class="memname">typedef const char*(* stp_node_namefunc)(const void *)</td>
204
191
        </tr>
205
192
      </table>
206
 
</div>
207
 
<div class="memdoc">
 
193
</div><div class="memdoc">
208
194
 
209
195
<p>A callback function to get the name of a node. </p>
210
196
<p>The parameter is a pointer to the node data. The return value is a pointer to the name of the node, or NULL if there is no name. </p>
211
197
 
212
198
</div>
213
199
</div>
214
 
<a class="anchor" id="gae5c7167d6fc957fee0b6aff45bc0b126"></a><!-- doxytag: member="list.h::stp_node_sortfunc" ref="gae5c7167d6fc957fee0b6aff45bc0b126" args=")(const void *, const void *)" -->
 
200
<a class="anchor" id="gae5c7167d6fc957fee0b6aff45bc0b126"></a>
215
201
<div class="memitem">
216
202
<div class="memproto">
217
203
      <table class="memname">
218
204
        <tr>
219
 
          <td class="memname">typedef int(* <a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a>)(const void *, const void *)</td>
 
205
          <td class="memname">typedef int(* stp_node_sortfunc)(const void *, const void *)</td>
220
206
        </tr>
221
207
      </table>
222
 
</div>
223
 
<div class="memdoc">
 
208
</div><div class="memdoc">
224
209
 
225
210
<p>A callback function to compare two nodes. </p>
226
211
<p>The two parameters are pointers to node data. The return value is &lt;0 if the first sorts before the second, 0 if they sort identically, and &gt;0 if the first sorts after the second. </p>
228
213
</div>
229
214
</div>
230
215
<hr/><h2>Function Documentation</h2>
231
 
<a class="anchor" id="ga0ba249dd06efbf5c0af8511ceab671e8"></a><!-- doxytag: member="list.h::stp_list_copy" ref="ga0ba249dd06efbf5c0af8511ceab671e8" args="(const stp_list_t *list)" -->
 
216
<a class="anchor" id="ga0ba249dd06efbf5c0af8511ceab671e8"></a>
232
217
<div class="memitem">
233
218
<div class="memproto">
234
219
      <table class="memname">
235
220
        <tr>
236
 
          <td class="memname"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a>* <a class="el" href="group__list.html#ga0ba249dd06efbf5c0af8511ceab671e8">stp_list_copy</a> </td>
 
221
          <td class="memname"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a>* stp_list_copy </td>
237
222
          <td>(</td>
238
223
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
239
224
          <td class="paramname"><em>list</em></td><td>)</td>
240
225
          <td></td>
241
226
        </tr>
242
227
      </table>
243
 
</div>
244
 
<div class="memdoc">
 
228
</div><div class="memdoc">
245
229
 
246
230
<p>Copy and allocate a list object. </p>
247
231
<p>list must be a valid list object previously created with <a class="el" href="group__list.html#ga3cfea94cd07f50d7d9b4ce384d349fca" title="Create a new list object.">stp_list_create()</a>. </p>
248
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
232
<dl class="params"><dt>Parameters:</dt><dd>
249
233
  <table class="params">
250
234
    <tr><td class="paramname">list</td><td>the list to copy. </td></tr>
251
235
  </table>
252
236
  </dd>
253
237
</dl>
254
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the new copy of the list. </dd></dl>
 
238
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the new copy of the list. </dd></dl>
255
239
 
256
240
</div>
257
241
</div>
258
 
<a class="anchor" id="ga3cfea94cd07f50d7d9b4ce384d349fca"></a><!-- doxytag: member="list.h::stp_list_create" ref="ga3cfea94cd07f50d7d9b4ce384d349fca" args="(void)" -->
 
242
<a class="anchor" id="ga3cfea94cd07f50d7d9b4ce384d349fca"></a>
259
243
<div class="memitem">
260
244
<div class="memproto">
261
245
      <table class="memname">
262
246
        <tr>
263
 
          <td class="memname"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a>* <a class="el" href="group__list.html#ga3cfea94cd07f50d7d9b4ce384d349fca">stp_list_create</a> </td>
 
247
          <td class="memname"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a>* stp_list_create </td>
264
248
          <td>(</td>
265
249
          <td class="paramtype">void&#160;</td>
266
250
          <td class="paramname"></td><td>)</td>
267
251
          <td></td>
268
252
        </tr>
269
253
      </table>
270
 
</div>
271
 
<div class="memdoc">
 
254
</div><div class="memdoc">
272
255
 
273
256
<p>Create a new list object. </p>
274
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the newly created list object. </dd></dl>
 
257
<dl class="section return"><dt>Returns:</dt><dd>the newly created list object. </dd></dl>
275
258
 
276
259
</div>
277
260
</div>
278
 
<a class="anchor" id="gae23ef06175b27dd6772d4d4c098999b1"></a><!-- doxytag: member="list.h::stp_list_destroy" ref="gae23ef06175b27dd6772d4d4c098999b1" args="(stp_list_t *list)" -->
 
261
<a class="anchor" id="gae23ef06175b27dd6772d4d4c098999b1"></a>
279
262
<div class="memitem">
280
263
<div class="memproto">
281
264
      <table class="memname">
282
265
        <tr>
283
 
          <td class="memname">int <a class="el" href="group__list.html#gae23ef06175b27dd6772d4d4c098999b1">stp_list_destroy</a> </td>
 
266
          <td class="memname">int stp_list_destroy </td>
284
267
          <td>(</td>
285
268
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
286
269
          <td class="paramname"><em>list</em></td><td>)</td>
287
270
          <td></td>
288
271
        </tr>
289
272
      </table>
290
 
</div>
291
 
<div class="memdoc">
 
273
</div><div class="memdoc">
292
274
 
293
275
<p>Destroy a list object. </p>
294
276
<p>It is an error to destroy the list more than once. </p>
295
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
277
<dl class="params"><dt>Parameters:</dt><dd>
296
278
  <table class="params">
297
279
    <tr><td class="paramname">list</td><td>the list to destroy. </td></tr>
298
280
  </table>
299
281
  </dd>
300
282
</dl>
301
 
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success, 1 on failure. </dd></dl>
 
283
<dl class="section return"><dt>Returns:</dt><dd>0 on success, 1 on failure. </dd></dl>
302
284
 
303
285
</div>
304
286
</div>
305
 
<a class="anchor" id="ga686e92ee802147171e5fc723d0079b8d"></a><!-- doxytag: member="list.h::stp_list_get_copyfunc" ref="ga686e92ee802147171e5fc723d0079b8d" args="(const stp_list_t *list)" -->
 
287
<a class="anchor" id="ga686e92ee802147171e5fc723d0079b8d"></a>
306
288
<div class="memitem">
307
289
<div class="memproto">
308
290
      <table class="memname">
309
291
        <tr>
310
 
          <td class="memname"><a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a> <a class="el" href="group__list.html#ga686e92ee802147171e5fc723d0079b8d">stp_list_get_copyfunc</a> </td>
 
292
          <td class="memname"><a class="el" href="group__list.html#ga8d8084abc24eb4b00290916d5ff44c1f">stp_node_copyfunc</a> stp_list_get_copyfunc </td>
311
293
          <td>(</td>
312
294
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
313
295
          <td class="paramname"><em>list</em></td><td>)</td>
314
296
          <td></td>
315
297
        </tr>
316
298
      </table>
317
 
</div>
318
 
<div class="memdoc">
 
299
</div><div class="memdoc">
319
300
 
320
301
<p>Get a list node copy function. </p>
321
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
302
<dl class="params"><dt>Parameters:</dt><dd>
322
303
  <table class="params">
323
304
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
324
305
  </table>
325
306
  </dd>
326
307
</dl>
327
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the function previously set with stp_list_set_copyfunc, or NULL if no function has been set. </dd></dl>
 
308
<dl class="section return"><dt>Returns:</dt><dd>the function previously set with stp_list_set_copyfunc, or NULL if no function has been set. </dd></dl>
328
309
 
329
310
</div>
330
311
</div>
331
 
<a class="anchor" id="gae939f15ee1a6e4c0aaad7a7be7f40b74"></a><!-- doxytag: member="list.h::stp_list_get_end" ref="gae939f15ee1a6e4c0aaad7a7be7f40b74" args="(const stp_list_t *list)" -->
 
312
<a class="anchor" id="gae939f15ee1a6e4c0aaad7a7be7f40b74"></a>
332
313
<div class="memitem">
333
314
<div class="memproto">
334
315
      <table class="memname">
335
316
        <tr>
336
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#gae939f15ee1a6e4c0aaad7a7be7f40b74">stp_list_get_end</a> </td>
 
317
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_get_end </td>
337
318
          <td>(</td>
338
319
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
339
320
          <td class="paramname"><em>list</em></td><td>)</td>
340
321
          <td></td>
341
322
        </tr>
342
323
      </table>
343
 
</div>
344
 
<div class="memdoc">
 
324
</div><div class="memdoc">
345
325
 
346
326
<p>Find the last item in a list. </p>
347
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
327
<dl class="params"><dt>Parameters:</dt><dd>
348
328
  <table class="params">
349
329
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
350
330
  </table>
351
331
  </dd>
352
332
</dl>
353
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the last list item, or NULL if the list is empty. </dd></dl>
 
333
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the last list item, or NULL if the list is empty. </dd></dl>
354
334
 
355
335
</div>
356
336
</div>
357
 
<a class="anchor" id="gabfc1ef258084a3e1ad959aa3d2f053f4"></a><!-- doxytag: member="list.h::stp_list_get_freefunc" ref="gabfc1ef258084a3e1ad959aa3d2f053f4" args="(const stp_list_t *list)" -->
 
337
<a class="anchor" id="gabfc1ef258084a3e1ad959aa3d2f053f4"></a>
358
338
<div class="memitem">
359
339
<div class="memproto">
360
340
      <table class="memname">
361
341
        <tr>
362
 
          <td class="memname"><a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a> <a class="el" href="group__list.html#gabfc1ef258084a3e1ad959aa3d2f053f4">stp_list_get_freefunc</a> </td>
 
342
          <td class="memname"><a class="el" href="group__list.html#gac09ea139ad36a6e21f30755439afeab5">stp_node_freefunc</a> stp_list_get_freefunc </td>
363
343
          <td>(</td>
364
344
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
365
345
          <td class="paramname"><em>list</em></td><td>)</td>
366
346
          <td></td>
367
347
        </tr>
368
348
      </table>
369
 
</div>
370
 
<div class="memdoc">
 
349
</div><div class="memdoc">
371
350
 
372
351
<p>Get a list node free function. </p>
373
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
352
<dl class="params"><dt>Parameters:</dt><dd>
374
353
  <table class="params">
375
354
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
376
355
  </table>
377
356
  </dd>
378
357
</dl>
379
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the function previously set with stp_list_set_freefunc, or NULL if no function has been set. </dd></dl>
 
358
<dl class="section return"><dt>Returns:</dt><dd>the function previously set with stp_list_set_freefunc, or NULL if no function has been set. </dd></dl>
380
359
 
381
360
</div>
382
361
</div>
383
 
<a class="anchor" id="gad377973e8b13d02c9c111d970f491993"></a><!-- doxytag: member="list.h::stp_list_get_item_by_index" ref="gad377973e8b13d02c9c111d970f491993" args="(const stp_list_t *list, int idx)" -->
 
362
<a class="anchor" id="gad377973e8b13d02c9c111d970f491993"></a>
384
363
<div class="memitem">
385
364
<div class="memproto">
386
365
      <table class="memname">
387
366
        <tr>
388
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#gad377973e8b13d02c9c111d970f491993">stp_list_get_item_by_index</a> </td>
 
367
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_get_item_by_index </td>
389
368
          <td>(</td>
390
369
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
391
370
          <td class="paramname"><em>list</em>, </td>
402
381
          <td></td><td></td>
403
382
        </tr>
404
383
      </table>
405
 
</div>
406
 
<div class="memdoc">
 
384
</div><div class="memdoc">
407
385
 
408
386
<p>Find an item in a list by its index. </p>
409
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
387
<dl class="params"><dt>Parameters:</dt><dd>
410
388
  <table class="params">
411
389
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
412
390
    <tr><td class="paramname">idx</td><td>the index to find. </td></tr>
413
391
  </table>
414
392
  </dd>
415
393
</dl>
416
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the list item, or NULL if the index is invalid or the list is empty. </dd></dl>
 
394
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the list item, or NULL if the index is invalid or the list is empty. </dd></dl>
417
395
 
418
396
</div>
419
397
</div>
420
 
<a class="anchor" id="gacc9140df3f4311cd750ba10a1cbf37d1"></a><!-- doxytag: member="list.h::stp_list_get_item_by_long_name" ref="gacc9140df3f4311cd750ba10a1cbf37d1" args="(const stp_list_t *list, const char *long_name)" -->
 
398
<a class="anchor" id="gacc9140df3f4311cd750ba10a1cbf37d1"></a>
421
399
<div class="memitem">
422
400
<div class="memproto">
423
401
      <table class="memname">
424
402
        <tr>
425
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#gacc9140df3f4311cd750ba10a1cbf37d1">stp_list_get_item_by_long_name</a> </td>
 
403
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_get_item_by_long_name </td>
426
404
          <td>(</td>
427
405
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
428
406
          <td class="paramname"><em>list</em>, </td>
439
417
          <td></td><td></td>
440
418
        </tr>
441
419
      </table>
442
 
</div>
443
 
<div class="memdoc">
 
420
</div><div class="memdoc">
444
421
 
445
422
<p>Find an item in a list by its long name. </p>
446
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
423
<dl class="params"><dt>Parameters:</dt><dd>
447
424
  <table class="params">
448
425
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
449
426
    <tr><td class="paramname">long_name</td><td>the long name to find. </td></tr>
450
427
  </table>
451
428
  </dd>
452
429
</dl>
453
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the list item, or NULL if the long name is invalid or the list is empty. </dd></dl>
 
430
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the list item, or NULL if the long name is invalid or the list is empty. </dd></dl>
454
431
 
455
432
</div>
456
433
</div>
457
 
<a class="anchor" id="ga729867c847dd8282f74806968c708f28"></a><!-- doxytag: member="list.h::stp_list_get_item_by_name" ref="ga729867c847dd8282f74806968c708f28" args="(const stp_list_t *list, const char *name)" -->
 
434
<a class="anchor" id="ga729867c847dd8282f74806968c708f28"></a>
458
435
<div class="memitem">
459
436
<div class="memproto">
460
437
      <table class="memname">
461
438
        <tr>
462
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#ga729867c847dd8282f74806968c708f28">stp_list_get_item_by_name</a> </td>
 
439
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_get_item_by_name </td>
463
440
          <td>(</td>
464
441
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
465
442
          <td class="paramname"><em>list</em>, </td>
476
453
          <td></td><td></td>
477
454
        </tr>
478
455
      </table>
479
 
</div>
480
 
<div class="memdoc">
 
456
</div><div class="memdoc">
481
457
 
482
458
<p>Find an item in a list by its name. </p>
483
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
459
<dl class="params"><dt>Parameters:</dt><dd>
484
460
  <table class="params">
485
461
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
486
462
    <tr><td class="paramname">name</td><td>the name to find. </td></tr>
487
463
  </table>
488
464
  </dd>
489
465
</dl>
490
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the list item, or NULL if the name is invalid or the list is empty. </dd></dl>
 
466
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the list item, or NULL if the name is invalid or the list is empty. </dd></dl>
491
467
 
492
468
</div>
493
469
</div>
494
 
<a class="anchor" id="gae22741060734c9cbc47656c5ea35c3f3"></a><!-- doxytag: member="list.h::stp_list_get_length" ref="gae22741060734c9cbc47656c5ea35c3f3" args="(const stp_list_t *list)" -->
 
470
<a class="anchor" id="gae22741060734c9cbc47656c5ea35c3f3"></a>
495
471
<div class="memitem">
496
472
<div class="memproto">
497
473
      <table class="memname">
498
474
        <tr>
499
 
          <td class="memname">int <a class="el" href="group__list.html#gae22741060734c9cbc47656c5ea35c3f3">stp_list_get_length</a> </td>
 
475
          <td class="memname">int stp_list_get_length </td>
500
476
          <td>(</td>
501
477
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
502
478
          <td class="paramname"><em>list</em></td><td>)</td>
503
479
          <td></td>
504
480
        </tr>
505
481
      </table>
506
 
</div>
507
 
<div class="memdoc">
 
482
</div><div class="memdoc">
508
483
 
509
484
<p>Get the length of a list. </p>
510
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
485
<dl class="params"><dt>Parameters:</dt><dd>
511
486
  <table class="params">
512
487
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
513
488
  </table>
514
489
  </dd>
515
490
</dl>
516
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the list length (number of list items). </dd></dl>
 
491
<dl class="section return"><dt>Returns:</dt><dd>the list length (number of list items). </dd></dl>
517
492
 
518
493
</div>
519
494
</div>
520
 
<a class="anchor" id="gab99b3ed6da1ea739eed3f2c04fbb7fa7"></a><!-- doxytag: member="list.h::stp_list_get_long_namefunc" ref="gab99b3ed6da1ea739eed3f2c04fbb7fa7" args="(const stp_list_t *list)" -->
 
495
<a class="anchor" id="gab99b3ed6da1ea739eed3f2c04fbb7fa7"></a>
521
496
<div class="memitem">
522
497
<div class="memproto">
523
498
      <table class="memname">
524
499
        <tr>
525
 
          <td class="memname"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> <a class="el" href="group__list.html#gab99b3ed6da1ea739eed3f2c04fbb7fa7">stp_list_get_long_namefunc</a> </td>
 
500
          <td class="memname"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> stp_list_get_long_namefunc </td>
526
501
          <td>(</td>
527
502
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
528
503
          <td class="paramname"><em>list</em></td><td>)</td>
529
504
          <td></td>
530
505
        </tr>
531
506
      </table>
532
 
</div>
533
 
<div class="memdoc">
 
507
</div><div class="memdoc">
534
508
 
535
509
<p>Get a list node long name function. </p>
536
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
510
<dl class="params"><dt>Parameters:</dt><dd>
537
511
  <table class="params">
538
512
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
539
513
  </table>
540
514
  </dd>
541
515
</dl>
542
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the function previously set with stp_list_set_long_namefunc, or NULL if no function has been set. </dd></dl>
 
516
<dl class="section return"><dt>Returns:</dt><dd>the function previously set with stp_list_set_long_namefunc, or NULL if no function has been set. </dd></dl>
543
517
 
544
518
</div>
545
519
</div>
546
 
<a class="anchor" id="ga50b1ab3c3b6b0ba7c0cf2128e2024369"></a><!-- doxytag: member="list.h::stp_list_get_namefunc" ref="ga50b1ab3c3b6b0ba7c0cf2128e2024369" args="(const stp_list_t *list)" -->
 
520
<a class="anchor" id="ga50b1ab3c3b6b0ba7c0cf2128e2024369"></a>
547
521
<div class="memitem">
548
522
<div class="memproto">
549
523
      <table class="memname">
550
524
        <tr>
551
 
          <td class="memname"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> <a class="el" href="group__list.html#ga50b1ab3c3b6b0ba7c0cf2128e2024369">stp_list_get_namefunc</a> </td>
 
525
          <td class="memname"><a class="el" href="group__list.html#ga815993ed02f7e9c7b5cb4680f0504d97">stp_node_namefunc</a> stp_list_get_namefunc </td>
552
526
          <td>(</td>
553
527
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
554
528
          <td class="paramname"><em>list</em></td><td>)</td>
555
529
          <td></td>
556
530
        </tr>
557
531
      </table>
558
 
</div>
559
 
<div class="memdoc">
 
532
</div><div class="memdoc">
560
533
 
561
534
<p>Get a list node name function. </p>
562
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
535
<dl class="params"><dt>Parameters:</dt><dd>
563
536
  <table class="params">
564
537
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
565
538
  </table>
566
539
  </dd>
567
540
</dl>
568
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the function previously set with stp_list_set_namefunc, or NULL if no function has been set. </dd></dl>
 
541
<dl class="section return"><dt>Returns:</dt><dd>the function previously set with stp_list_set_namefunc, or NULL if no function has been set. </dd></dl>
569
542
 
570
543
</div>
571
544
</div>
572
 
<a class="anchor" id="ga4b32e315d3fd23eabeffcc8d931ea454"></a><!-- doxytag: member="list.h::stp_list_get_sortfunc" ref="ga4b32e315d3fd23eabeffcc8d931ea454" args="(const stp_list_t *list)" -->
 
545
<a class="anchor" id="ga4b32e315d3fd23eabeffcc8d931ea454"></a>
573
546
<div class="memitem">
574
547
<div class="memproto">
575
548
      <table class="memname">
576
549
        <tr>
577
 
          <td class="memname"><a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a> <a class="el" href="group__list.html#ga4b32e315d3fd23eabeffcc8d931ea454">stp_list_get_sortfunc</a> </td>
 
550
          <td class="memname"><a class="el" href="group__list.html#gae5c7167d6fc957fee0b6aff45bc0b126">stp_node_sortfunc</a> stp_list_get_sortfunc </td>
578
551
          <td>(</td>
579
552
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
580
553
          <td class="paramname"><em>list</em></td><td>)</td>
581
554
          <td></td>
582
555
        </tr>
583
556
      </table>
584
 
</div>
585
 
<div class="memdoc">
 
557
</div><div class="memdoc">
586
558
 
587
559
<p>Get a list node sort function. </p>
588
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
560
<dl class="params"><dt>Parameters:</dt><dd>
589
561
  <table class="params">
590
562
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
591
563
  </table>
592
564
  </dd>
593
565
</dl>
594
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the function previously set with stp_list_set_sortfunc, or NULL if no function has been set. </dd></dl>
 
566
<dl class="section return"><dt>Returns:</dt><dd>the function previously set with stp_list_set_sortfunc, or NULL if no function has been set. </dd></dl>
595
567
 
596
568
</div>
597
569
</div>
598
 
<a class="anchor" id="gad185100e8d7969a473e9d42bc8084572"></a><!-- doxytag: member="list.h::stp_list_get_start" ref="gad185100e8d7969a473e9d42bc8084572" args="(const stp_list_t *list)" -->
 
570
<a class="anchor" id="gad185100e8d7969a473e9d42bc8084572"></a>
599
571
<div class="memitem">
600
572
<div class="memproto">
601
573
      <table class="memname">
602
574
        <tr>
603
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#gad185100e8d7969a473e9d42bc8084572">stp_list_get_start</a> </td>
 
575
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_get_start </td>
604
576
          <td>(</td>
605
577
          <td class="paramtype">const <a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
606
578
          <td class="paramname"><em>list</em></td><td>)</td>
607
579
          <td></td>
608
580
        </tr>
609
581
      </table>
610
 
</div>
611
 
<div class="memdoc">
 
582
</div><div class="memdoc">
612
583
 
613
584
<p>Find the first item in a list. </p>
614
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
585
<dl class="params"><dt>Parameters:</dt><dd>
615
586
  <table class="params">
616
587
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
617
588
  </table>
618
589
  </dd>
619
590
</dl>
620
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the first list item, or NULL if the list is empty. </dd></dl>
 
591
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the first list item, or NULL if the list is empty. </dd></dl>
621
592
 
622
593
</div>
623
594
</div>
624
 
<a class="anchor" id="gae726297a82e140672a018e135ffc6a0e"></a><!-- doxytag: member="list.h::stp_list_item_create" ref="gae726297a82e140672a018e135ffc6a0e" args="(stp_list_t *list, stp_list_item_t *next, const void *data)" -->
 
595
<a class="anchor" id="gae726297a82e140672a018e135ffc6a0e"></a>
625
596
<div class="memitem">
626
597
<div class="memproto">
627
598
      <table class="memname">
628
599
        <tr>
629
 
          <td class="memname">int <a class="el" href="group__list.html#gae726297a82e140672a018e135ffc6a0e">stp_list_item_create</a> </td>
 
600
          <td class="memname">int stp_list_item_create </td>
630
601
          <td>(</td>
631
602
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
632
603
          <td class="paramname"><em>list</em>, </td>
649
620
          <td></td><td></td>
650
621
        </tr>
651
622
      </table>
652
 
</div>
653
 
<div class="memdoc">
 
623
</div><div class="memdoc">
654
624
 
655
625
<p>Create a new list item. </p>
656
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
626
<dl class="params"><dt>Parameters:</dt><dd>
657
627
  <table class="params">
658
628
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
659
629
    <tr><td class="paramname">next</td><td>the next item in the list, or NULL to insert at the end of the list. </td></tr>
661
631
  </table>
662
632
  </dd>
663
633
</dl>
664
 
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success, 1 on failure (if data is NULL, for example). </dd></dl>
 
634
<dl class="section return"><dt>Returns:</dt><dd>0 on success, 1 on failure (if data is NULL, for example). </dd></dl>
665
635
 
666
636
</div>
667
637
</div>
668
 
<a class="anchor" id="ga5e36d4f61e00cb3e4c4a759f5e7e9f4b"></a><!-- doxytag: member="list.h::stp_list_item_destroy" ref="ga5e36d4f61e00cb3e4c4a759f5e7e9f4b" args="(stp_list_t *list, stp_list_item_t *item)" -->
 
638
<a class="anchor" id="ga5e36d4f61e00cb3e4c4a759f5e7e9f4b"></a>
669
639
<div class="memitem">
670
640
<div class="memproto">
671
641
      <table class="memname">
672
642
        <tr>
673
 
          <td class="memname">int <a class="el" href="group__list.html#ga5e36d4f61e00cb3e4c4a759f5e7e9f4b">stp_list_item_destroy</a> </td>
 
643
          <td class="memname">int stp_list_item_destroy </td>
674
644
          <td>(</td>
675
645
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
676
646
          <td class="paramname"><em>list</em>, </td>
687
657
          <td></td><td></td>
688
658
        </tr>
689
659
      </table>
690
 
</div>
691
 
<div class="memdoc">
 
660
</div><div class="memdoc">
692
661
 
693
662
<p>Destroy a list item. </p>
694
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
663
<dl class="params"><dt>Parameters:</dt><dd>
695
664
  <table class="params">
696
665
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
697
666
    <tr><td class="paramname">item</td><td>the item to destroy. </td></tr>
698
667
  </table>
699
668
  </dd>
700
669
</dl>
701
 
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success, 1 on failure. </dd></dl>
 
670
<dl class="section return"><dt>Returns:</dt><dd>0 on success, 1 on failure. </dd></dl>
702
671
 
703
672
</div>
704
673
</div>
705
 
<a class="anchor" id="gad6f6b303b40fa75f22a86391785178cb"></a><!-- doxytag: member="list.h::stp_list_item_get_data" ref="gad6f6b303b40fa75f22a86391785178cb" args="(const stp_list_item_t *item)" -->
 
674
<a class="anchor" id="gad6f6b303b40fa75f22a86391785178cb"></a>
706
675
<div class="memitem">
707
676
<div class="memproto">
708
677
      <table class="memname">
709
678
        <tr>
710
 
          <td class="memname">void* <a class="el" href="group__list.html#gad6f6b303b40fa75f22a86391785178cb">stp_list_item_get_data</a> </td>
 
679
          <td class="memname">void* stp_list_item_get_data </td>
711
680
          <td>(</td>
712
681
          <td class="paramtype">const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td>
713
682
          <td class="paramname"><em>item</em></td><td>)</td>
714
683
          <td></td>
715
684
        </tr>
716
685
      </table>
717
 
</div>
718
 
<div class="memdoc">
 
686
</div><div class="memdoc">
719
687
 
720
688
<p>Get the data associated with a list item. </p>
721
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
689
<dl class="params"><dt>Parameters:</dt><dd>
722
690
  <table class="params">
723
691
    <tr><td class="paramname">item</td><td>the list item to use. </td></tr>
724
692
  </table>
725
693
  </dd>
726
694
</dl>
727
 
<dl class="return"><dt><b>Returns:</b></dt><dd>the data associated with item. </dd></dl>
 
695
<dl class="section return"><dt>Returns:</dt><dd>the data associated with item. </dd></dl>
728
696
 
729
697
</div>
730
698
</div>
731
 
<a class="anchor" id="ga81ab310caf6432ce1e492eaafdb6c0d7"></a><!-- doxytag: member="list.h::stp_list_item_next" ref="ga81ab310caf6432ce1e492eaafdb6c0d7" args="(const stp_list_item_t *item)" -->
 
699
<a class="anchor" id="ga81ab310caf6432ce1e492eaafdb6c0d7"></a>
732
700
<div class="memitem">
733
701
<div class="memproto">
734
702
      <table class="memname">
735
703
        <tr>
736
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#ga81ab310caf6432ce1e492eaafdb6c0d7">stp_list_item_next</a> </td>
 
704
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_item_next </td>
737
705
          <td>(</td>
738
706
          <td class="paramtype">const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td>
739
707
          <td class="paramname"><em>item</em></td><td>)</td>
740
708
          <td></td>
741
709
        </tr>
742
710
      </table>
743
 
</div>
744
 
<div class="memdoc">
 
711
</div><div class="memdoc">
745
712
 
746
713
<p>Get the next item in the list. </p>
747
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
714
<dl class="params"><dt>Parameters:</dt><dd>
748
715
  <table class="params">
749
716
    <tr><td class="paramname">item</td><td>the item to start from. </td></tr>
750
717
  </table>
751
718
  </dd>
752
719
</dl>
753
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the list item following from item, or NULL if item is the end of the list. </dd></dl>
 
720
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the list item following from item, or NULL if item is the end of the list. </dd></dl>
754
721
 
755
722
</div>
756
723
</div>
757
 
<a class="anchor" id="gabaa2a241055402438a0cae6f40cf6a78"></a><!-- doxytag: member="list.h::stp_list_item_prev" ref="gabaa2a241055402438a0cae6f40cf6a78" args="(const stp_list_item_t *item)" -->
 
724
<a class="anchor" id="gabaa2a241055402438a0cae6f40cf6a78"></a>
758
725
<div class="memitem">
759
726
<div class="memproto">
760
727
      <table class="memname">
761
728
        <tr>
762
 
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* <a class="el" href="group__list.html#gabaa2a241055402438a0cae6f40cf6a78">stp_list_item_prev</a> </td>
 
729
          <td class="memname"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a>* stp_list_item_prev </td>
763
730
          <td>(</td>
764
731
          <td class="paramtype">const <a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td>
765
732
          <td class="paramname"><em>item</em></td><td>)</td>
766
733
          <td></td>
767
734
        </tr>
768
735
      </table>
769
 
</div>
770
 
<div class="memdoc">
 
736
</div><div class="memdoc">
771
737
 
772
738
<p>Get the previous item in the list. </p>
773
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
739
<dl class="params"><dt>Parameters:</dt><dd>
774
740
  <table class="params">
775
741
    <tr><td class="paramname">item</td><td>the item to start from. </td></tr>
776
742
  </table>
777
743
  </dd>
778
744
</dl>
779
 
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the list item prior to item, or NULL if item is the start of the list. </dd></dl>
 
745
<dl class="section return"><dt>Returns:</dt><dd>a pointer to the list item prior to item, or NULL if item is the start of the list. </dd></dl>
780
746
 
781
747
</div>
782
748
</div>
783
 
<a class="anchor" id="gac1e34edcd47ffdc119cdcaf5ad38e1c4"></a><!-- doxytag: member="list.h::stp_list_item_set_data" ref="gac1e34edcd47ffdc119cdcaf5ad38e1c4" args="(stp_list_item_t *item, void *data)" -->
 
749
<a class="anchor" id="gac1e34edcd47ffdc119cdcaf5ad38e1c4"></a>
784
750
<div class="memitem">
785
751
<div class="memproto">
786
752
      <table class="memname">
787
753
        <tr>
788
 
          <td class="memname">int <a class="el" href="group__list.html#gac1e34edcd47ffdc119cdcaf5ad38e1c4">stp_list_item_set_data</a> </td>
 
754
          <td class="memname">int stp_list_item_set_data </td>
789
755
          <td>(</td>
790
756
          <td class="paramtype"><a class="el" href="group__list.html#ga67b4fafe1ab6ead5be7500f88874bdb0">stp_list_item_t</a> *&#160;</td>
791
757
          <td class="paramname"><em>item</em>, </td>
802
768
          <td></td><td></td>
803
769
        </tr>
804
770
      </table>
805
 
</div>
806
 
<div class="memdoc">
 
771
</div><div class="memdoc">
807
772
 
808
773
<p>Set the data associated with a list item. </p>
809
 
<dl class="warning"><dt><b>Warning:</b></dt><dd>Note that if a sortfunc is in use, changing the data will NOT re-sort the list! </dd></dl>
810
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
774
<dl class="section warning"><dt>Warning:</dt><dd>Note that if a sortfunc is in use, changing the data will NOT re-sort the list! </dd></dl>
 
775
<dl class="params"><dt>Parameters:</dt><dd>
811
776
  <table class="params">
812
777
    <tr><td class="paramname">item</td><td>the list item to use. </td></tr>
813
778
    <tr><td class="paramname">data</td><td>the data to set. </td></tr>
814
779
  </table>
815
780
  </dd>
816
781
</dl>
817
 
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success, 1 on failure (if data is NULL). </dd></dl>
 
782
<dl class="section return"><dt>Returns:</dt><dd>0 on success, 1 on failure (if data is NULL). </dd></dl>
818
783
 
819
784
</div>
820
785
</div>
821
 
<a class="anchor" id="ga55fbb8f7a3920b783b02183c5ea57624"></a><!-- doxytag: member="list.h::stp_list_node_free_data" ref="ga55fbb8f7a3920b783b02183c5ea57624" args="(void *item)" -->
 
786
<a class="anchor" id="ga55fbb8f7a3920b783b02183c5ea57624"></a>
822
787
<div class="memitem">
823
788
<div class="memproto">
824
789
      <table class="memname">
825
790
        <tr>
826
 
          <td class="memname">void <a class="el" href="group__list.html#ga55fbb8f7a3920b783b02183c5ea57624">stp_list_node_free_data</a> </td>
 
791
          <td class="memname">void stp_list_node_free_data </td>
827
792
          <td>(</td>
828
793
          <td class="paramtype">void *&#160;</td>
829
794
          <td class="paramname"><em>item</em></td><td>)</td>
830
795
          <td></td>
831
796
        </tr>
832
797
      </table>
833
 
</div>
834
 
<div class="memdoc">
 
798
</div><div class="memdoc">
835
799
 
836
800
<p>Free node data allocated with stp_malloc. </p>
837
801
<p>This function is indended for use as an stp_node_freefunc, which uses stp_free to free the node data. </p>
838
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
802
<dl class="params"><dt>Parameters:</dt><dd>
839
803
  <table class="params">
840
804
    <tr><td class="paramname">item</td><td>the node data to free </td></tr>
841
805
  </table>
844
808
 
845
809
</div>
846
810
</div>
847
 
<a class="anchor" id="ga7e002ed25bbfbad236c1c619841f1ac6"></a><!-- doxytag: member="list.h::stp_list_set_copyfunc" ref="ga7e002ed25bbfbad236c1c619841f1ac6" args="(stp_list_t *list, stp_node_copyfunc copyfunc)" -->
 
811
<a class="anchor" id="ga7e002ed25bbfbad236c1c619841f1ac6"></a>
848
812
<div class="memitem">
849
813
<div class="memproto">
850
814
      <table class="memname">
851
815
        <tr>
852
 
          <td class="memname">void <a class="el" href="group__list.html#ga7e002ed25bbfbad236c1c619841f1ac6">stp_list_set_copyfunc</a> </td>
 
816
          <td class="memname">void stp_list_set_copyfunc </td>
853
817
          <td>(</td>
854
818
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
855
819
          <td class="paramname"><em>list</em>, </td>
866
830
          <td></td><td></td>
867
831
        </tr>
868
832
      </table>
869
 
</div>
870
 
<div class="memdoc">
 
833
</div><div class="memdoc">
871
834
 
872
835
<p>Set a list node copy function. </p>
873
836
<p>This callback function will be called whenever a list item is copied. Its intended use is for automatic object copying (since C lacks a copy constructor). </p>
874
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
837
<dl class="params"><dt>Parameters:</dt><dd>
875
838
  <table class="params">
876
839
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
877
840
    <tr><td class="paramname">copyfunc</td><td>the function to set. </td></tr>
881
844
 
882
845
</div>
883
846
</div>
884
 
<a class="anchor" id="gae3300d7971c393d119d6fd62e2b578ec"></a><!-- doxytag: member="list.h::stp_list_set_freefunc" ref="gae3300d7971c393d119d6fd62e2b578ec" args="(stp_list_t *list, stp_node_freefunc freefunc)" -->
 
847
<a class="anchor" id="gae3300d7971c393d119d6fd62e2b578ec"></a>
885
848
<div class="memitem">
886
849
<div class="memproto">
887
850
      <table class="memname">
888
851
        <tr>
889
 
          <td class="memname">void <a class="el" href="group__list.html#gae3300d7971c393d119d6fd62e2b578ec">stp_list_set_freefunc</a> </td>
 
852
          <td class="memname">void stp_list_set_freefunc </td>
890
853
          <td>(</td>
891
854
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
892
855
          <td class="paramname"><em>list</em>, </td>
903
866
          <td></td><td></td>
904
867
        </tr>
905
868
      </table>
906
 
</div>
907
 
<div class="memdoc">
 
869
</div><div class="memdoc">
908
870
 
909
871
<p>Set a list node free function. </p>
910
872
<p>This callback function will be called whenever a list item is destroyed. Its intended use is for automatic object destruction and any other cleanup required. </p>
911
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
873
<dl class="params"><dt>Parameters:</dt><dd>
912
874
  <table class="params">
913
875
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
914
876
    <tr><td class="paramname">freefunc</td><td>the function to set. </td></tr>
918
880
 
919
881
</div>
920
882
</div>
921
 
<a class="anchor" id="ga5be91978431b0ed48ea7919807bdcb73"></a><!-- doxytag: member="list.h::stp_list_set_long_namefunc" ref="ga5be91978431b0ed48ea7919807bdcb73" args="(stp_list_t *list, stp_node_namefunc long_namefunc)" -->
 
883
<a class="anchor" id="ga5be91978431b0ed48ea7919807bdcb73"></a>
922
884
<div class="memitem">
923
885
<div class="memproto">
924
886
      <table class="memname">
925
887
        <tr>
926
 
          <td class="memname">void <a class="el" href="group__list.html#ga5be91978431b0ed48ea7919807bdcb73">stp_list_set_long_namefunc</a> </td>
 
888
          <td class="memname">void stp_list_set_long_namefunc </td>
927
889
          <td>(</td>
928
890
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
929
891
          <td class="paramname"><em>list</em>, </td>
940
902
          <td></td><td></td>
941
903
        </tr>
942
904
      </table>
943
 
</div>
944
 
<div class="memdoc">
 
905
</div><div class="memdoc">
945
906
 
946
907
<p>Set a list node long name function. </p>
947
908
<p>This callback function will be called whenever the long name of a list item needs to be determined. This is used to find list items by long name. </p>
948
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
909
<dl class="params"><dt>Parameters:</dt><dd>
949
910
  <table class="params">
950
911
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
951
912
    <tr><td class="paramname">long_namefunc</td><td>the function to set. </td></tr>
955
916
 
956
917
</div>
957
918
</div>
958
 
<a class="anchor" id="ga889af512d87a00d696acc0b6b3fafe78"></a><!-- doxytag: member="list.h::stp_list_set_namefunc" ref="ga889af512d87a00d696acc0b6b3fafe78" args="(stp_list_t *list, stp_node_namefunc namefunc)" -->
 
919
<a class="anchor" id="ga889af512d87a00d696acc0b6b3fafe78"></a>
959
920
<div class="memitem">
960
921
<div class="memproto">
961
922
      <table class="memname">
962
923
        <tr>
963
 
          <td class="memname">void <a class="el" href="group__list.html#ga889af512d87a00d696acc0b6b3fafe78">stp_list_set_namefunc</a> </td>
 
924
          <td class="memname">void stp_list_set_namefunc </td>
964
925
          <td>(</td>
965
926
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
966
927
          <td class="paramname"><em>list</em>, </td>
977
938
          <td></td><td></td>
978
939
        </tr>
979
940
      </table>
980
 
</div>
981
 
<div class="memdoc">
 
941
</div><div class="memdoc">
982
942
 
983
943
<p>Set a list node name function. </p>
984
944
<p>This callback function will be called whenever the name of a list item needs to be determined. This is used to find list items by name. </p>
985
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
945
<dl class="params"><dt>Parameters:</dt><dd>
986
946
  <table class="params">
987
947
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
988
948
    <tr><td class="paramname">namefunc</td><td>the function to set. </td></tr>
992
952
 
993
953
</div>
994
954
</div>
995
 
<a class="anchor" id="gab1d2486542b858b44b299cfcdf7d8784"></a><!-- doxytag: member="list.h::stp_list_set_sortfunc" ref="gab1d2486542b858b44b299cfcdf7d8784" args="(stp_list_t *list, stp_node_sortfunc sortfunc)" -->
 
955
<a class="anchor" id="gab1d2486542b858b44b299cfcdf7d8784"></a>
996
956
<div class="memitem">
997
957
<div class="memproto">
998
958
      <table class="memname">
999
959
        <tr>
1000
 
          <td class="memname">void <a class="el" href="group__list.html#gab1d2486542b858b44b299cfcdf7d8784">stp_list_set_sortfunc</a> </td>
 
960
          <td class="memname">void stp_list_set_sortfunc </td>
1001
961
          <td>(</td>
1002
962
          <td class="paramtype"><a class="el" href="group__list.html#ga53cf4f01ab7d712f771cb5fb479d2ba7">stp_list_t</a> *&#160;</td>
1003
963
          <td class="paramname"><em>list</em>, </td>
1014
974
          <td></td><td></td>
1015
975
        </tr>
1016
976
      </table>
1017
 
</div>
1018
 
<div class="memdoc">
 
977
</div><div class="memdoc">
1019
978
 
1020
979
<p>Set a list node sort function. </p>
1021
980
<p>This callback function will be called to determine the sort order for list items in sorted lists. </p>
1022
 
<dl class="params"><dt><b>Parameters:</b></dt><dd>
 
981
<dl class="params"><dt>Parameters:</dt><dd>
1023
982
  <table class="params">
1024
983
    <tr><td class="paramname">list</td><td>the list to use. </td></tr>
1025
984
    <tr><td class="paramname">sortfunc</td><td>the function to set. </td></tr>
1030
989
</div>
1031
990
</div>
1032
991
</div><!-- contents -->
1033
 
 
1034
 
 
 
992
<!-- start footer part -->
1035
993
<hr class="footer"/><address class="footer"><small>
1036
994
Generated by &#160;<a href="http://www.doxygen.org/index.html">
1037
995
<img class="footer" src="doxygen.png" alt="doxygen"/>
1038
 
</a> 1.7.6.1
 
996
</a> 1.8.1
1039
997
</small></address>
1040
 
 
1041
998
</body>
1042
999
</html>