Fawkes API Fawkes Development Version
execution_time_estimator_inifin.h
1/***************************************************************************
2 * execution_time_estimator_inifin.h - Aspect INiFin
3 *
4 * Created: Thu 12 Dec 2019 19:00:07 CET 19:00
5 * Copyright 2019 Till Hofmann <hofmann@kbsg.rwth-aachen.de>
6 ****************************************************************************/
7
8/* This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU Library General Public License for more details.
17 *
18 * Read the full text in the LICENSE.GPL file in the doc directory.
19 */
20
21#pragma once
22
23#include "execution_time_estimator.h"
24
25#include <aspect/aspect.h>
26#include <aspect/inifins/inifin.h>
27
28namespace fawkes {
29
31{
32public:
35 virtual void init(Thread *thread);
36 virtual void finalize(Thread *thread);
37
38private:
39 ExecutionTimeEstimatorsAspect *get_aspect(Thread *thread) const;
40 ExecutionTimeEstimatorManager *execution_time_estimator_manager_;
41};
42
43} // namespace fawkes
Aspect initializer/finalizer base class.
Definition: inifin.h:34
A manager for execution time providers.
The Aspect IniFin for the ExecutionTimeEstimatorsAspect.
virtual void init(Thread *thread)
Initialize the thread with the aspect.
virtual void finalize(Thread *thread)
Finalize the aspect of the given thread.
ExecutionTimeEstimatorsAspectIniFin(ExecutionTimeEstimatorManager *manager)
Constructor.
An aspect to give access to the execution time estimator manager.
Thread class encapsulation of pthreads.
Definition: thread.h:46
Fawkes library namespace.