3D-ICE 3.0.0
analysis.h
Go to the documentation of this file.
1/******************************************************************************
2 * This file is part of 3D-ICE, version 3.1.0 . *
3 * *
4 * 3D-ICE is free software: you can redistribute it and/or modify it under *
5 * the terms of the GNU General Public License as published by the Free *
6 * Software Foundation, either version 3 of the License, or any later *
7 * version. *
8 * *
9 * 3D-ICE is distributed in the hope that it will be useful, but WITHOUT *
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
12 * more details. *
13 * *
14 * You should have received a copy of the GNU General Public License along *
15 * with 3D-ICE. If not, see <http://www.gnu.org/licenses/>. *
16 * *
17 * Copyright (C) 2021 *
18 * Embedded Systems Laboratory - Ecole Polytechnique Federale de Lausanne *
19 * All Rights Reserved. *
20 * *
21 * Authors: Arvind Sridhar Alessandro Vincenzi *
22 * Giseong Bak Martino Ruggiero *
23 * Thomas Brunschwiler Eder Zulian *
24 * Federico Terraneo Darong Huang *
25 * Luis Costero Marina Zapater *
26 * David Atienza *
27 * *
28 * For any comment, suggestion or request about 3D-ICE, please register and *
29 * write to the mailing list (see http://listes.epfl.ch/doc.cgi?liste=3d-ice) *
30 * Any usage of 3D-ICE for research, commercial or other purposes must be *
31 * properly acknowledged in the resulting products or publications. *
32 * *
33 * EPFL-STI-IEL-ESL Mail : 3d-ice@listes.epfl.ch *
34 * Batiment ELG, ELG 130 (SUBSCRIPTION IS NECESSARY) *
35 * Station 11 *
36 * 1015 Lausanne, Switzerland Url : http://esl.epfl.ch/3d-ice *
37 ******************************************************************************/
38
39#ifndef _3DICE_ANALYSIS_H_
40#define _3DICE_ANALYSIS_H_
41
44#ifdef __cplusplus
45extern "C"
46{
47#endif
48
49/******************************************************************************/
50
51#include <stdio.h> // For the file type FILE
52
53#include "types.h"
54#include "string_t.h"
55
56/******************************************************************************/
57
65 {
69
73
77
81
85
89 } ;
90
93 typedef struct Analysis_t Analysis_t;
94
95
96
97/******************************************************************************/
98
99
100
106 void analysis_init (Analysis_t *analysis) ;
107
108
109
118 void analysis_copy (Analysis_t *dst, Analysis_t *src) ;
119
120
121
130 void analysis_destroy (Analysis_t *analysis) ;
131
132
133
143 Analysis_t *analysis_calloc ( void ) ;
144
145
146
157
158
159
171 void analysis_free (Analysis_t *analysis) ;
172
173
174
183 void analysis_print (Analysis_t *analysis, FILE *stream, String_t prefix) ;
184
185
186
194
195
196
202 void increase_by_step_time (Analysis_t *analysis) ;
203
204
205
216 bool slot_completed (Analysis_t *analysis) ;
217
218
219/******************************************************************************/
220
221#ifdef __cplusplus
222}
223#endif
224
225#endif /* _3DICE_ANALYSIS_H_ */
void analysis_init(Analysis_t *analysis)
Definition: analysis.c:45
void analysis_free(Analysis_t *analysis)
void analysis_copy(Analysis_t *dst, Analysis_t *src)
Definition: analysis.c:57
void increase_by_step_time(Analysis_t *analysis)
Definition: analysis.c:152
void analysis_print(Analysis_t *analysis, FILE *stream, String_t prefix)
Definition: analysis.c:123
Time_t get_simulated_time(Analysis_t *analysis)
Definition: analysis.c:144
bool slot_completed(Analysis_t *analysis)
Definition: analysis.c:159
Analysis_t * analysis_clone(Analysis_t *analysis)
Definition: analysis.c:93
void analysis_destroy(Analysis_t *analysis)
Definition: analysis.c:71
Analysis_t * analysis_calloc(void)
Definition: analysis.c:80
char * String_t
Definition: string_t.h:55
Informations about the type of thermal simulation to be run, timing and its initial settings.
Definition: analysis.h:65
AnalysisType_t AnalysisType
Definition: analysis.h:68
Quantity_t CurrentTime
Definition: analysis.h:84
Time_t StepTime
Definition: analysis.h:72
Time_t SlotTime
Definition: analysis.h:76
Quantity_t SlotLength
Definition: analysis.h:80
Temperature_t InitialTemperature
Definition: analysis.h:88
double Time_t
Definition: types.h:65
double Temperature_t
Definition: types.h:71
AnalysisType_t
Definition: types.h:455
uint32_t Quantity_t
Definition: types.h:59