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>oscl_string_rep.h Source File</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> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> </center> 9<hr><h1>oscl_string_rep.h</h1><a href="oscl__string__rep_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">// -*- c++ -*-</span> 1000002 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> 1100003 1200004 <span class="comment">// O S C L_ S T R I N G _ R E P</span> 1300005 <span class="comment">//</span> 1400006 <span class="comment">// This file contains a standardized set of string containers that</span> 1500007 <span class="comment">// can be used in place of character arrays.</span> 1600008 1700009 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> 1800010 1900024 <span class="preprocessor">#ifndef OSCL_STRING_REP_H_INCLUDED</span> 2000025 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_STRING_REP_H_INCLUDED</span> 2100026 <span class="preprocessor"></span> 2200027 2300028 <span class="preprocessor">#ifndef OSCL_DEFALLOC_H_INCLUDED</span> 2400029 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="oscl__defalloc_8h.html">oscl_defalloc.h</a>"</span> 2500030 <span class="preprocessor">#endif</span> 2600031 <span class="preprocessor"></span> 2700032 2800033 29<a name="l00036"></a><a class="code" href="classCHeapRep.html">00036</a> <span class="keyword">class </span><a class="code" href="classCHeapRep.html">CHeapRep</a> 3000037 { 3100038 <span class="keyword">public</span>: 32<a name="l00039"></a><a class="code" href="classCHeapRep.html#a0">00039</a> <a class="code" href="classCHeapRep.html#a0">CHeapRep</a>() 3300040 : <a class="code" href="classCHeapRep.html#m0">refcount</a>(0) 3400041 , <a class="code" href="classCHeapRep.html#m1">buffer</a>(<a class="code" href="group__osclbase.html#a81">NULL</a>) 3500042 , <a class="code" href="classCHeapRep.html#m2">maxsize</a>(0) 3600043 , <a class="code" href="classCHeapRep.html#m3">size</a>(0) 3700044 {} 3800045 3900046 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#d0">set_rep</a>(<a class="code" href="classCHeapRep.html">CHeapRep</a>*&, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a>&, <span class="keyword">const</span> <span class="keywordtype">char</span>*, uint32); 4000047 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#d0">set_rep</a>(<a class="code" href="classCHeapRep.html">CHeapRep</a>*&, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a>&, <span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>*, uint32); 4100048 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#d2">append_rep</a>(<a class="code" href="classCHeapRep.html">CHeapRep</a>*&, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a>&, <span class="keyword">const</span> <span class="keywordtype">char</span>*, uint32); 4200049 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#d2">append_rep</a>(<a class="code" href="classCHeapRep.html">CHeapRep</a>*&, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a>&, <span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>*, uint32); 4300050 44<a name="l00051"></a><a class="code" href="classCHeapRep.html#m0">00051</a> uint32 <a class="code" href="classCHeapRep.html#m0">refcount</a>; 45<a name="l00052"></a><a class="code" href="classCHeapRep.html#m1">00052</a> <a class="code" href="group__osclbase.html#a25">OsclAny</a>* <a class="code" href="classCHeapRep.html#m1">buffer</a>; 46<a name="l00053"></a><a class="code" href="classCHeapRep.html#m2">00053</a> uint32 <a class="code" href="classCHeapRep.html#m2">maxsize</a>; 47<a name="l00054"></a><a class="code" href="classCHeapRep.html#m3">00054</a> uint32 <a class="code" href="classCHeapRep.html#m3">size</a>; 4800055 OSCL_IMPORT_REF <span class="keywordtype">bool</span> <a class="code" href="classCHeapRep.html#a1">set</a>(uint32, <span class="keyword">const</span> <span class="keywordtype">char</span>*, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 4900056 OSCL_IMPORT_REF <span class="keywordtype">bool</span> <a class="code" href="classCHeapRep.html#a1">set</a>(uint32, <span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>*, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 5000057 OSCL_IMPORT_REF <span class="keywordtype">bool</span> <a class="code" href="classCHeapRep.html#a3">append</a>(uint32, <span class="keyword">const</span> <span class="keywordtype">char</span>*, uint32, <span class="keyword">const</span> <span class="keywordtype">char</span>*, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 5100058 OSCL_IMPORT_REF <span class="keywordtype">bool</span> <a class="code" href="classCHeapRep.html#a3">append</a>(uint32, <span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>*, uint32, <span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>*, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 5200059 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#a5">add_ref</a>(); 5300060 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#a6">remove_ref</a>(<a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 5400061 5500062 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classCHeapRep.html#d4">assign</a>(<a class="code" href="classCHeapRep.html">CHeapRep</a>*&, <a class="code" href="classCHeapRep.html">CHeapRep</a>*, <a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 5600063 <span class="keyword">private</span>: 5700064 <span class="keyword">static</span> <a class="code" href="classCHeapRep.html">CHeapRep</a> *New(<a class="code" href="classOscl__DefAlloc.html">Oscl_DefAlloc</a> &); 5800065 }; 5900066 60<a name="l00069"></a><a class="code" href="classCStackRep.html">00069</a> <span class="keyword">class </span><a class="code" href="classCStackRep.html">CStackRep</a> 6100070 { 6200071 <span class="keyword">public</span>: 63<a name="l00072"></a><a class="code" href="classCStackRep.html#a0">00072</a> <a class="code" href="classCStackRep.html#a0">CStackRep</a>() 6400073 : <a class="code" href="classCStackRep.html#m0">maxsize</a>(0) 6500074 , <a class="code" href="classCStackRep.html#m1">size</a>(0) 6600075 , <a class="code" href="classCStackRep.html#m2">buffer</a>(<a class="code" href="group__osclbase.html#a81">NULL</a>) 6700076 {} 68<a name="l00077"></a><a class="code" href="classCStackRep.html#m0">00077</a> uint32 <a class="code" href="classCStackRep.html#m0">maxsize</a>; 69<a name="l00078"></a><a class="code" href="classCStackRep.html#m1">00078</a> uint32 <a class="code" href="classCStackRep.html#m1">size</a>; 70<a name="l00079"></a><a class="code" href="classCStackRep.html#m2">00079</a> <a class="code" href="group__osclbase.html#a25">OsclAny</a>* <a class="code" href="classCStackRep.html#m2">buffer</a>; 7100080 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCStackRep.html#a1">set</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* cp, uint32 len); 7200081 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCStackRep.html#a1">set</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>* cp, uint32 len); 7300082 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCStackRep.html#a3">append</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* cp, uint32 len); 7400083 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCStackRep.html#a3">append</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>* cp, uint32 len); 7500084 }; 7600085 7700086 78<a name="l00089"></a><a class="code" href="classCFastRep.html">00089</a> <span class="keyword">class </span><a class="code" href="classCFastRep.html">CFastRep</a> 7900090 { 8000091 <span class="keyword">public</span>: 81<a name="l00092"></a><a class="code" href="classCFastRep.html#a0">00092</a> <a class="code" href="classCFastRep.html#a0">CFastRep</a>() 8200093 : <a class="code" href="classCFastRep.html#m0">maxsize</a>(0) 8300094 , <a class="code" href="classCFastRep.html#m1">size</a>(0) 8400095 , <a class="code" href="classCFastRep.html#m2">buffer</a>(<a class="code" href="group__osclbase.html#a81">NULL</a>) 8500096 , <a class="code" href="classCFastRep.html#m3">writable</a>(false) 8600097 {} 87<a name="l00098"></a><a class="code" href="classCFastRep.html#m0">00098</a> uint32 <a class="code" href="classCFastRep.html#m0">maxsize</a>; 88<a name="l00099"></a><a class="code" href="classCFastRep.html#m1">00099</a> uint32 <a class="code" href="classCFastRep.html#m1">size</a>; 89<a name="l00100"></a><a class="code" href="classCFastRep.html#m2">00100</a> <a class="code" href="group__osclbase.html#a25">OsclAny</a>* <a class="code" href="classCFastRep.html#m2">buffer</a>; 90<a name="l00101"></a><a class="code" href="classCFastRep.html#m3">00101</a> <span class="keywordtype">bool</span> <a class="code" href="classCFastRep.html#m3">writable</a>; 9100102 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCFastRep.html#a1">set_w</a>(<span class="keywordtype">char</span>* cp, uint32 len, uint32 maxlen); 9200103 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCFastRep.html#a1">set_w</a>(<a class="code" href="group__osclbase.html#a32">oscl_wchar</a>* cp, uint32 len, uint32 maxlen); 9300104 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCFastRep.html#a3">set_r</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* cp, uint32 len); 9400105 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCFastRep.html#a3">set_r</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>* cp, uint32 len); 9500106 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCFastRep.html#a5">append</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* cp, uint32 len); 9600107 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classCFastRep.html#a5">append</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#a32">oscl_wchar</a>* cp, uint32 len); 9700108 }; 9800109 9900110 10000111 <span class="preprocessor">#endif // OSCL_STRING_REP_H_INCLUDED</span> 10100112 <span class="preprocessor"></span> 102</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 103<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 104</small></address> 105</body> 106</html> 107