| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. | 
| 3  * | 3  * | 
| 4  *  Use of this source code is governed by a BSD-style license | 4  *  Use of this source code is governed by a BSD-style license | 
| 5  *  that can be found in the LICENSE file in the root of the source | 5  *  that can be found in the LICENSE file in the root of the source | 
| 6  *  tree. An additional intellectual property rights grant can be found | 6  *  tree. An additional intellectual property rights grant can be found | 
| 7  *  in the file PATENTS.  All contributing project authors may | 7  *  in the file PATENTS.  All contributing project authors may | 
| 8  *  be found in the AUTHORS file in the root of the source tree. | 8  *  be found in the AUTHORS file in the root of the source tree. | 
| 9  */ | 9  */ | 
| 10 | 10 | 
| 11 #ifndef WEBRTC_SYSTEM_WRAPPERS_INTERFACE_CONDITION_VARIABLE_WRAPPER_H_ | 11 #ifndef WEBRTC_SYSTEM_WRAPPERS_INCLUDE_CONDITION_VARIABLE_WRAPPER_H_ | 
| 12 #define WEBRTC_SYSTEM_WRAPPERS_INTERFACE_CONDITION_VARIABLE_WRAPPER_H_ | 12 #define WEBRTC_SYSTEM_WRAPPERS_INCLUDE_CONDITION_VARIABLE_WRAPPER_H_ | 
| 13 | 13 | 
| 14 namespace webrtc { | 14 namespace webrtc { | 
| 15 | 15 | 
| 16 class CriticalSectionWrapper; | 16 class CriticalSectionWrapper; | 
| 17 | 17 | 
| 18 class ConditionVariableWrapper { | 18 class ConditionVariableWrapper { | 
| 19  public: | 19  public: | 
| 20   // Factory method, constructor disabled. | 20   // Factory method, constructor disabled. | 
| 21   static ConditionVariableWrapper* CreateConditionVariable(); | 21   static ConditionVariableWrapper* CreateConditionVariable(); | 
| 22 | 22 | 
| 23   virtual ~ConditionVariableWrapper() {} | 23   virtual ~ConditionVariableWrapper() {} | 
| 24 | 24 | 
| 25   // Calling thread will atomically release crit_sect and wait until next | 25   // Calling thread will atomically release crit_sect and wait until next | 
| 26   // some other thread calls Wake() or WakeAll(). | 26   // some other thread calls Wake() or WakeAll(). | 
| 27   virtual void SleepCS(CriticalSectionWrapper& crit_sect) = 0; | 27   virtual void SleepCS(CriticalSectionWrapper& crit_sect) = 0; | 
| 28 | 28 | 
| 29   // Same as above but with a timeout. | 29   // Same as above but with a timeout. | 
| 30   virtual bool SleepCS(CriticalSectionWrapper& crit_sect, | 30   virtual bool SleepCS(CriticalSectionWrapper& crit_sect, | 
| 31                        unsigned long max_time_in_ms) = 0; | 31                        unsigned long max_time_in_ms) = 0; | 
| 32 | 32 | 
| 33   // Wakes one thread calling SleepCS(). | 33   // Wakes one thread calling SleepCS(). | 
| 34   virtual void Wake() = 0; | 34   virtual void Wake() = 0; | 
| 35 | 35 | 
| 36   // Wakes all threads calling SleepCS(). | 36   // Wakes all threads calling SleepCS(). | 
| 37   virtual void WakeAll() = 0; | 37   virtual void WakeAll() = 0; | 
| 38 }; | 38 }; | 
| 39 | 39 | 
| 40 }  // namespace webrtc | 40 }  // namespace webrtc | 
| 41 | 41 | 
| 42 #endif  // WEBRTC_SYSTEM_WRAPPERS_INTERFACE_CONDITION_VARIABLE_WRAPPER_H_ | 42 #endif  // WEBRTC_SYSTEM_WRAPPERS_INCLUDE_CONDITION_VARIABLE_WRAPPER_H_ | 
| OLD | NEW | 
|---|