• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title> TemplateOSCL_HeapString&lt; Alloc &gt; class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5</head><body>
6<!-- Generated by Doxygen 1.2.18 -->
7<center>
8<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; </center>
9<hr><h1>OSCL_HeapString&lt; Alloc &gt; Class Template Reference<br>
10<small>
11[<a class="el" href="group__osclutil.html">OSCL Util</a>]</small>
12</h1><code>#include &lt;<a class="el" href="oscl__string__containers_8h-source.html">oscl_string_containers.h</a>&gt;</code>
13<p>
14<p>Inheritance diagram for OSCL_HeapString&lt; Alloc &gt;:
15<p><center><img src="classOSCL__HeapString.png" usemap="#OSCL_HeapString< Alloc >_map" border="0" alt=""></center>
16<map name="OSCL_HeapString< Alloc >_map">
17<area href="classOSCL__String.html" alt="OSCL_String" shape="rect" coords="0,112,169,136">
18<area href="classHeapBase.html" alt="HeapBase" shape="rect" coords="0,56,169,80">
19<area href="class__OsclHeapBase.html" alt="_OsclHeapBase" shape="rect" coords="0,0,169,24">
20</map>
21<table border=0 cellpadding=0 cellspacing=0>
22<tr><td></td></tr>
23<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
24<tr><td nowrap align=right valign=top>typedef OSCL_String::chartype&nbsp;</td><td valign=bottom><a class="el" href="classOSCL__HeapString.html#s0">chartype</a></td></tr>
25<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
26<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a74">OSCL_HeapString</a> ()</td></tr>
27<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a82">OSCL_HeapString</a> (const OSCL_HeapString &amp;src)</td></tr>
28<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a84">OSCL_HeapString</a> (const <a class="el" href="classOSCL__String.html">OSCL_String</a> &amp;src)</td></tr>
29<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a76">OSCL_HeapString</a> (const <a class="el" href="classOSCL__HeapString.html#s0">chartype</a> *cstr)</td></tr>
30<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a80">OSCL_HeapString</a> (const <a class="el" href="classOSCL__HeapString.html#s0">chartype</a> *buf, uint32 length)</td></tr>
31<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a86">~OSCL_HeapString</a> ()</td></tr>
32<tr><td nowrap align=right valign=top>uint32&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a62">get_size</a> () const</td></tr>
33<tr><td nowrap align=right valign=top>uint32&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a66">get_maxsize</a> () const</td></tr>
34<tr><td nowrap align=right valign=top>const <a class="el" href="classOSCL__HeapString.html#s0">chartype</a> *&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a68">get_cstr</a> () const</td></tr>
35<tr><td nowrap align=right valign=top><a class="el" href="classOSCL__HeapString.html#s0">chartype</a> *&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a70">get_str</a> () const</td></tr>
36<tr><td nowrap align=right valign=top>OSCL_HeapString &amp;&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a88">operator=</a> (const OSCL_HeapString &amp;src)</td></tr>
37<tr><td nowrap align=right valign=top>OSCL_HeapString &amp;&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a90">operator=</a> (const <a class="el" href="classOSCL__String.html">OSCL_String</a> &amp;src)</td></tr>
38<tr><td nowrap align=right valign=top>OSCL_HeapString &amp;&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a92">operator=</a> (const <a class="el" href="classOSCL__HeapString.html#s0">chartype</a> *cstr)</td></tr>
39<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="group__osclutil.html#a78">set</a> (const <a class="el" href="classOSCL__HeapString.html#s0">chartype</a> *buf, uint32 length)</td></tr>
40<tr><td colspan=2><br><h2>Friends</h2></td></tr>
41<tr><td nowrap align=right valign=top>class&nbsp;</td><td valign=bottom><a class="el" href="classOSCL__HeapString.html#l0">OSCL_String</a></td></tr>
42</table>
43<hr><a name="_details"></a><h2>Detailed Description</h2>
44<h3>template&lt;class Alloc&gt;<br>
45 class OSCL_HeapString&lt; Alloc &gt;</h3>
46
47OSCL_HeapString is a simple string class, compatible with regular character array strings.
48<p>
49The string array is variable length, is allocated from the heap, and is modifiable. A copy-on-write mechanism is used to minimize unnecessary copying when multiple instances of a string are created for reading. Allocated memory is automatically freed by the class destructor when the last string referencing the memory is destroyed.
50<p>
51The class HAS NO thread synchronization built-in, so it is NOT MT-SAFE. External locks should be used if the class is to be shared across threads.<dl compact><dt><b>Parameters: </b></dt><dd>
52<table border=0 cellspacing=2 cellpadding=0>
53<tr><td valign=top><em>Alloc:</em>&nbsp;</td><td>
54memory allocator, derived from <a class="el" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a>. </td></tr>
55</table>
56</dl>
57<p>
58<hr><h2>Member Typedef Documentation</h2>
59<a name="s0" doxytag="OSCL_HeapString::chartype"></a><p>
60<table width="100%" cellpadding="2" cellspacing="0" border="0">
61  <tr>
62    <td class="md">
63      <table cellpadding="0" cellspacing="0" border="0">
64        <tr>
65          <td class="md" colspan="4">
66template&lt;class Alloc&gt; </td>
67        </tr>
68        <tr>
69          <td class="md" nowrap valign="top"> typedef OSCL_String::chartype OSCL_HeapString&lt; Alloc &gt;::chartype
70      </table>
71    </td>
72  </tr>
73</table>
74<table cellspacing=5 cellpadding=0 border=0>
75  <tr>
76    <td>
77      &nbsp;
78    </td>
79    <td>
80
81<p>
82
83<p>
84Reimplemented from <a class="el" href="classOSCL__String.html#s0">OSCL_String</a>.    </td>
85  </tr>
86</table>
87<hr><h2>Friends And Related Function Documentation</h2>
88<a name="l0" doxytag="OSCL_HeapString::OSCL_String"></a><p>
89<table width="100%" cellpadding="2" cellspacing="0" border="0">
90  <tr>
91    <td class="md">
92      <table cellpadding="0" cellspacing="0" border="0">
93        <tr>
94          <td class="md" colspan="4">
95template&lt;class Alloc&gt; </td>
96        </tr>
97        <tr>
98          <td class="md" nowrap valign="top"> friend class OSCL_String<code> [friend]</code>
99      </table>
100    </td>
101  </tr>
102</table>
103<table cellspacing=5 cellpadding=0 border=0>
104  <tr>
105    <td>
106      &nbsp;
107    </td>
108    <td>
109
110<p>
111    </td>
112  </tr>
113</table>
114<hr>The documentation for this class was generated from the following file:<ul>
115<li><a class="el" href="oscl__string__containers_8h-source.html">oscl_string_containers.h</a></ul>
116<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
117<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
118</small></address>
119</body>
120</html>
121