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_registry_serv_impl.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_registry_serv_impl.h</h1><a href="oscl__registry__serv__impl_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">// Oscl Registry Serv Impl</span> 1300005 1400006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> 1500007 1600019 <span class="preprocessor">#ifndef OSCL_REGISTRY_SERV_IMPL_H_INCLUDED</span> 1700020 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_REGISTRY_SERV_IMPL_H_INCLUDED</span> 1800021 <span class="preprocessor"></span> 1900022 <span class="preprocessor">#include "<a class="code" href="oscl__base_8h.html">oscl_base.h</a>"</span> 2000023 <span class="preprocessor">#include "<a class="code" href="osclconfig__proc_8h.html">osclconfig_proc.h</a>"</span> 2100024 2200025 <span class="preprocessor">#include "<a class="code" href="oscl__registry__types_8h.html">oscl_registry_types.h</a>"</span> 2300026 2400031 <span class="preprocessor">#include "<a class="code" href="oscl__string_8h.html">oscl_string.h</a>"</span> 2500032 <span class="preprocessor">#include "<a class="code" href="oscl__vector_8h.html">oscl_vector.h</a>"</span> 2600033 <span class="preprocessor">#include "<a class="code" href="oscl__mem_8h.html">oscl_mem.h</a>"</span> 2700034 28<a name="l00038"></a><a class="code" href="classOsclComponentRegistryElement.html">00038</a> <span class="keyword">class </span><a class="code" href="classOsclComponentRegistryElement.html">OsclComponentRegistryElement</a> 2900039 { 3000040 <span class="keyword">public</span>: 3100041 <a class="code" href="classOsclComponentRegistryElement.html#a0">OsclComponentRegistryElement</a>(<a class="code" href="classOSCL__String.html">OSCL_String</a>&, <a class="code" href="group__osclutil.html#a0">OsclComponentFactory</a>); 3200042 <a class="code" href="classOsclComponentRegistryElement.html#a0">OsclComponentRegistryElement</a>(<span class="keyword">const</span> <a class="code" href="classOsclComponentRegistryElement.html">OsclComponentRegistryElement</a>&); 3300043 <a class="code" href="classOsclComponentRegistryElement.html">OsclComponentRegistryElement</a>& <a class="code" href="classOsclComponentRegistryElement.html#a2">operator=</a>(<span class="keyword">const</span> <a class="code" href="classOsclComponentRegistryElement.html">OsclComponentRegistryElement</a>& src); 3400044 <a class="code" href="classOsclComponentRegistryElement.html#a3">~OsclComponentRegistryElement</a>(); 3500045 3600046 <span class="keywordtype">bool</span> <a class="code" href="classOsclComponentRegistryElement.html#a4">Match</a>(<a class="code" href="classOSCL__String.html">OSCL_String</a>& aStr, <span class="keywordtype">bool</span> aExact); 3700047 38<a name="l00048"></a><a class="code" href="classOsclComponentRegistryElement.html#m0">00048</a> <a class="code" href="classOSCL__String.html">OSCL_String</a>* <a class="code" href="classOsclComponentRegistryElement.html#m0">iId</a>;<span class="comment">//use a pointer here instead of a container for efficiency</span> 3900049 <span class="comment">//since this element is used in an oscl vector.</span> 40<a name="l00050"></a><a class="code" href="classOsclComponentRegistryElement.html#m1">00050</a> <a class="code" href="group__osclutil.html#a0">OsclComponentFactory</a> <a class="code" href="classOsclComponentRegistryElement.html#m1">iFactory</a>; 41<a name="l00051"></a><a class="code" href="classOsclComponentRegistryElement.html#m2">00051</a> uint32 <a class="code" href="classOsclComponentRegistryElement.html#m2">iComponentId</a>; 4200052 }; 4300053 4400054 45<a name="l00058"></a><a class="code" href="classOsclComponentRegistryData.html">00058</a> <span class="keyword">class </span><a class="code" href="classOsclComponentRegistryData.html">OsclComponentRegistryData</a> 4600059 { 4700060 <span class="keyword">public</span>: 4800061 <a class="code" href="classOsclComponentRegistryElement.html">OsclComponentRegistryElement</a>* <a class="code" href="classOsclComponentRegistryData.html#a0">Find</a>(<a class="code" href="classOSCL__String.html">OSCL_String</a>&, <span class="keywordtype">bool</span> aExact); 49<a name="l00062"></a><a class="code" href="classOsclComponentRegistryData.html#m0">00062</a> <a class="code" href="classOscl__Vector.html">Oscl_Vector<OsclComponentRegistryElement, OsclMemAllocator></a> <a class="code" href="classOsclComponentRegistryData.html#m0">iVec</a>; 5000063 }; 5100064 5200068 <span class="preprocessor">#include "<a class="code" href="oscl__mutex_8h.html">oscl_mutex.h</a>"</span> 53<a name="l00069"></a><a class="code" href="classOsclComponentRegistry.html">00069</a> <span class="keyword">class </span><a class="code" href="classOsclComponentRegistry.html">OsclComponentRegistry</a> 5400070 { 5500071 <span class="keyword">public</span>: 5600072 <a class="code" href="classOsclComponentRegistry.html#a0">OsclComponentRegistry</a>(); 5700073 <a class="code" href="classOsclComponentRegistry.html#a1">~OsclComponentRegistry</a>(); 5800074 int32 <a class="code" href="classOsclComponentRegistry.html#a2">Register</a>(uint32& aId, <a class="code" href="classOSCL__String.html">OSCL_String</a>&, <a class="code" href="group__osclutil.html#a0">OsclComponentFactory</a>); 5900075 int32 <a class="code" href="classOsclComponentRegistry.html#a3">Unregister</a>(<a class="code" href="classOSCL__String.html">OSCL_String</a>&); 6000076 int32 <a class="code" href="classOsclComponentRegistry.html#a3">Unregister</a>(uint32); 6100077 <a class="code" href="group__osclutil.html#a0">OsclComponentFactory</a> <a class="code" href="classOsclComponentRegistry.html#a5">FindExact</a>(<a class="code" href="classOSCL__String.html">OSCL_String</a>&); 6200078 <span class="keywordtype">void</span> <a class="code" href="classOsclComponentRegistry.html#a6">FindHierarchical</a>(<a class="code" href="classOSCL__String.html">OSCL_String</a>& , <a class="code" href="classOscl__Vector.html">Oscl_Vector<OsclRegistryAccessElement, OsclMemAllocator></a>&); 6300079 <span class="keywordtype">void</span> <a class="code" href="classOsclComponentRegistry.html#a7">OpenSession</a>(); 6400080 <span class="keywordtype">void</span> <a class="code" href="classOsclComponentRegistry.html#a8">CloseSession</a>(); 6500081 66<a name="l00082"></a><a class="code" href="classOsclComponentRegistry.html#m0">00082</a> <a class="code" href="classOsclComponentRegistryData.html">OsclComponentRegistryData</a> <a class="code" href="classOsclComponentRegistry.html#m0">iData</a>; 67<a name="l00083"></a><a class="code" href="classOsclComponentRegistry.html#m1">00083</a> <a class="code" href="classOsclMutex.html">OsclMutex</a> <a class="code" href="classOsclComponentRegistry.html#m1">iMutex</a>; 6800084 69<a name="l00085"></a><a class="code" href="classOsclComponentRegistry.html#m2">00085</a> uint32 <a class="code" href="classOsclComponentRegistry.html#m2">iComponentIdCounter</a>; 7000086 71<a name="l00087"></a><a class="code" href="classOsclComponentRegistry.html#m3">00087</a> uint32 <a class="code" href="classOsclComponentRegistry.html#m3">iNumSessions</a>; 7200088 }; 7300089 7400090 7500091 <span class="preprocessor">#endif //OSCL_REGISTRY_IMPL_H_INCLUDED</span> 7600092 <span class="preprocessor"></span> 77</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 78<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 79</small></address> 80</body> 81</html> 82