PandA-2024.02
evaluation_base_step.hpp
Go to the documentation of this file.
1 /*
2  *
3  * _/_/_/ _/_/ _/ _/ _/_/_/ _/_/
4  * _/ _/ _/ _/ _/_/ _/ _/ _/ _/ _/
5  * _/_/_/ _/_/_/_/ _/ _/_/ _/ _/ _/_/_/_/
6  * _/ _/ _/ _/ _/ _/ _/ _/ _/
7  * _/ _/ _/ _/ _/ _/_/_/ _/ _/
8  *
9  * ***********************************************
10  * PandA Project
11  * URL: http://panda.dei.polimi.it
12  * Politecnico di Milano - DEIB
13  * System Architectures Group
14  * ***********************************************
15  * Copyright (C) 2004-2024 Politecnico di Milano
16  *
17  * This file is part of the PandA framework.
18  *
19  * The PandA framework is free software; you can redistribute it and/or modify
20  * it under the terms of the GNU General Public License as published by
21  * the Free Software Foundation; either version 3 of the License, or
22  * (at your option) any later version.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License
30  * along with this program. If not, see <http://www.gnu.org/licenses/>.
31  *
32  */
40 #ifndef EVALUATION_BASE_STEP_HPP
41 #define EVALUATION_BASE_STEP_HPP
42 
44 #include "hls_step.hpp"
45 
50 {
51  protected:
53  std::vector<DesignFlowStepRef> cost_functions;
54 
56  std::vector<HLSFlowStep_Type> cost_function_list;
57 
59  std::vector<double> evaluations;
60 
61  public:
70  const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type);
71 
75  ~EvaluationBaseStep() override;
76 
81  bool HasToBeExecuted() const override;
82 
86  const std::vector<double>& GetEvaluations() const;
87 };
88 #endif
const HLS_managerRef HLSMgr
information about all the HLS synthesis
Definition: hls_step.hpp:205
~EvaluationBaseStep() override
Destructor.
const std::vector< double > & GetEvaluations() const
Returns the results of the evaluation.
std::vector< DesignFlowStepRef > cost_functions
List of steps performing evaluations.
const HLSFlowStep_Type hls_flow_step_type
The type of this step.
Definition: hls_step.hpp:208
HLSFlowStep_Type
Definition: hls_step.hpp:95
const Wrefcount< const DesignFlowManager > design_flow_manager
The design flow manager.
const ParameterConstRef parameters
Set of input parameters.
std::vector< HLSFlowStep_Type > cost_function_list
List of objectives that have to be evaluated.
bool HasToBeExecuted() const override
Check if this step has actually to be executed.
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
Definition: refcount.hpp:94
std::vector< double > evaluations
store the result of the evaluation
Superclass include.
EvaluationBaseStep(const ParameterConstRef parameters, const HLS_managerRef HLSMgr, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type)
Constructor.

Generated on Mon Feb 12 2024 13:02:53 for PandA-2024.02 by doxygen 1.8.13