diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2002-04-18 22:04:50 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2002-04-18 22:04:50 +0000 |
commit | 0db5bad50c8a98799bdd211d3355cc9b87a2cf0e (patch) | |
tree | 2aa67ee3daf3d7152498fea477f645eb0c9fa73b /TAO/tao/ORB_Table.h | |
parent | 4b58b826ead0c9ea9e1c811588b88fc375e8d493 (diff) | |
download | ATCD-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.h | 25 |
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 |