Scroom 0.14-49-gb7ae7a6d
Loading...
Searching...
No Matches
function-additor.hh
Go to the documentation of this file.
1/*
2 * Scroom - Generic viewer for 2D data
3 * Copyright (C) 2009-2026 Kees-Jan Dijkzeul
4 *
5 * SPDX-License-Identifier: LGPL-2.1
6 */
7
8#pragma once
9
10#include <list>
11
12#include <boost/function.hpp>
13
15{
17 {
18 private:
19 std::list<boost::function<void()>> functions;
20
21 public:
22 void addBefore(boost::function<void()> const& fn);
23 void addAfter(boost::function<void()> const& fn);
24
25 FunctionAdditor& operator+(boost::function<void()> const& fn);
26 FunctionAdditor& operator+=(boost::function<void()> const& fn);
27 void operator()();
28 };
29
31 {
32 private:
33 boost::function<void()> f;
34 unsigned int i;
35
36 public:
37 FunctionMultiplier(boost::function<void()> f_, unsigned int i_);
38
39 FunctionMultiplier& operator*(unsigned int i);
40 void operator()();
41 };
42} // namespace Scroom::Detail::ThreadPool
43
44Scroom::Detail::ThreadPool::FunctionAdditor operator+(boost::function<void()> const& f1, boost::function<void()> const& f2);
46 operator+(boost::function<void()> const& f1, Scroom::Detail::ThreadPool::FunctionAdditor& f2);
48Scroom::Detail::ThreadPool::FunctionMultiplier operator*(unsigned int i, boost::function<void()> const& f);
49Scroom::Detail::ThreadPool::FunctionMultiplier operator*(boost::function<void()> const& f, unsigned int i);
Definition function-additor.hh:17
void operator()()
Definition function-additor.cc:30
FunctionAdditor & operator+=(boost::function< void()> const &fn)
Definition function-additor.cc:23
FunctionAdditor & operator+(boost::function< void()> const &fn)
Definition function-additor.cc:15
std::list< boost::function< void()> > functions
Definition function-additor.hh:19
void addBefore(boost::function< void()> const &fn)
Definition function-additor.cc:10
void addAfter(boost::function< void()> const &fn)
Definition function-additor.cc:12
Definition function-additor.hh:31
void operator()()
Definition function-additor.cc:52
FunctionMultiplier & operator*(unsigned int i)
Definition function-additor.cc:46
unsigned int i
Definition function-additor.hh:34
boost::function< void()> f
Definition function-additor.hh:33
() void(clear(nullptr)+(5 *clear(nullptr)) *5)
Scroom::Detail::ThreadPool::FunctionAdditor operator+(boost::function< void()> const &f1, boost::function< void()> const &f2)
Definition function-additor.cc:62
Scroom::Detail::ThreadPool::FunctionMultiplier & operator*(unsigned int i, Scroom::Detail::ThreadPool::FunctionMultiplier &m)
Definition function-additor.cc:75
f
Definition gtkhelper-tests.cc:43
Definition async-deleter.hh:22