diff options
author | mcorino <mcorino@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2012-08-16 09:36:07 +0000 |
---|---|---|
committer | mcorino <mcorino@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2012-08-16 09:36:07 +0000 |
commit | f25c7a2aa1e464b424ba5add600f9a3e0edc9ee2 (patch) | |
tree | 176c473ff67ebacacb932706101f3a4f46d352a4 /ACE/ace/Condition_Attributes.h | |
parent | 22a406258b246f6f07610d38f749ba3a8c7cbd7e (diff) | |
download | ATCD-f25c7a2aa1e464b424ba5add600f9a3e0edc9ee2.tar.gz |
ChangeLogTag: Thu Aug 16 09:22:31 UTC 2012 Martin Corino <mcorino@remedy.nl>
Diffstat (limited to 'ACE/ace/Condition_Attributes.h')
-rw-r--r-- | ACE/ace/Condition_Attributes.h | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/ACE/ace/Condition_Attributes.h b/ACE/ace/Condition_Attributes.h index 9fd189fa0fc..0855276f5a8 100644 --- a/ACE/ace/Condition_Attributes.h +++ b/ACE/ace/Condition_Attributes.h @@ -39,8 +39,8 @@ public: /// Destructor ~ACE_Condition_Attributes (void); -private: - friend class ACE_Condition_Thread_Mutex; +protected: + template <class MUTEX> friend class ACE_Condition; /// The attributes ACE_condattr_t attributes_; @@ -51,6 +51,43 @@ private: ACE_Condition_Attributes (const ACE_Condition_Attributes &); }; +template <class TIME_POLICY> +class ACE_Condition_Attributes_T : public ACE_Condition_Attributes +{ +public: + /// Constructor + ACE_Condition_Attributes_T (int type = ACE_DEFAULT_SYNCH_TYPE) + : ACE_Condition_Attributes (type) + {} + + /// Destructor + ~ACE_Condition_Attributes_T (void) {} + +private: + // = Prevent assignment and initialization. + void operator= (const ACE_Condition_Attributes_T<TIME_POLICY> &); + ACE_Condition_Attributes_T (const ACE_Condition_Attributes_T<TIME_POLICY> &); +}; + +class ACE_Monotonic_Time_Policy; + +template <> +class ACE_Export ACE_Condition_Attributes_T<ACE_Monotonic_Time_Policy> + : public ACE_Condition_Attributes +{ +public: + /// Constructor + ACE_Condition_Attributes_T (int type = ACE_DEFAULT_SYNCH_TYPE); + + /// Destructor + ~ACE_Condition_Attributes_T (void); + +private: + // = Prevent assignment and initialization. + void operator= (const ACE_Condition_Attributes_T<ACE_Monotonic_Time_Policy> &); + ACE_Condition_Attributes_T (const ACE_Condition_Attributes_T<ACE_Monotonic_Time_Policy> &); +}; + ACE_END_VERSIONED_NAMESPACE_DECL #if defined (__ACE_INLINE__) |