Symphony Of Empires
combinable.hpp
Go to the documentation of this file.
1
// Eng3D - General purpouse game engine
2
// Copyright (C) 2022, Eng3D contributors
3
//
4
// This program is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// This program is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with this program. If not, see <https://www.gnu.org/licenses/>.
16
//
17
// ----------------------------------------------------------------------------
18
// Name:
19
// combinable.hpp
20
//
21
// Abstract:
22
// Does important stuff.
23
// ----------------------------------------------------------------------------
24
25
#pragma once
26
27
#include <ranges>
28
29
namespace
tbb
{
30
template
<
typename
T>
31
struct
combinable
{
32
T
value
;
33
34
const
T&
local
()
const
{
35
return
value
;
36
}
37
38
T&
local
() {
39
return
value
;
40
}
41
42
template
<
typename
F>
43
void
combine_each
(F&& func)
44
{
45
func(
value
);
46
}
47
};
48
}
tbb
Definition:
blocked_range.hpp:27
tbb::combinable
Definition:
combinable.hpp:31
tbb::combinable::value
T value
Definition:
combinable.hpp:32
tbb::combinable::local
const T & local() const
Definition:
combinable.hpp:34
tbb::combinable::combine_each
void combine_each(F &&func)
Definition:
combinable.hpp:43
tbb::combinable::local
T & local()
Definition:
combinable.hpp:38
eng3d
faketbb
tbb
combinable.hpp
Generated by
1.9.1