summaryrefslogtreecommitdiff
path: root/ace/Registry.h
diff options
context:
space:
mode:
authorbrunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-08-14 14:48:49 +0000
committerbrunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-08-14 14:48:49 +0000
commit57ea31cf4092dd2980746d5caf25f51a76107570 (patch)
treefa319160f319a03d8d2c87177dd910c2793904ca /ace/Registry.h
parent70f1ba65174b2f952496d6b131cf8203eb7dfc4b (diff)
downloadATCD-57ea31cf4092dd2980746d5caf25f51a76107570.tar.gz
Updated to use MSVC 5 features and the ability to use Standard C++
libraries.
Diffstat (limited to 'ace/Registry.h')
-rw-r--r--ace/Registry.h25
1 files changed, 22 insertions, 3 deletions
diff --git a/ace/Registry.h b/ace/Registry.h
index 50ebe03d91d..9dc5a07e785 100644
--- a/ace/Registry.h
+++ b/ace/Registry.h
@@ -23,10 +23,22 @@
#if defined (ACE_WIN32)
// This only works on Win32 platforms
+#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && \
+ (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
+#include <vector>
+#include <string>
+#else
#include "vector.h"
#include "bstring.h"
+#endif
// You must configure the STL components in order to use this wrapper.
+#if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB) && \
+ (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB != 0)
+ using std::vector;
+ using std::basic_string;
+#endif /* ACE_HAS_STD_NAMESPACE_FOR_STDCPP_LIB */
+
class ACE_Export ACE_Registry
// = TITLE
// A Name Server implementation
@@ -41,7 +53,7 @@ class ACE_Export ACE_Registry
{
public:
- typedef std::basic_string<TCHAR> Istring;
+ typedef basic_string<TCHAR> Istring;
// International string
struct ACE_Export Name_Component
@@ -52,7 +64,7 @@ public:
// The <id_> field is used,
// but the <kind_> field is currently ignored
- typedef std::vector<Name_Component> Name;
+ typedef vector<Name_Component> Name;
// A Name is an ordered collections of components (ids)
static LPCTSTR STRING_SEPARATOR;
@@ -100,7 +112,7 @@ public:
// A binding has a name and a type
};
- typedef std::vector<Binding> Binding_List;
+ typedef vector<Binding> Binding_List;
// A list of bindings
class Binding_Iterator;
@@ -504,5 +516,12 @@ private:
};
+#if (_MSC_VER) && (_MSC_VER > 1020) && \
+ (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
+ typedef ACE_Registry::Name_Component Name_Component;
+ typedef ACE_Registry::Binding Binding;
+ const int NPOS = ACE_Registry::Istring::npos;
+#endif
+
#endif /* ACE_WIN32 */
#endif /* ACE_REGISTRY_H */