Main Page
Namespaces
Classes
Package Documentation
FWCore
Concurrency
interface
FunctorTask.h
Go to the documentation of this file.
1
#ifndef FWCore_Concurrency_FunctorTask_h
2
#define FWCore_Concurrency_FunctorTask_h
3
// -*- C++ -*-
4
//
5
// Package: Concurrency
6
// Class : FunctorTask
7
//
15
//
16
// Original Author: Chris Jones
17
// Created: Thu Feb 21 13:46:31 CST 2013
18
// $Id$
19
//
20
21
// system include files
22
#include <atomic>
23
#include <exception>
24
#include <memory>
25
#include "tbb/task.h"
26
27
// user include files
28
29
// forward declarations
30
31
namespace
edm
{
32
template
<
typename
F>
33
class
FunctorTask
:
public
tbb::task
{
34
public
:
35
explicit
FunctorTask
(
F
f
) :
func_
(
std
::
move
(f)) {}
36
37
task
*
execute
()
override
{
38
func_
();
39
return
nullptr
;
40
};
41
42
private
:
43
F
func_
;
44
};
45
46
template
<
typename
ALLOC,
typename
F>
47
FunctorTask<F>
*
make_functor_task
(ALLOC&& iAlloc,
F
f
) {
48
return
new
(iAlloc)
FunctorTask<F>
(
std::move
(f));
49
}
50
}
// namespace edm
51
52
#endif
edm::make_functor_task
FunctorTask< F > * make_functor_task(ALLOC &&iAlloc, F f)
Definition:
FunctorTask.h:47
TrackValidation_cff.task
task
Definition:
TrackValidation_cff.py:249
std
Definition:
JetResolutionObject.h:76
edm::FunctorTask::FunctorTask
FunctorTask(F f)
Definition:
FunctorTask.h:35
edm::FunctorTask::execute
task * execute() override
Definition:
FunctorTask.h:37
f
double f[11][100]
Definition:
MuScleFitUtils.cc:78
edm::FunctorTask
Definition:
FunctorTask.h:33
edm::FunctorTask::func_
F func_
Definition:
FunctorTask.h:40
edm
HLT enums.
Definition:
AlignableModifier.h:19
F
static uInt32 F(BLOWFISH_CTX *ctx, uInt32 x)
Definition:
blowfish.cc:163
eostools.move
def move(src, dest)
Definition:
eostools.py:511
Generated for CMSSW Reference Manual by
1.8.11