Initial commit.
This commit is contained in:
commit
d3bb49b3f5
1073 changed files with 484757 additions and 0 deletions
31
Framework/external/embree/common/sys/condition.h
vendored
Normal file
31
Framework/external/embree/common/sys/condition.h
vendored
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
// Copyright 2009-2021 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "mutex.h"
|
||||
|
||||
namespace embree
|
||||
{
|
||||
class ConditionSys
|
||||
{
|
||||
public:
|
||||
ConditionSys();
|
||||
~ConditionSys();
|
||||
void wait( class MutexSys& mutex );
|
||||
void notify_all();
|
||||
|
||||
template<typename Predicate>
|
||||
__forceinline void wait( class MutexSys& mutex, const Predicate& pred )
|
||||
{
|
||||
while (!pred()) wait(mutex);
|
||||
}
|
||||
|
||||
private:
|
||||
ConditionSys (const ConditionSys& other) DELETED; // do not implement
|
||||
ConditionSys& operator= (const ConditionSys& other) DELETED; // do not implement
|
||||
|
||||
protected:
|
||||
void* cond;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue