📄 classbuffer__c.html
字号:
NLdouble </td><td valign=bottom><a class="el" href="classbuffer__c.html#a26">getDouble</a> ()</td></tr><tr><td> </td><td><font size=-1><em>read a double</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a27" doxytag="buffer_c::getBlock"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a27">getBlock</a> (char *buffer, int length)</td></tr><tr><td> </td><td><font size=-1><em>read a block of bytes. buffer=where to put it. length=amount to read.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a28" doxytag="buffer_c::getString"></a>std::string </td><td valign=bottom><a class="el" href="classbuffer__c.html#a28">getString</a> ()</td></tr><tr><td> </td><td><font size=-1><em>reads a zero-terminated string from the buffer.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a29" doxytag="buffer_c::getDataToSocket"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#a29">getDataToSocket</a> (NLsocket sock, int length)</td></tr><tr><td> </td><td><font size=-1><em>special read operation: read data and nlWrite(...) it to a socket. returns result of nlWrite(...)</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a30" doxytag="buffer_c::operator>>"></a>buffer_c & </td><td valign=bottom><a class="el" href="classbuffer__c.html#a30">operator>></a> (NLubyte &v)</td></tr><tr><td> </td><td><font size=-1><em>convenience input stream operators</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a40" doxytag="buffer_c::operator<<"></a>buffer_c & </td><td valign=bottom><a class="el" href="classbuffer__c.html#a40">operator<<</a> (NLubyte v)</td></tr><tr><td> </td><td><font size=-1><em>convenience output stream operators</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a50" doxytag="buffer_c::putByte"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a50">putByte</a> (NLubyte i)</td></tr><tr><td> </td><td><font size=-1><em>write an unsigned byte</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a51" doxytag="buffer_c::putBytes"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a51">putBytes</a> (NLbyte i)</td></tr><tr><td> </td><td><font size=-1><em>write a signed byte</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a52" doxytag="buffer_c::putShort"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a52">putShort</a> (NLushort i)</td></tr><tr><td> </td><td><font size=-1><em>write an unsigned short</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a53" doxytag="buffer_c::putShorts"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a53">putShorts</a> (NLshort i)</td></tr><tr><td> </td><td><font size=-1><em>write a signed short</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a54" doxytag="buffer_c::putLong"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a54">putLong</a> (NLulong i)</td></tr><tr><td> </td><td><font size=-1><em>write an unsigned long</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a55" doxytag="buffer_c::putLongs"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a55">putLongs</a> (NLlong i)</td></tr><tr><td> </td><td><font size=-1><em>write a signed long</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a56" doxytag="buffer_c::putFloat"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a56">putFloat</a> (NLfloat i)</td></tr><tr><td> </td><td><font size=-1><em>write a float</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a57" doxytag="buffer_c::putDouble"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a57">putDouble</a> (NLdouble i)</td></tr><tr><td> </td><td><font size=-1><em>write a double</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a58" doxytag="buffer_c::putBlock"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a58">putBlock</a> (char *buffer, int length)</td></tr><tr><td> </td><td><font size=-1><em>write a block of bytes. buffer=the buffer length=the number of bytes from buffer to write.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a59" doxytag="buffer_c::putString"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a59">putString</a> (std::string str)</td></tr><tr><td> </td><td><font size=-1><em>write a zero-terminated string</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a60" doxytag="buffer_c::putDataFromSocket"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#a60">putDataFromSocket</a> (NLsocket sock)</td></tr><tr><td> </td><td><font size=-1><em>special write operation, write read data from a socket. returns code from nlRead(...).HARDCODED SIZE LIMIT: 64K : this is used for UDP sockets, where an UDP packet willnever be used to send anything larger than 1-4K tops (I hope so.)</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a61" doxytag="buffer_c::putDataFromSocket"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#a61">putDataFromSocket</a> (NLsocket sock, int size)</td></tr><tr><td> </td><td><font size=-1><em>special write operation, write read data from a socket size=bytes to read, returns codefrom the last nlRead(...) call. this method signature (with "size" arg) is for TCPsockets, where you expect a certain amount of data to arrive.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a62" doxytag="buffer_c::putObject"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a62">putObject</a> (const <a class="el" href="classserializable__c.html">serializable_c</a> &obj)</td></tr><tr><td> </td><td><font size=-1><em>NEW: write an object of a REGISTERED class that extends serializable_cTHE CLASS MUST BE REGISTERED.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a63" doxytag="buffer_c::getObject"></a><a class="el" href="classserializable__c.html">serializable_c</a> * </td><td valign=bottom><a class="el" href="classbuffer__c.html#a63">getObject</a> ()</td></tr><tr><td> </td><td><font size=-1><em>NEW: read an object of a REGISTERED class that extends serializable_cTHE CLASS MUST BE REGISTERED.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a64" doxytag="buffer_c::get32K"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#a64">get32K</a> ()</td></tr><tr><td> </td><td><font size=-1><em>read a value in the range [0..32767] where values [0..127] use only one byte and [128..32767] use two bytes.</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a65" doxytag="buffer_c::put32K"></a>void </td><td valign=bottom><a class="el" href="classbuffer__c.html#a65">put32K</a> (int i)</td></tr><tr><td> </td><td><font size=-1><em>write a value in the range [0..32767] where values [0..127] use only one byte and [128..32767] use two bytes. passing a negative value or a value greater than 32767 as argument produces undefined behavior</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a66" doxytag="buffer_c::zip"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#a66">zip</a> (buffer_c &dest, int amount=-1)</td></tr><tr><td> </td><td><font size=-1><em>compress this buffer into another buffer passed as parameter. be sure to <a class="el" href="classbuffer__c.html#a10">seek()</a> to the desired position in both the source and the destination buffer. the optional parameter is the amount of bytes to read for compression (if not specified, all remaining bytes are read and compressed into the destination). RETURN VALUES: returns <0 if the compression failed for any reason; returns the number of bytes written to dest otherwise.CURRENTLY, the library used to compress/decompress is BZIP2. BZIP2 1.02 from <a href="http://sources.redhat.com/bzip2">http://sources.redhat.com/bzip2</a></em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="a67" doxytag="buffer_c::unzip"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#a67">unzip</a> (buffer_c &dest)</td></tr><tr><td> </td><td><font size=-1><em>decompress this buffer into another buffer passed as parameter. RETURN VALUES: returns <0 if the decompression failed for any reason; returns the number of bytes written to dest otherwise. CURRENTLY, the library used to compress/decompress is BZIP2. BZIP2 1.02 from <a href="http://sources.redhat.com/bzip2">http://sources.redhat.com/bzip2</a></em></font><br><br></td></tr><tr><td colspan=2><br><h2>Public Attributes</h2></td></tr><tr><td nowrap align=right valign=top><a name="m0" doxytag="buffer_c::code"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#m0">code</a></td></tr><tr><td> </td><td><font size=-1><em>convenience field</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="m1" doxytag="buffer_c::id"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#m1">id</a></td></tr><tr><td> </td><td><font size=-1><em>convenience field</em></font><br><br></td></tr><tr><td nowrap align=right valign=top><a name="m2" doxytag="buffer_c::internal"></a>int </td><td valign=bottom><a class="el" href="classbuffer__c.html#m2">internal</a></td></tr><tr><td> </td><td><font size=-1><em>convenience field</em></font><br><br></td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2>a very flexible data buffer, supports copy constructor, assignment, put stuff, get stuff, seek, clear, etc.<p><hr>The documentation for this class was generated from the following file:<ul><li><a class="el" href="buffer__2_8h-source.html">buffer_2.h</a></ul><hr><address style="align: right;"><small>Generated on Mon Jan 24 21:14:23 2005 for ZIG by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -