3 //==========================================================================
7 * $Id: TSS_Adapter.h 80826 2008-03-04 14:51:23Z wotte $
9 * Originally in Synch.h
11 * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
13 //==========================================================================
15 #ifndef ACE_TSS_ADAPTER_H
16 #define ACE_TSS_ADAPTER_H
17 #include /**/ "ace/pre.h"
19 #include /**/ "ace/ACE_export.h"
21 #if !defined (ACE_LACKS_PRAGMA_ONCE)
23 #endif /* ACE_LACKS_PRAGMA_ONCE */
25 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
28 * @class ACE_TSS_Adapter
30 * @brief This class encapsulates a TSS object and its associated
31 * C++ destructor function. It is used by the ACE_TSS...
32 * methods (in Synch_T.cpp) in order to allow an extern
33 * "C" cleanup routine to be used. Needed by the "frigging"
36 * Objects of this class are stored in thread specific
37 * storage. ts_obj_ points to the "real" object and
38 * func_ is a pointer to the C++ cleanup function for ts_obj_.
40 class ACE_Export ACE_TSS_Adapter
43 /// Initialize the adapter.
44 ACE_TSS_Adapter (void *object
, ACE_THR_DEST f
);
46 /// Perform the cleanup operation.
51 /// The real TS object.
54 /// The real cleanup routine for ts_obj;
58 ACE_END_VERSIONED_NAMESPACE_DECL
60 #include /**/ "ace/post.h"
61 #endif /* ACE_TSS_ADAPTER_H */