Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/thirdparty/embree/common/sys/condition.h
9912 views
1
// Copyright 2009-2021 Intel Corporation
2
// SPDX-License-Identifier: Apache-2.0
3
4
#pragma once
5
6
#include "mutex.h"
7
8
namespace embree
9
{
10
class ConditionSys
11
{
12
public:
13
ConditionSys();
14
~ConditionSys();
15
void wait( class MutexSys& mutex );
16
void notify_all();
17
18
template<typename Predicate>
19
__forceinline void wait( class MutexSys& mutex, const Predicate& pred )
20
{
21
while (!pred()) wait(mutex);
22
}
23
24
private:
25
ConditionSys (const ConditionSys& other) DELETED; // do not implement
26
ConditionSys& operator= (const ConditionSys& other) DELETED; // do not implement
27
28
protected:
29
void* cond;
30
};
31
}
32
33