<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>scim: scim::Transaction Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.0 --> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li id="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul></div> <div class="nav"> <a class="el" href="a00157.html">scim</a>::<a class="el" href="a00109.html">Transaction</a></div> <h1>scim::Transaction Class Reference<br> <small> [<a class="el" href="a00165.html">SocketCommunication</a>]</small> </h1><!-- doxytag: class="scim::Transaction" -->This class is used to pack up many data and commands into one package and send them via socket. <a href="#_details">More...</a> <p> <code>#include <scim_transaction.h></code> <p> Collaboration diagram for scim::Transaction:<p><center><img src="a00675.png" border="0" usemap="#a00676" alt="Collaboration graph"></center> <map name="a00676"> <area href="a00111.html" shape="rect" coords="7,8,183,32" alt=""> </map> <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="a00677.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#740dbd064cb28ececcf44327ea7ef32c">Transaction</a> (size_t bufsize=512)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#740dbd064cb28ececcf44327ea7ef32c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#4cff6f21cb59d47352116137e92f0f5e">~Transaction</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#4cff6f21cb59d47352116137e92f0f5e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#717a533c50e16b88f62b0d3e5213148e">valid</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if the transaction is valid. <a href="#717a533c50e16b88f62b0d3e5213148e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#2b1f83560076d5694e93998c94dfa8e7">get_size</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the size of this transaction. <a href="#2b1f83560076d5694e93998c94dfa8e7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#ad08c5885613431f0cd0646e15825238">write_to_socket</a> (const <a class="el" href="a00104.html">Socket</a> &socket, <a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> signature=0) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the transaction to a socket. <a href="#ad08c5885613431f0cd0646e15825238"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#7da9ad173a4ae3ec1e1bd0f432bf121f">read_from_socket</a> (const <a class="el" href="a00104.html">Socket</a> &socket, int timeout=-1)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read a transaction from a socket. <a href="#7da9ad173a4ae3ec1e1bd0f432bf121f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#c74bf209cdde8c639e2d07a07f0563a5">write_to_buffer</a> (void *buf, size_t bufsize) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the transaction into a buffer. <a href="#c74bf209cdde8c639e2d07a07f0563a5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#caa333b993e7f27b8c004269ac93543a">read_from_buffer</a> (const void *buf, size_t bufsize)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read a transaction from a buffer. <a href="#caa333b993e7f27b8c004269ac93543a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#eedf8867217ee891035129c8b413c523">put_command</a> (int cmd)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a command into this transaction. <a href="#eedf8867217ee891035129c8b413c523"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#db7ae3a2d2a6eedca6f6436e7b3ba69c">put_data</a> (<a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a uint32 value into this transaction. <a href="#db7ae3a2d2a6eedca6f6436e7b3ba69c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#971cf587efb4aab140bfabb5da982fc9">put_data</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a String object into this transaction. <a href="#971cf587efb4aab140bfabb5da982fc9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#65ee1ef50733e2bf82865b9f8e909325">put_data</a> (const <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a WideString object into this transaction. <a href="#65ee1ef50733e2bf82865b9f8e909325"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#fe4a34378fe98f978a8ff7d965904066">put_data</a> (const <a class="el" href="a00054.html">KeyEvent</a> &key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a <a class="el" href="a00054.html">KeyEvent</a> object into this transaction. <a href="#fe4a34378fe98f978a8ff7d965904066"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#f6b81433e2a4fe70c42343f119b39f80">put_data</a> (const <a class="el" href="a00158.html#g81a9bf12437e21157b5fb7dabda841fe">AttributeList</a> &attrs)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store an AttributeList object into this transaction. <a href="#f6b81433e2a4fe70c42343f119b39f80"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#6e314916ceb92462d725a377b6e4cdb1">put_data</a> (const <a class="el" href="a00071.html">Property</a> &property)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a <a class="el" href="a00071.html">Property</a> object into this transaction. <a href="#6e314916ceb92462d725a377b6e4cdb1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#4d9358d3d44c093801a69f87c191a026">put_data</a> (const <a class="el" href="a00158.html#gc4099a109cec998bbfad588fcf4c8f79">PropertyList</a> &properties)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a PropertyList object into this transaction. <a href="#4d9358d3d44c093801a69f87c191a026"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#9a25621c73dfb0480042df43ffda08e6">put_data</a> (const <a class="el" href="a00055.html">LookupTable</a> &table)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a <a class="el" href="a00055.html">LookupTable</a> object into this transaction. <a href="#9a25621c73dfb0480042df43ffda08e6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#c38943a6eee465ab19eea857c438e7bb">put_data</a> (const std::vector< <a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> > &vec)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a std::vector<uint32> object into this transaction. <a href="#c38943a6eee465ab19eea857c438e7bb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#298d372a8615a7b8d5dca80afe48e6e0">put_data</a> (const std::vector< <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> > &vec)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a std::vector<String> object into this transaction. <a href="#298d372a8615a7b8d5dca80afe48e6e0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#b63b94bb22b7b7465af6839fbd9637ca">put_data</a> (const std::vector< <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> > &vec)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a std::vector<WideString> object into this transaction. <a href="#b63b94bb22b7b7465af6839fbd9637ca"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#ce0786b2ae3603be3b34e23c60fefeae">put_data</a> (const char *raw, size_t bufsize)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store a raw buffer into this transaction. <a href="#ce0786b2ae3603be3b34e23c60fefeae"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#a400eeb553a43f69d991ac9732e2449d">put_data</a> (const <a class="el" href="a00109.html">Transaction</a> &trans)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store another <a class="el" href="a00109.html">Transaction</a> object into this transaction. <a href="#a400eeb553a43f69d991ac9732e2449d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00165.html#gd097314245c4f0bce212ebd514953cc5">TransactionDataType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#a1af35ff1a5d89765b198d2cb83e1ecb">get_data_type</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the type of the data at current read position. <a href="#a1af35ff1a5d89765b198d2cb83e1ecb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#1b755cd842b41f297ba1be675107221e">get_command</a> (int &cmd)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a command from current read position. <a href="#1b755cd842b41f297ba1be675107221e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#62d6288f041089fe397195fd55376bec">get_data</a> (<a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> &val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get an uint32 value from current read position. <a href="#62d6288f041089fe397195fd55376bec"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#5d41b9f043df9856dbb5ec43f54ceb89">get_data</a> (<a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a String from current read position. <a href="#5d41b9f043df9856dbb5ec43f54ceb89"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#e7ab073803748a77248933b504110e1d">get_data</a> (<a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a WideString from current read position. <a href="#e7ab073803748a77248933b504110e1d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#4c7bcab0fff44fa1522f9bb869b9a189">get_data</a> (<a class="el" href="a00054.html">KeyEvent</a> &key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a <a class="el" href="a00054.html">KeyEvent</a> from current read position. <a href="#4c7bcab0fff44fa1522f9bb869b9a189"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#20af0ae6a5ed9b34e279cac34df2bad5">get_data</a> (<a class="el" href="a00158.html#g81a9bf12437e21157b5fb7dabda841fe">AttributeList</a> &attrs)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get an AttributeList from current read position. <a href="#20af0ae6a5ed9b34e279cac34df2bad5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#f653dda5036927e2b97660a07989a662">get_data</a> (<a class="el" href="a00071.html">Property</a> &property)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a <a class="el" href="a00071.html">Property</a> from current read position. <a href="#f653dda5036927e2b97660a07989a662"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#55108286fb67bcf616cff3b8817c307a">get_data</a> (<a class="el" href="a00158.html#gc4099a109cec998bbfad588fcf4c8f79">PropertyList</a> &properties)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a PropertyList from current read position. <a href="#55108286fb67bcf616cff3b8817c307a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#12aba7ed95c73bcbab8d018b3b5c25fa">get_data</a> (<a class="el" href="a00011.html">CommonLookupTable</a> &table)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a <a class="el" href="a00011.html">CommonLookupTable</a> from current read position. <a href="#12aba7ed95c73bcbab8d018b3b5c25fa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#97e9032644998499557c2966c1ad037b">get_data</a> (std::vector< <a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> > &vec)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a std::vector<uint32> from current read position. <a href="#97e9032644998499557c2966c1ad037b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#b12ec204c889f7feaf7676e1f6f7870b">get_data</a> (std::vector< <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> > &vec)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a std::vector<String> from current read position. <a href="#b12ec204c889f7feaf7676e1f6f7870b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#d149a87446ffb4b51c967acb19d79723">get_data</a> (std::vector< <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> > &vec)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a std::vector<WideString> from current read position. <a href="#d149a87446ffb4b51c967acb19d79723"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#31d8798ba379d5f030c8611b3e961f0e">get_data</a> (char **raw, size_t &bufsize)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a raw buffer from current read position. <a href="#31d8798ba379d5f030c8611b3e961f0e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#b72144bc32ee2f3f9d5b9f04bc1ad9c1">get_data</a> (<a class="el" href="a00109.html">Transaction</a> &trans)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a <a class="el" href="a00109.html">Transaction</a> object from current read position. <a href="#b72144bc32ee2f3f9d5b9f04bc1ad9c1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#081862efa39a5d356cc55b9c4d41aaa7">skip_data</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Skip one data from current read position. <a href="#081862efa39a5d356cc55b9c4d41aaa7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#30405844ccefd955317f013dc44f95bd">rewind</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Rewind the current read position, then the data can be read again. <a href="#30405844ccefd955317f013dc44f95bd"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#09553e14f5f724d234eb31eb95e9a7f5">clear</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clear the transaction, all data in this transaction will be freed. <a href="#09553e14f5f724d234eb31eb95e9a7f5"></a><br></td></tr> <tr><td colspan="2"><br><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html#5eb858b3775f170272facc0d7bce522c">TransactionReader</a></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> This class is used to pack up many data and commands into one package and send them via socket. <p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="740dbd064cb28ececcf44327ea7ef32c"></a><!-- doxytag: member="scim::Transaction::Transaction" ref="740dbd064cb28ececcf44327ea7ef32c" args="(size_t bufsize=512)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">scim::Transaction::Transaction </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"> <em>bufsize</em> = <code>512</code> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>bufsize</em> </td><td>the initial buffer size, maybe grow afterwards. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="4cff6f21cb59d47352116137e92f0f5e"></a><!-- doxytag: member="scim::Transaction::~Transaction" ref="4cff6f21cb59d47352116137e92f0f5e" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">scim::Transaction::~Transaction </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor. <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="717a533c50e16b88f62b0d3e5213148e"></a><!-- doxytag: member="scim::Transaction::valid" ref="717a533c50e16b88f62b0d3e5213148e" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::valid </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Check if the transaction is valid. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if this <a class="el" href="a00109.html">Transaction</a> object is valid and ready to use. </dd></dl> </div> </div><p> <a class="anchor" name="2b1f83560076d5694e93998c94dfa8e7"></a><!-- doxytag: member="scim::Transaction::get_size" ref="2b1f83560076d5694e93998c94dfa8e7" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t scim::Transaction::get_size </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get the size of this transaction. <p> </div> </div><p> <a class="anchor" name="ad08c5885613431f0cd0646e15825238"></a><!-- doxytag: member="scim::Transaction::write_to_socket" ref="ad08c5885613431f0cd0646e15825238" args="(const Socket &socket, uint32 signature=0) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::write_to_socket </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00104.html">Socket</a> & </td> <td class="paramname"> <em>socket</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> </td> <td class="paramname"> <em>signature</em> = <code>0</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Write the transaction to a socket. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>socket</em> </td><td>the socket to be written to. </td></tr> <tr><td valign="top"></td><td valign="top"><em>signature</em> </td><td>the leading signature to be written into the socket before the transaction itself, this signature maybe missing when receive the transaction. It's useful to check the connection before receiving a transaction by reading this signature.</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if success. </dd></dl> </div> </div><p> <a class="anchor" name="7da9ad173a4ae3ec1e1bd0f432bf121f"></a><!-- doxytag: member="scim::Transaction::read_from_socket" ref="7da9ad173a4ae3ec1e1bd0f432bf121f" args="(const Socket &socket, int timeout=-1)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::read_from_socket </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00104.html">Socket</a> & </td> <td class="paramname"> <em>socket</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>timeout</em> = <code>-1</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Read a transaction from a socket. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>socket</em> </td><td>the socket to be read from. </td></tr> <tr><td valign="top"></td><td valign="top"><em>timeout</em> </td><td>time out in millisecond (1/1000 second), -1 means infinity.</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if success. </dd></dl> </div> </div><p> <a class="anchor" name="c74bf209cdde8c639e2d07a07f0563a5"></a><!-- doxytag: member="scim::Transaction::write_to_buffer" ref="c74bf209cdde8c639e2d07a07f0563a5" args="(void *buf, size_t bufsize) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::write_to_buffer </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>bufsize</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Write the transaction into a buffer. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>A buffer to store the transaction data. </td></tr> <tr><td valign="top"></td><td valign="top"><em>bufsize</em> </td><td>The size of this buffer. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if success (the buf is large enough). </dd></dl> </div> </div><p> <a class="anchor" name="caa333b993e7f27b8c004269ac93543a"></a><!-- doxytag: member="scim::Transaction::read_from_buffer" ref="caa333b993e7f27b8c004269ac93543a" args="(const void *buf, size_t bufsize)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::read_from_buffer </td> <td>(</td> <td class="paramtype">const void * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>bufsize</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Read a transaction from a buffer. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>A buffer contains the transaction. </td></tr> <tr><td valign="top"></td><td valign="top"><em>bufsize</em> </td><td>The size of this buffer. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if success. </dd></dl> </div> </div><p> <a class="anchor" name="eedf8867217ee891035129c8b413c523"></a><!-- doxytag: member="scim::Transaction::put_command" ref="eedf8867217ee891035129c8b413c523" args="(int cmd)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_command </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>cmd</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a command into this transaction. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>cmd</em> </td><td>the command code, like SCIM_TRANS_CMD_FOCUS_IN etc. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="db7ae3a2d2a6eedca6f6436e7b3ba69c"></a><!-- doxytag: member="scim::Transaction::put_data" ref="db7ae3a2d2a6eedca6f6436e7b3ba69c" args="(uint32 val)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> </td> <td class="paramname"> <em>val</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a uint32 value into this transaction. <p> </div> </div><p> <a class="anchor" name="971cf587efb4aab140bfabb5da982fc9"></a><!-- doxytag: member="scim::Transaction::put_data" ref="971cf587efb4aab140bfabb5da982fc9" args="(const String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>str</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a String object into this transaction. <p> </div> </div><p> <a class="anchor" name="65ee1ef50733e2bf82865b9f8e909325"></a><!-- doxytag: member="scim::Transaction::put_data" ref="65ee1ef50733e2bf82865b9f8e909325" args="(const WideString &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> & </td> <td class="paramname"> <em>str</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a WideString object into this transaction. <p> </div> </div><p> <a class="anchor" name="fe4a34378fe98f978a8ff7d965904066"></a><!-- doxytag: member="scim::Transaction::put_data" ref="fe4a34378fe98f978a8ff7d965904066" args="(const KeyEvent &key)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00054.html">KeyEvent</a> & </td> <td class="paramname"> <em>key</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a <a class="el" href="a00054.html">KeyEvent</a> object into this transaction. <p> </div> </div><p> <a class="anchor" name="f6b81433e2a4fe70c42343f119b39f80"></a><!-- doxytag: member="scim::Transaction::put_data" ref="f6b81433e2a4fe70c42343f119b39f80" args="(const AttributeList &attrs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00158.html#g81a9bf12437e21157b5fb7dabda841fe">AttributeList</a> & </td> <td class="paramname"> <em>attrs</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store an AttributeList object into this transaction. <p> </div> </div><p> <a class="anchor" name="6e314916ceb92462d725a377b6e4cdb1"></a><!-- doxytag: member="scim::Transaction::put_data" ref="6e314916ceb92462d725a377b6e4cdb1" args="(const Property &property)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00071.html">Property</a> & </td> <td class="paramname"> <em>property</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a <a class="el" href="a00071.html">Property</a> object into this transaction. <p> </div> </div><p> <a class="anchor" name="4d9358d3d44c093801a69f87c191a026"></a><!-- doxytag: member="scim::Transaction::put_data" ref="4d9358d3d44c093801a69f87c191a026" args="(const PropertyList &properties)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00158.html#gc4099a109cec998bbfad588fcf4c8f79">PropertyList</a> & </td> <td class="paramname"> <em>properties</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a PropertyList object into this transaction. <p> </div> </div><p> <a class="anchor" name="9a25621c73dfb0480042df43ffda08e6"></a><!-- doxytag: member="scim::Transaction::put_data" ref="9a25621c73dfb0480042df43ffda08e6" args="(const LookupTable &table)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00055.html">LookupTable</a> & </td> <td class="paramname"> <em>table</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a <a class="el" href="a00055.html">LookupTable</a> object into this transaction. <p> </div> </div><p> <a class="anchor" name="c38943a6eee465ab19eea857c438e7bb"></a><!-- doxytag: member="scim::Transaction::put_data" ref="c38943a6eee465ab19eea857c438e7bb" args="(const std::vector< uint32 > &vec)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const std::vector< <a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> > & </td> <td class="paramname"> <em>vec</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a std::vector<uint32> object into this transaction. <p> </div> </div><p> <a class="anchor" name="298d372a8615a7b8d5dca80afe48e6e0"></a><!-- doxytag: member="scim::Transaction::put_data" ref="298d372a8615a7b8d5dca80afe48e6e0" args="(const std::vector< String > &vec)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const std::vector< <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> > & </td> <td class="paramname"> <em>vec</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a std::vector<String> object into this transaction. <p> </div> </div><p> <a class="anchor" name="b63b94bb22b7b7465af6839fbd9637ca"></a><!-- doxytag: member="scim::Transaction::put_data" ref="b63b94bb22b7b7465af6839fbd9637ca" args="(const std::vector< WideString > &vec)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const std::vector< <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> > & </td> <td class="paramname"> <em>vec</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a std::vector<WideString> object into this transaction. <p> </div> </div><p> <a class="anchor" name="ce0786b2ae3603be3b34e23c60fefeae"></a><!-- doxytag: member="scim::Transaction::put_data" ref="ce0786b2ae3603be3b34e23c60fefeae" args="(const char *raw, size_t bufsize)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>raw</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>bufsize</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store a raw buffer into this transaction. <p> </div> </div><p> <a class="anchor" name="a400eeb553a43f69d991ac9732e2449d"></a><!-- doxytag: member="scim::Transaction::put_data" ref="a400eeb553a43f69d991ac9732e2449d" args="(const Transaction &trans)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::put_data </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00109.html">Transaction</a> & </td> <td class="paramname"> <em>trans</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Store another <a class="el" href="a00109.html">Transaction</a> object into this transaction. <p> </div> </div><p> <a class="anchor" name="a1af35ff1a5d89765b198d2cb83e1ecb"></a><!-- doxytag: member="scim::Transaction::get_data_type" ref="a1af35ff1a5d89765b198d2cb83e1ecb" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00165.html#gd097314245c4f0bce212ebd514953cc5">TransactionDataType</a> scim::Transaction::get_data_type </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get the type of the data at current read position. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The type of the data can be read currently. </dd></dl> </div> </div><p> <a class="anchor" name="1b755cd842b41f297ba1be675107221e"></a><!-- doxytag: member="scim::Transaction::get_command" ref="1b755cd842b41f297ba1be675107221e" args="(int &cmd)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_command </td> <td>(</td> <td class="paramtype">int & </td> <td class="paramname"> <em>cmd</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a command from current read position. <p> </div> </div><p> <a class="anchor" name="62d6288f041089fe397195fd55376bec"></a><!-- doxytag: member="scim::Transaction::get_data" ref="62d6288f041089fe397195fd55376bec" args="(uint32 &val)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> & </td> <td class="paramname"> <em>val</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get an uint32 value from current read position. <p> </div> </div><p> <a class="anchor" name="5d41b9f043df9856dbb5ec43f54ceb89"></a><!-- doxytag: member="scim::Transaction::get_data" ref="5d41b9f043df9856dbb5ec43f54ceb89" args="(String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>str</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a String from current read position. <p> </div> </div><p> <a class="anchor" name="e7ab073803748a77248933b504110e1d"></a><!-- doxytag: member="scim::Transaction::get_data" ref="e7ab073803748a77248933b504110e1d" args="(WideString &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> & </td> <td class="paramname"> <em>str</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a WideString from current read position. <p> </div> </div><p> <a class="anchor" name="4c7bcab0fff44fa1522f9bb869b9a189"></a><!-- doxytag: member="scim::Transaction::get_data" ref="4c7bcab0fff44fa1522f9bb869b9a189" args="(KeyEvent &key)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00054.html">KeyEvent</a> & </td> <td class="paramname"> <em>key</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a <a class="el" href="a00054.html">KeyEvent</a> from current read position. <p> </div> </div><p> <a class="anchor" name="20af0ae6a5ed9b34e279cac34df2bad5"></a><!-- doxytag: member="scim::Transaction::get_data" ref="20af0ae6a5ed9b34e279cac34df2bad5" args="(AttributeList &attrs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00158.html#g81a9bf12437e21157b5fb7dabda841fe">AttributeList</a> & </td> <td class="paramname"> <em>attrs</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get an AttributeList from current read position. <p> </div> </div><p> <a class="anchor" name="f653dda5036927e2b97660a07989a662"></a><!-- doxytag: member="scim::Transaction::get_data" ref="f653dda5036927e2b97660a07989a662" args="(Property &property)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00071.html">Property</a> & </td> <td class="paramname"> <em>property</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a <a class="el" href="a00071.html">Property</a> from current read position. <p> </div> </div><p> <a class="anchor" name="55108286fb67bcf616cff3b8817c307a"></a><!-- doxytag: member="scim::Transaction::get_data" ref="55108286fb67bcf616cff3b8817c307a" args="(PropertyList &properties)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00158.html#gc4099a109cec998bbfad588fcf4c8f79">PropertyList</a> & </td> <td class="paramname"> <em>properties</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a PropertyList from current read position. <p> </div> </div><p> <a class="anchor" name="12aba7ed95c73bcbab8d018b3b5c25fa"></a><!-- doxytag: member="scim::Transaction::get_data" ref="12aba7ed95c73bcbab8d018b3b5c25fa" args="(CommonLookupTable &table)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00011.html">CommonLookupTable</a> & </td> <td class="paramname"> <em>table</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a <a class="el" href="a00011.html">CommonLookupTable</a> from current read position. <p> </div> </div><p> <a class="anchor" name="97e9032644998499557c2966c1ad037b"></a><!-- doxytag: member="scim::Transaction::get_data" ref="97e9032644998499557c2966c1ad037b" args="(std::vector< uint32 > &vec)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype">std::vector< <a class="el" href="a00157.html#984ae8c1b52846cf538b7f936193d590">uint32</a> > & </td> <td class="paramname"> <em>vec</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a std::vector<uint32> from current read position. <p> </div> </div><p> <a class="anchor" name="b12ec204c889f7feaf7676e1f6f7870b"></a><!-- doxytag: member="scim::Transaction::get_data" ref="b12ec204c889f7feaf7676e1f6f7870b" args="(std::vector< String > &vec)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype">std::vector< <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> > & </td> <td class="paramname"> <em>vec</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a std::vector<String> from current read position. <p> </div> </div><p> <a class="anchor" name="d149a87446ffb4b51c967acb19d79723"></a><!-- doxytag: member="scim::Transaction::get_data" ref="d149a87446ffb4b51c967acb19d79723" args="(std::vector< WideString > &vec)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype">std::vector< <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> > & </td> <td class="paramname"> <em>vec</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a std::vector<WideString> from current read position. <p> </div> </div><p> <a class="anchor" name="31d8798ba379d5f030c8611b3e961f0e"></a><!-- doxytag: member="scim::Transaction::get_data" ref="31d8798ba379d5f030c8611b3e961f0e" args="(char **raw, size_t &bufsize)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype">char ** </td> <td class="paramname"> <em>raw</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t & </td> <td class="paramname"> <em>bufsize</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a raw buffer from current read position. <p> if raw == NULL then return the bufsize and skip this data. *raw should be deleted afterwards (do not use free!). </div> </div><p> <a class="anchor" name="b72144bc32ee2f3f9d5b9f04bc1ad9c1"></a><!-- doxytag: member="scim::Transaction::get_data" ref="b72144bc32ee2f3f9d5b9f04bc1ad9c1" args="(Transaction &trans)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::get_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a00109.html">Transaction</a> & </td> <td class="paramname"> <em>trans</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get a <a class="el" href="a00109.html">Transaction</a> object from current read position. <p> </div> </div><p> <a class="anchor" name="081862efa39a5d356cc55b9c4d41aaa7"></a><!-- doxytag: member="scim::Transaction::skip_data" ref="081862efa39a5d356cc55b9c4d41aaa7" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::Transaction::skip_data </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Skip one data from current read position. <p> </div> </div><p> <a class="anchor" name="30405844ccefd955317f013dc44f95bd"></a><!-- doxytag: member="scim::Transaction::rewind" ref="30405844ccefd955317f013dc44f95bd" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::rewind </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Rewind the current read position, then the data can be read again. <p> </div> </div><p> <a class="anchor" name="09553e14f5f724d234eb31eb95e9a7f5"></a><!-- doxytag: member="scim::Transaction::clear" ref="09553e14f5f724d234eb31eb95e9a7f5" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::Transaction::clear </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Clear the transaction, all data in this transaction will be freed. <p> </div> </div><p> <hr><h2>Friends And Related Function Documentation</h2> <a class="anchor" name="5eb858b3775f170272facc0d7bce522c"></a><!-- doxytag: member="scim::Transaction::TransactionReader" ref="5eb858b3775f170272facc0d7bce522c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="a00111.html">TransactionReader</a><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a00154.html">scim_transaction.h</a></ul> <hr size="1"><address style="align: right;"><small>Generated on Thu Jun 28 14:12:53 2007 for scim by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address> </body> </html>