Merge pull request #2216 from jwillemsen/jwi-cxxversionchecks
[ACE_TAO.git] / TAO / tao / TkResource / TkResource_Loader.h
blob5e69fa41c0f37147967a23f136d9f9a57ec5c931
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file TkResource_Loader.h
7 * @author Balachandran Natarajan <bala@cs.wustl.edu>
8 * @author Marek Brudka <mbrudka@aster.pl>
9 */
10 //=============================================================================
12 #ifndef TAO_TKRESOURCE_LOADER_H
13 #define TAO_TKRESOURCE_LOADER_H
15 #include /**/ "ace/pre.h"
17 #include "tao/TkResource/TAO_TkResource_Export.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 # pragma once
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 #include "tao/Versioned_Namespace.h"
25 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
27 namespace TAO
29 /**
30 * @class TkResource_Loader
32 * @brief Loads TAO resources related with Tk.
34 * This class changes the default reactor implementation into
35 * ACE_TkReactor one by calling TAO_ORB_Core::set_gui_resource_factory.
36 * User should create an instance of this class before ORB_init
37 * when the TAO server has has to be integrated within Tk event loop.
39 * Please notice, this class has to be created in the main Tk thread,
40 * because set_gui_resource_factory creates a variable in TSS. This way
41 * TkReactor is instantiated only in Tk event loop thread.
43 class TAO_TkResource_Export TkResource_Loader
45 public:
46 TkResource_Loader ();
48 virtual ~TkResource_Loader ();
52 TAO_END_VERSIONED_NAMESPACE_DECL
54 #include /**/ "ace/post.h"
56 #endif /* TAO_TKRESOURCE_LOADER_H */