summaryrefslogtreecommitdiff
path: root/TAO/tao/ORB_Table.h
diff options
context:
space:
mode:
authorOssama Othman <ossama-othman@users.noreply.github.com>2002-04-18 22:04:50 +0000
committerOssama Othman <ossama-othman@users.noreply.github.com>2002-04-18 22:04:50 +0000
commit0db5bad50c8a98799bdd211d3355cc9b87a2cf0e (patch)
tree2aa67ee3daf3d7152498fea477f645eb0c9fa73b /TAO/tao/ORB_Table.h
parent4b58b826ead0c9ea9e1c811588b88fc375e8d493 (diff)
downloadATCD-0db5bad50c8a98799bdd211d3355cc9b87a2cf0e.tar.gz
ChangeLogTag:Thu Apr 18 15:03:56 2002 Ossama Othman <ossama@uci.edu>
Diffstat (limited to 'TAO/tao/ORB_Table.h')
-rw-r--r--TAO/tao/ORB_Table.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/TAO/tao/ORB_Table.h b/TAO/tao/ORB_Table.h
index 0b1beb7936e..b9ba19df5c4 100644
--- a/TAO/tao/ORB_Table.h
+++ b/TAO/tao/ORB_Table.h
@@ -23,8 +23,6 @@
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
-#include "tao/orbconf.h"
-#include "tao/TAO_Singleton.h"
#include "ace/Synch.h"
#include "ace/Hash_Map_Manager_T.h"
#include "ace/Functor.h"
@@ -43,12 +41,26 @@ class TAO_ORB_Core;
* This class is used to implement that feature.
* It is also useful when trying to determine if an object
* reference is collocated or not.
+ *
+ * @note This class should be instantiated via its instance() method.
+ * Normally this would be enforced by making the constructor
+ * protected but that forces a friend declaration containing a
+ * template type (TAO_Singleton) with a static member to be
+ * introduced. In turn, this potentially introduces problems in
+ * MS Windows DLL environments due to the occurance of multiple
+ * singleton instances. There should only be one!
*/
class TAO_Export TAO_ORB_Table
{
- friend class TAO_Export TAO_Singleton<TAO_ORB_Table, TAO_SYNCH_MUTEX>;
-
public:
+
+ /// Constructor
+ /**
+ * @note See the note in the class description for an explanation of
+ * why this constructor is not protected.
+ */
+ TAO_ORB_Table (void);
+
/// destructor
~TAO_ORB_Table (void);
@@ -70,11 +82,6 @@ public:
/// Return a unique instance
static TAO_ORB_Table *instance (void);
-protected:
-
- /// Constructor
- TAO_ORB_Table (void);
-
private:
/// Prevent copying