Sophie

Sophie

distrib > Mandriva > current > x86_64 > by-pkgid > 3736f276bb1ccfbcee6cb2d27b25d981 > files > 153

openscap-devel-0.5.7-1mdv2010.1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Open SCAP Library: Main probe API</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Main probe API<br/>
<small>
[<a class="el" href="group__PROBES.html">Probes and S-expression</a>]</small>
</h1>
<p>Most of the operations that need to be done in a probe, processing input object, manipulating entities, creating output items.  
<a href="#_details">More...</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Files</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="probe-api_8h.html">probe-api.h</a></td></tr>
<tr><td colspan="2"><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga60d3eaa56be311e42ca265e1610ba357">probe_item_creat</a>(name, attrs,...)&nbsp;&nbsp;&nbsp;probe_obj_creat (name, attrs, __VA_ARGS__)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new item consisting of a name, optional attributes argument and an arbitrary number of entities.  <a href="#ga60d3eaa56be311e42ca265e1610ba357"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaed502aacce1f11fcbee62e4c3b474995"></a><!-- doxytag: member="PROBESAPI::probe_item_getent" ref="gaed502aacce1f11fcbee62e4c3b474995" args="(item, name, n)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>probe_item_getent</b>(item, name, n)&nbsp;&nbsp;&nbsp;probe_obj_getent (item, name, n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad69bb1533565f81eb97329ad8999a274"></a><!-- doxytag: member="PROBESAPI::PROBE_EINVAL" ref="gad69bb1533565f81eb97329ad8999a274" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EINVAL</b>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga665325994bad09304d8200537d93642b"></a><!-- doxytag: member="PROBESAPI::PROBE_ENOELM" ref="ga665325994bad09304d8200537d93642b" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENOELM</b>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac40d965d6387fc705aea7e17dd7680ba"></a><!-- doxytag: member="PROBESAPI::PROBE_ENOVAL" ref="gac40d965d6387fc705aea7e17dd7680ba" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENOVAL</b>&nbsp;&nbsp;&nbsp;3</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga74bcecc6555100a7238fdc65f0d6148b"></a><!-- doxytag: member="PROBESAPI::PROBE_ENOATTR" ref="ga74bcecc6555100a7238fdc65f0d6148b" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENOATTR</b>&nbsp;&nbsp;&nbsp;4</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9a5597ef21583fc083506d20a214761a"></a><!-- doxytag: member="PROBESAPI::PROBE_EINIT" ref="ga9a5597ef21583fc083506d20a214761a" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EINIT</b>&nbsp;&nbsp;&nbsp;5</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa21674196b5cb001c28278c9514be185"></a><!-- doxytag: member="PROBESAPI::PROBE_ENOMEM" ref="gaa21674196b5cb001c28278c9514be185" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENOMEM</b>&nbsp;&nbsp;&nbsp;6</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa6a7dd0ff32488e301fc8b9420acf55c"></a><!-- doxytag: member="PROBESAPI::PROBE_EOPNOTSUPP" ref="gaa6a7dd0ff32488e301fc8b9420acf55c" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EOPNOTSUPP</b>&nbsp;&nbsp;&nbsp;7</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga46a7aab37ba4784bd48fd1e5928ce96e"></a><!-- doxytag: member="PROBESAPI::PROBE_ERANGE" ref="ga46a7aab37ba4784bd48fd1e5928ce96e" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ERANGE</b>&nbsp;&nbsp;&nbsp;8</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf657b90fcfba95adaae13b5052304c63"></a><!-- doxytag: member="PROBESAPI::PROBE_EDOM" ref="gaf657b90fcfba95adaae13b5052304c63" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EDOM</b>&nbsp;&nbsp;&nbsp;9</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4f022024f2cd09d1d61896e5c2c38255"></a><!-- doxytag: member="PROBESAPI::PROBE_EFAULT" ref="ga4f022024f2cd09d1d61896e5c2c38255" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EFAULT</b>&nbsp;&nbsp;&nbsp;10</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf12236c8016b55ab3faf1113b8b2c891"></a><!-- doxytag: member="PROBESAPI::PROBE_EACCES" ref="gaf12236c8016b55ab3faf1113b8b2c891" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EACCES</b>&nbsp;&nbsp;&nbsp;11</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga17111637d17fa23099a5db55a244d708"></a><!-- doxytag: member="PROBESAPI::PROBE_ESETEVAL" ref="ga17111637d17fa23099a5db55a244d708" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ESETEVAL</b>&nbsp;&nbsp;&nbsp;12</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga06b962b819862cec7b8d5db3435d2ca7"></a><!-- doxytag: member="PROBESAPI::PROBE_ENOENT" ref="ga06b962b819862cec7b8d5db3435d2ca7" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENOENT</b>&nbsp;&nbsp;&nbsp;13</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga851f1cb9529e4ac8d3e4ab659492dac6"></a><!-- doxytag: member="PROBESAPI::PROBE_EFATAL" ref="ga851f1cb9529e4ac8d3e4ab659492dac6" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EFATAL</b>&nbsp;&nbsp;&nbsp;254</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac7ffdc136441d8e231cdf0907c2dd03f"></a><!-- doxytag: member="PROBESAPI::PROBE_EUNKNOWN" ref="gac7ffdc136441d8e231cdf0907c2dd03f" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBE_EUNKNOWN</b>&nbsp;&nbsp;&nbsp;255</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa34a95304edba1eb22c8579f3f29bbfb"></a><!-- doxytag: member="PROBESAPI::OVAL_STATUS_UNKNOWN" ref="gaa34a95304edba1eb22c8579f3f29bbfb" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_UNKNOWN</b>&nbsp;&nbsp;&nbsp;SYSCHAR_STATUS_UNKNOWN</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3ddadcd64d38a0a0f71b614829b046f9"></a><!-- doxytag: member="PROBESAPI::OVAL_STATUS_ERROR" ref="ga3ddadcd64d38a0a0f71b614829b046f9" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_ERROR</b>&nbsp;&nbsp;&nbsp;SYSCHAR_STATUS_ERROR</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga163b455b276bcd2fb813b3026a3381dd"></a><!-- doxytag: member="PROBESAPI::OVAL_STATUS_EXISTS" ref="ga163b455b276bcd2fb813b3026a3381dd" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_EXISTS</b>&nbsp;&nbsp;&nbsp;SYSCHAR_STATUS_EXISTS</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae1a56a05542e75d07f55dc0042aa65be"></a><!-- doxytag: member="PROBESAPI::OVAL_STATUS_DOESNOTEXIST" ref="gae1a56a05542e75d07f55dc0042aa65be" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_DOESNOTEXIST</b>&nbsp;&nbsp;&nbsp;SYSCHAR_STATUS_DOES_NOT_EXIST</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa33021f49721bd7f275235360945703c"></a><!-- doxytag: member="PROBESAPI::OVAL_STATUS_NOTCOLLECTED" ref="gaa33021f49721bd7f275235360945703c" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_NOTCOLLECTED</b>&nbsp;&nbsp;&nbsp;SYSCHAR_STATUS_NOT_COLLECTED</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabf31b82ea668b210dc889e8706674fca"></a><!-- doxytag: member="PROBESAPI::PROBECMD_STE_FETCH" ref="gabf31b82ea668b210dc889e8706674fca" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBECMD_STE_FETCH</b>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga568b36409fa7ad30440d7b9b339db22d"></a><!-- doxytag: member="PROBESAPI::PROBECMD_OBJ_EVAL" ref="ga568b36409fa7ad30440d7b9b339db22d" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PROBECMD_OBJ_EVAL</b>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga24a0fe6c46c667ee39d0f765630a52df">probe_item_build</a> (const char *fmt,...)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build a new item according to the scpecified format.  <a href="#ga24a0fe6c46c667ee39d0f765630a52df"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaf696f498bb0fedacae306ec8a21caa91">probe_item_new</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new item with just a name and optional attributes argument.  <a href="#gaf696f498bb0fedacae306ec8a21caa91"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaaca01da4a1e288ba36f7eec0657f6bbe">probe_item_attr_add</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *item, const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new attribute to an item.  <a href="#gaaca01da4a1e288ba36f7eec0657f6bbe"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga2a72992661ed8812d7d17c20a3cdff52">probe_item_ent_add</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *item, const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new entity to an item.  <a href="#ga2a72992661ed8812d7d17c20a3cdff52"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga816e3a0f4022b42e80adb37e712217a1">probe_item_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set item's status.  <a href="#ga816e3a0f4022b42e80adb37e712217a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gad25f90c27a7f5a76abd4348a2777b138">probe_itement_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set status of an item's entity.  <a href="#gad25f90c27a7f5a76abd4348a2777b138"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga57a33271acce2f5013c1a66b0f106a0a">probe_item_newid</a> (struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *id_desc)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a new unique id (within a probe) for an item.  <a href="#ga57a33271acce2f5013c1a66b0f106a0a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaebff8a78f7110b657f693e919f2583d1">probe_item_resetid</a> (struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *id_desc)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset the item id generator.  <a href="#gaebff8a78f7110b657f693e919f2583d1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaa108cf08d3ad894f06e7eee7c0100047">probe_attr_creat</a> (const char *name, const <a class="el" href="structSEXP.html">SEXP_t</a> *val,...)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new list of attributes.  <a href="#gaa108cf08d3ad894f06e7eee7c0100047"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gac6a32ee967031ae45ccb7b29806715ed">probe_obj_build</a> (const char *fmt,...)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build a new object according to the scpecified format.  <a href="#gac6a32ee967031ae45ccb7b29806715ed"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga280020101f5ef03123a7e2ff6a0b282e">probe_obj_creat</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs,...)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new object consisting of a name, optional attributes argument and an arbitrary number of entities.  <a href="#ga280020101f5ef03123a7e2ff6a0b282e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga2539ca96f41a72a89224318c31a19ba9">probe_obj_new</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new object with just a name and optional attributes argument.  <a href="#ga2539ca96f41a72a89224318c31a19ba9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gac9d092361f39bc8514fcbb0418f47070">probe_obj_getent</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an entity from an object.  <a href="#gac9d092361f39bc8514fcbb0418f47070"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gab73d2c29b3b3657eb4a42c5abcb8a98b">probe_obj_getentval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of an object's entity.  <a href="#gab73d2c29b3b3657eb4a42c5abcb8a98b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gace27f5edf64bb92b2eac845828fc16a8">probe_obj_getentvals</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n, <a class="el" href="structSEXP.html">SEXP_t</a> **res)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the list of values of an object's entity.  <a href="#gace27f5edf64bb92b2eac845828fc16a8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga4eff2a5e03886982ddcd3a638656b093">probe_obj_getattrval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of an object's attribute.  <a href="#ga4eff2a5e03886982ddcd3a638656b093"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gabdad7653e94bf96bec05941f87257f2e">probe_obj_attrexists</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified attribute exists.  <a href="#gabdad7653e94bf96bec05941f87257f2e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gabc311067d7dc968de8aa5c640632f015">probe_obj_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set objects's status.  <a href="#gabc311067d7dc968de8aa5c640632f015"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga44a9fff23baac451bb3619b619b77690">probe_objent_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set status of an object's entity.  <a href="#ga44a9fff23baac451bb3619b619b77690"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga614b832888ad52140d9a8c2be87d1905">probe_obj_getname</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of an object.  <a href="#ga614b832888ad52140d9a8c2be87d1905"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga99fcdf7398c070fe503c97b31281289e">probe_obj_getname_r</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, char *buffer, size_t buflen)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of an object.  <a href="#ga99fcdf7398c070fe503c97b31281289e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7f9d006aa437b070570283d1226c7448"></a><!-- doxytag: member="PROBESAPI::_probe_cobj_new" ref="ga7f9d006aa437b070570283d1226c7448" args="(oval_syschar_collection_flag_t flag, const SEXP_t *item_list)" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_probe_cobj_new</b> (<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> flag, const <a class="el" href="structSEXP.html">SEXP_t</a> *item_list)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1a2a3e5ca7cb08a2ed46c385cbcb338e"></a><!-- doxytag: member="PROBESAPI::_probe_cobj_get_items" ref="ga1a2a3e5ca7cb08a2ed46c385cbcb338e" args="(const SEXP_t *cobj)" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_probe_cobj_get_items</b> (const <a class="el" href="structSEXP.html">SEXP_t</a> *cobj)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab02d09de787a051f085c8478029177b7"></a><!-- doxytag: member="PROBESAPI::_probe_cobj_get_flag" ref="gab02d09de787a051f085c8478029177b7" args="(const SEXP_t *cobj)" -->
<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>_probe_cobj_get_flag</b> (const <a class="el" href="structSEXP.html">SEXP_t</a> *cobj)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac48053509792b0d65f572c34648961a2"></a><!-- doxytag: member="PROBESAPI::_probe_cobj_combine_flags" ref="gac48053509792b0d65f572c34648961a2" args="(oval_syschar_collection_flag_t f1, oval_syschar_collection_flag_t f2, oval_setobject_operation_t op)" -->
<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>_probe_cobj_combine_flags</b> (<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> f1, <a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> f2, <a class="el" href="group__OVALDEF.html#ga695dd73f42848ceb78bc9c9b3794e08c">oval_setobject_operation_t</a> op)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga76a6bb61d3b640748dd5416a349f3bcf">probe_ent_creat</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs, <a class="el" href="structSEXP.html">SEXP_t</a> *val,...)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new list of entities.  <a href="#ga76a6bb61d3b640748dd5416a349f3bcf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga1203e858ab9fcf9c2d37514626deb9d8">probe_ent_creat1</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new entity.  <a href="#ga1203e858ab9fcf9c2d37514626deb9d8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga2c4ae475b5c8156b4436359cb82d14c6">probe_ent_attr_add</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new attribute to an entity.  <a href="#ga2c4ae475b5c8156b4436359cb82d14c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaefe143cb0db920b26ca3c20348287f32">probe_ent_getval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of an entity.  <a href="#gaefe143cb0db920b26ca3c20348287f32"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga3ff2cd8dba0ce124e8c1557f83ece7e0">probe_ent_getvals</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, <a class="el" href="structSEXP.html">SEXP_t</a> **res)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the list of values of an entity.  <a href="#ga3ff2cd8dba0ce124e8c1557f83ece7e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaaa841c5a9ec35e411832d2b77ae73aff">probe_ent_getattrval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, const char *name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of an entity's attribute.  <a href="#gaaa841c5a9ec35e411832d2b77ae73aff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gade2da190db42b69de3a82df73ddf92da">probe_ent_attrexists</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, const char *name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified attribute exists.  <a href="#gade2da190db42b69de3a82df73ddf92da"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gabd1dbeb0c28df011d6a2aceb400bf1cb">probe_ent_setdatatype</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, <a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a> type)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the OVAL data type of an entity.  <a href="#gabd1dbeb0c28df011d6a2aceb400bf1cb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga63df6b0800c386aa946dd79088893f05">probe_ent_getdatatype</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the OVAL data type of an entity.  <a href="#ga63df6b0800c386aa946dd79088893f05"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga78fa4b2ed51c75dc331f2b30305be587">probe_ent_setmask</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, bool mask)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set entity's mask.  <a href="#ga78fa4b2ed51c75dc331f2b30305be587"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaa18871c25a66d86317af2998703d3834">probe_ent_getmask</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get entity's mask.  <a href="#gaa18871c25a66d86317af2998703d3834"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga19a9b8b09ebcb61389d792eeb4a450ee">probe_ent_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set entity's status.  <a href="#ga19a9b8b09ebcb61389d792eeb4a450ee"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaf6f8c32f4222562df8396b6ce8e8afc0">probe_ent_getstatus</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get entity status.  <a href="#gaf6f8c32f4222562df8396b6ce8e8afc0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaa9c1f58c018a3d9df99c8240ba387e93">probe_ent_getname</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of an entity.  <a href="#gaa9c1f58c018a3d9df99c8240ba387e93"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#ga8327d5fcb919ace33e748995242121d5">probe_ent_getname_r</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, char *buffer, size_t buflen)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of an entity.  <a href="#ga8327d5fcb919ace33e748995242121d5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBESAPI.html#gaaa9687fb52f3ecba96ea03e71759505c">probe_free</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Free the memory allocated by the probe_* functions.  <a href="#gaaa9687fb52f3ecba96ea03e71759505c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafe95c72e81a54869107bb0b9f9b43427"></a><!-- doxytag: member="PROBESAPI::probe_init" ref="gafe95c72e81a54869107bb0b9f9b43427" args="(void) __attribute__((unused))" -->
void *&nbsp;</td><td class="memItemRight" valign="bottom"><b>probe_init</b> (void) <a class="el" href="struct____attribute____.html">__attribute__</a>((unused))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga60a6e8dd5d034bc5b0fb714016973a2a"></a><!-- doxytag: member="PROBESAPI::probe_fini" ref="ga60a6e8dd5d034bc5b0fb714016973a2a" args="(void *) __attribute__((unused))" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>probe_fini</b> (void *) <a class="el" href="struct____attribute____.html">__attribute__</a>((unused))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae2e7dc51d20d68d2f8a4e656395dc2b2"></a><!-- doxytag: member="PROBESAPI::probe_main" ref="gae2e7dc51d20d68d2f8a4e656395dc2b2" args="(SEXP_t *, int *, void *) __attribute__((nonnull(1" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>probe_main</b> (<a class="el" href="structSEXP.html">SEXP_t</a> *, int *, void *) <a class="el" href="struct____attribute____.html">__attribute__</a>((nonnull(1</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Most of the operations that need to be done in a probe, processing input object, manipulating entities, creating output items. </p>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="ga60d3eaa56be311e42ca265e1610ba357"></a><!-- doxytag: member="probe&#45;api.h::probe_item_creat" ref="ga60d3eaa56be311e42ca265e1610ba357" args="(name, attrs,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define probe_item_creat</td>
          <td>(</td>
          <td class="paramtype">name, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">attrs, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"> <em>...</em>&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;probe_obj_creat (name, attrs, __VA_ARGS__)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new item consisting of a name, optional attributes argument and an arbitrary number of entities. </p>
<p>Every entity is a triple: const char *name - name of the new entity SEXP_t attrs - optional list of entity attributes in a sexp, can be NULL SEXP_t val - value of the new entity in a sexp This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>mandatory name argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional item's attributes argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>arbitrary number of entity arguments </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gaa108cf08d3ad894f06e7eee7c0100047"></a><!-- doxytag: member="probe&#45;api.h::probe_attr_creat" ref="gaa108cf08d3ad894f06e7eee7c0100047" args="(const char *name, const SEXP_t *val,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_attr_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&nbsp;</td>
          <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new list of attributes. </p>
<p>This function increments its val argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the attribute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>the value of the attribute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>there can be an arbitrary number of name - value pairs </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2c4ae475b5c8156b4436359cb82d14c6"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_attr_add" ref="ga2c4ae475b5c8156b4436359cb82d14c6" args="(SEXP_t *ent, const char *name, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ent_attr_add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new attribute to an entity. </p>
<p>This function increments its val argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the entity to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the new attribute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>value of the new attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gade2da190db42b69de3a82df73ddf92da"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_attrexists" ref="gade2da190db42b69de3a82df73ddf92da" args="(const SEXP_t *ent, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool probe_ent_attrexists </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check whether the specified attribute exists. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga76a6bb61d3b640748dd5416a349f3bcf"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_creat" ref="ga76a6bb61d3b640748dd5416a349f3bcf" args="(const char *name, SEXP_t *attrs, SEXP_t *val,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ent_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&nbsp;</td>
          <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new list of entities. </p>
<p>This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional entity's attributes argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>the value of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>there can be an arbitrary number of name - attributes - value triples </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1203e858ab9fcf9c2d37514626deb9d8"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_creat1" ref="ga1203e858ab9fcf9c2d37514626deb9d8" args="(const char *name, SEXP_t *attrs, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ent_creat1 </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new entity. </p>
<p>This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional entity's attributes argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>the value of the entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaaa841c5a9ec35e411832d2b77ae73aff"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getattrval" ref="gaaa841c5a9ec35e411832d2b77ae73aff" args="(const SEXP_t *ent, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ent_getattrval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the value of an entity's attribute. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga63df6b0800c386aa946dd79088893f05"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getdatatype" ref="ga63df6b0800c386aa946dd79088893f05" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a> probe_ent_getdatatype </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the OVAL data type of an entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa18871c25a66d86317af2998703d3834"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getmask" ref="gaa18871c25a66d86317af2998703d3834" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool probe_ent_getmask </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get entity's mask. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa9c1f58c018a3d9df99c8240ba387e93"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getname" ref="gaa9c1f58c018a3d9df99c8240ba387e93" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* probe_ent_getname </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8327d5fcb919ace33e748995242121d5"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getname_r" ref="ga8327d5fcb919ace33e748995242121d5" args="(const SEXP_t *ent, char *buffer, size_t buflen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t probe_ent_getname_r </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>buflen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an entity. </p>
<p>The name is stored in the provided buffer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>the buffer to store the name in </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buflen</em>&nbsp;</td><td>the length of the buffer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf6f8c32f4222562df8396b6ce8e8afc0"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getstatus" ref="gaf6f8c32f4222562df8396b6ce8e8afc0" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> probe_ent_getstatus </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get entity status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaefe143cb0db920b26ca3c20348287f32"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getval" ref="gaefe143cb0db920b26ca3c20348287f32" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ent_getval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the value of an entity. </p>
<p>The function respects the var_ref attribute and returns the currently selected value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga3ff2cd8dba0ce124e8c1557f83ece7e0"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_getvals" ref="ga3ff2cd8dba0ce124e8c1557f83ece7e0" args="(const SEXP_t *ent, SEXP_t **res)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_getvals </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> **&nbsp;</td>
          <td class="paramname"> <em>res</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the list of values of an entity. </p>
<p>If the entity uses var_ref, there can be more than one value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>the resulting value list is stored in this argument </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of values in the list stored in the res argument </dd></dl>

</div>
</div>
<a class="anchor" id="gabd1dbeb0c28df011d6a2aceb400bf1cb"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_setdatatype" ref="gabd1dbeb0c28df011d6a2aceb400bf1cb" args="(SEXP_t *ent, oval_datatype_t type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_setdatatype </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a>&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the OVAL data type of an entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>the new data type </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga78fa4b2ed51c75dc331f2b30305be587"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_setmask" ref="ga78fa4b2ed51c75dc331f2b30305be587" args="(SEXP_t *ent, bool mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_setmask </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>mask</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set entity's mask. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the queried entity  the new mask </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga19a9b8b09ebcb61389d792eeb4a450ee"></a><!-- doxytag: member="probe&#45;api.h::probe_ent_setstatus" ref="ga19a9b8b09ebcb61389d792eeb4a450ee" args="(SEXP_t *ent, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set entity's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ent</em>&nbsp;</td><td>the entity to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaaa9687fb52f3ecba96ea03e71759505c"></a><!-- doxytag: member="probe&#45;api.h::probe_free" ref="gaaa9687fb52f3ecba96ea03e71759505c" args="(SEXP_t *obj)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void probe_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Free the memory allocated by the probe_* functions. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to be freed </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaaca01da4a1e288ba36f7eec0657f6bbe"></a><!-- doxytag: member="probe&#45;api.h::probe_item_attr_add" ref="gaaca01da4a1e288ba36f7eec0657f6bbe" args="(SEXP_t *item, const char *name, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_attr_add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>item</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new attribute to an item. </p>
<p>This function increments its val argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>the item to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the new attribute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>value of the new attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga24a0fe6c46c667ee39d0f765630a52df"></a><!-- doxytag: member="probe&#45;api.h::probe_item_build" ref="ga24a0fe6c46c667ee39d0f765630a52df" args="(const char *fmt,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_build </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&nbsp;</td>
          <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build a new item according to the scpecified format. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td>the desired format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2a72992661ed8812d7d17c20a3cdff52"></a><!-- doxytag: member="probe&#45;api.h::probe_item_ent_add" ref="ga2a72992661ed8812d7d17c20a3cdff52" args="(SEXP_t *item, const char *name, SEXP_t *attrs, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_ent_add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>item</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new entity to an item. </p>
<p>This function increments its attrs and val arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>the item to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the new entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional attributes of the new entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>value of the new entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf696f498bb0fedacae306ec8a21caa91"></a><!-- doxytag: member="probe&#45;api.h::probe_item_new" ref="gaf696f498bb0fedacae306ec8a21caa91" args="(const char *name, SEXP_t *attrs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_new </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>attrs</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new item with just a name and optional attributes argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>item's name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional attributes argument </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga57a33271acce2f5013c1a66b0f106a0a"></a><!-- doxytag: member="probe&#45;api.h::probe_item_newid" ref="ga57a33271acce2f5013c1a66b0f106a0a" args="(struct id_desc_t *id_desc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_newid </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *&nbsp;</td>
          <td class="paramname"> <em>id_desc</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a new unique id (within a probe) for an item. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>id_desc</em>&nbsp;</td><td>pointer to a structure holding the global id context </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a new id </dd></dl>

</div>
</div>
<a class="anchor" id="gaebff8a78f7110b657f693e919f2583d1"></a><!-- doxytag: member="probe&#45;api.h::probe_item_resetid" ref="gaebff8a78f7110b657f693e919f2583d1" args="(struct id_desc_t *id_desc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void probe_item_resetid </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *&nbsp;</td>
          <td class="paramname"> <em>id_desc</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reset the item id generator. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>id_desc</em>&nbsp;</td><td>pointer to a structure holding the global id context </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga816e3a0f4022b42e80adb37e712217a1"></a><!-- doxytag: member="probe&#45;api.h::probe_item_setstatus" ref="ga816e3a0f4022b42e80adb37e712217a1" args="(SEXP_t *obj, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_item_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set item's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the item to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad25f90c27a7f5a76abd4348a2777b138"></a><!-- doxytag: member="probe&#45;api.h::probe_itement_setstatus" ref="gad25f90c27a7f5a76abd4348a2777b138" args="(SEXP_t *obj, const char *name, uint32_t n, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_itement_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set status of an item's entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the item to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>select the n-th occurence of an entity with the specified name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabdad7653e94bf96bec05941f87257f2e"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_attrexists" ref="gabdad7653e94bf96bec05941f87257f2e" args="(const SEXP_t *obj, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool probe_obj_attrexists </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check whether the specified attribute exists. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac6a32ee967031ae45ccb7b29806715ed"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_build" ref="gac6a32ee967031ae45ccb7b29806715ed" args="(const char *fmt,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_build </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&nbsp;</td>
          <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build a new object according to the scpecified format. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td>the desired format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga280020101f5ef03123a7e2ff6a0b282e"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_creat" ref="ga280020101f5ef03123a7e2ff6a0b282e" args="(const char *name, SEXP_t *attrs,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&nbsp;</td>
          <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new object consisting of a name, optional attributes argument and an arbitrary number of entities. </p>
<p>Every entity is a triple: const char *name - name of the new entity SEXP_t attrs - optional list of entity attributes in a sexp, can be NULL SEXP_t val - value of the new entity in a sexp This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>mandatory name argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional object's attributes argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>arbitrary number of entity arguments </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga4eff2a5e03886982ddcd3a638656b093"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_getattrval" ref="ga4eff2a5e03886982ddcd3a638656b093" args="(const SEXP_t *obj, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_getattrval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the value of an object's attribute. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac9d092361f39bc8514fcbb0418f47070"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_getent" ref="gac9d092361f39bc8514fcbb0418f47070" args="(const SEXP_t *obj, const char *name, uint32_t n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_getent </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>n</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get an entity from an object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>select the n-th occurence of an entity with the specified name </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab73d2c29b3b3657eb4a42c5abcb8a98b"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_getentval" ref="gab73d2c29b3b3657eb4a42c5abcb8a98b" args="(const SEXP_t *obj, const char *name, uint32_t n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_getentval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>n</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the value of an object's entity. </p>
<p>The function respects the var_ref attribute and returns the currently selected value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>select the n-th occurence of an entity with the specified name </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gace27f5edf64bb92b2eac845828fc16a8"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_getentvals" ref="gace27f5edf64bb92b2eac845828fc16a8" args="(const SEXP_t *obj, const char *name, uint32_t n, SEXP_t **res)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_obj_getentvals </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> **&nbsp;</td>
          <td class="paramname"> <em>res</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the list of values of an object's entity. </p>
<p>If the entity uses var_ref, there can be more than one value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>select the n-th occurence of an entity with the specified name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>the resulting value list is stored in this argument </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of values in the list stored in the res argument </dd></dl>

</div>
</div>
<a class="anchor" id="ga614b832888ad52140d9a8c2be87d1905"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_getname" ref="ga614b832888ad52140d9a8c2be87d1905" args="(const SEXP_t *obj)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* probe_obj_getname </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga99fcdf7398c070fe503c97b31281289e"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_getname_r" ref="ga99fcdf7398c070fe503c97b31281289e" args="(const SEXP_t *obj, char *buffer, size_t buflen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t probe_obj_getname_r </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>buflen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an object. </p>
<p>The name is stored in the provided buffer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the queried object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>the buffer to store the name in </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buflen</em>&nbsp;</td><td>the length of the buffer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2539ca96f41a72a89224318c31a19ba9"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_new" ref="ga2539ca96f41a72a89224318c31a19ba9" args="(const char *name, SEXP_t *attrs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_new </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>attrs</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new object with just a name and optional attributes argument. </p>
<p>This function increments its SEXP_t argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>object's name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>attrs</em>&nbsp;</td><td>optional attributes argument </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabc311067d7dc968de8aa5c640632f015"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_setstatus" ref="gabc311067d7dc968de8aa5c640632f015" args="(SEXP_t *obj, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_obj_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set objects's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga44a9fff23baac451bb3619b619b77690"></a><!-- doxytag: member="probe&#45;api.h::probe_objent_setstatus" ref="ga44a9fff23baac451bb3619b619b77690" args="(SEXP_t *obj, const char *name, uint32_t n, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_objent_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set status of an object's entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to be modified </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name of the entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>select the n-th occurence of an entity with the specified name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on 26 Feb 2010 for Open SCAP Library by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>