Use override/default for RTPortableServer
[ACE_TAO.git] / ACE / ace / TSS_Adapter.h
blobb1a35bc48ef52054c71e4f383f2568cab1f8a7b8
1 // -*- C++ -*-
3 //==========================================================================
4 /**
5 * @file TSS_Adapter.h
7 * @author Douglas C. Schmidt <d.schmidt@vanderbilt.edu>
8 */
9 //==========================================================================
11 #ifndef ACE_TSS_ADAPTER_H
12 #define ACE_TSS_ADAPTER_H
13 #include /**/ "ace/pre.h"
15 #include /**/ "ace/ACE_export.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
18 # pragma once
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
23 /**
24 * @class ACE_TSS_Adapter
26 * @brief This class encapsulates a TSS object and its associated
27 * C++ destructor function. It is used by the ACE_TSS...
28 * methods (in Synch_T.cpp) in order to allow an extern
29 * "C" cleanup routine to be used.
31 * Objects of this class are stored in thread specific
32 * storage. ts_obj_ points to the "real" object and
33 * func_ is a pointer to the C++ cleanup function for ts_obj_.
35 class ACE_Export ACE_TSS_Adapter
37 public:
38 /// Initialize the adapter.
39 ACE_TSS_Adapter (void *object, ACE_THR_DEST f);
41 /// Perform the cleanup operation.
42 void cleanup ();
44 ACE_ALLOC_HOOK_DECLARE;
46 //private:
47 /// The real TS object.
48 void * const ts_obj_;
50 /// The real cleanup routine for ts_obj;
51 ACE_THR_DEST func_;
54 ACE_END_VERSIONED_NAMESPACE_DECL
56 #include /**/ "ace/post.h"
57 #endif /* ACE_TSS_ADAPTER_H */