00001 // -*- c++ -*- 00002 // = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 00003 00004 // Oscl Registry Access Client 00005 00006 // = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 00007 00021 #ifndef OSCL_REGISTRY_ACCESS_CLIENT_H_INCLUDED 00022 #define OSCL_REGISTRY_ACCESS_CLIENT_H_INCLUDED 00023 00024 00025 #ifndef OSCL_REGISTRY_TYPES_H_INCLUDED 00026 #include "oscl_registry_types.h" 00027 #endif 00028 #ifndef OSCL_STRING_CONTAINERS_H_INCLUDED 00029 #include "oscl_string_containers.h" 00030 #endif 00031 #ifndef OSCL_VECTOR_H_INCLUDED 00032 #include "oscl_vector.h" 00033 #endif 00034 #ifndef OSCL_MEM_H_INCLUDED 00035 #include "oscl_mem.h" 00036 #endif 00037 00038 class OsclRegistryAccessClientImpl; 00039 class OsclRegistryAccessClientTlsImpl; 00040 00041 class OsclRegistryAccessClient 00042 { 00043 public: 00044 OSCL_IMPORT_REF OsclRegistryAccessClient(); 00045 OSCL_IMPORT_REF ~OsclRegistryAccessClient(); 00046 00051 OSCL_IMPORT_REF int32 Connect(); 00052 00058 OSCL_IMPORT_REF OsclComponentFactory GetFactory(OSCL_String& aComponent); 00059 00060 00066 OSCL_IMPORT_REF void GetFactories(OSCL_String& aRegistry, Oscl_Vector<OsclRegistryAccessElement, OsclMemAllocator>& aVec); 00067 00071 OSCL_IMPORT_REF void Close(); 00072 00073 private: 00074 OsclRegistryAccessClientImpl* iGlobalImpl; 00075 OsclRegistryAccessClientTlsImpl* iTlsImpl; 00076 }; 00077 00078 00079 #endif // OSCL_STRING_H_INCLUDED 00080