diff options
Diffstat (limited to 'ACE/tests/Framework_Component_DLL.h')
-rw-r--r-- | ACE/tests/Framework_Component_DLL.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/ACE/tests/Framework_Component_DLL.h b/ACE/tests/Framework_Component_DLL.h new file mode 100644 index 00000000000..c9760b33dcb --- /dev/null +++ b/ACE/tests/Framework_Component_DLL.h @@ -0,0 +1,58 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// tests +// +// = FILENAME +// Framework_Component_DLL.h +// +// = DESCRIPTION +// Define class needed for generating templates. IBM C++ requires this to +// be in its own file for auto template instantiation. +// +// = AUTHOR +// Don Hinton <dhinton@ieee.org> +// +// ============================================================================ + +#ifndef ACE_TESTS_FRAMEWORK_COMPONENT_DLL_H +#define ACE_TESTS_FRAMEWORK_COMPONENT_DLL_H + +#include "Framework_Component_DLL_Export.h" +#include "ace/Log_Msg.h" +#include "ace/Singleton.h" +#include "ace/Synch_Traits.h" + +/// This we will use to test the ACE_Framework_Repository +class Simple_Service +{ +public: + Simple_Service (void); + + virtual ~Simple_Service (void); + + //virtual const ACE_TCHAR *dll_name (void); + + virtual const ACE_TCHAR *name (void); + +}; + +// Adapter that contains the required dll_name() method and +// has the "right" name for our DLL. +template <class TYPE> +class FWCT_DLL_Singleton_Adapter_T : public TYPE +{ +public: + const ACE_TCHAR *dll_name (void) + { + FRAMEWORK_COMPONENT_DLL_TRACE ("FWCT_DLL_Singleton_Adapter_T::dll_name"); + return ACE_TEXT("Framework_Component_DLL"); + } +}; + +typedef ACE_DLL_Singleton_T < FWCT_DLL_Singleton_Adapter_T <Simple_Service>, + ACE_SYNCH_MUTEX > SS_SINGLETON; + +#endif /* ACE_TESTS_FRAMEWORK_COMPONENT_TEST_H */ |