English Français

Documentation / Developer's manual

Available modules

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Launcher: TOutputFileFMU.h Source File
Uranie / Launcher v4.9.0
/* @license-end */
TOutputFileFMU.h
Go to the documentation of this file.
1
2// Copyright (C) 2013-2024 CEA/DES
3//
4// This program is free software: you can redistribute it and/or modify
5// it under the terms of the GNU Lesser General Public License as published
6// by the Free Software Foundation, either version 3 of the License, or any
7// later version.
8//
9// This program is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU Lesser General Public License for more details.
13//
14// You should have received a copy of the GNU Lesser General Public License
15// along with this program. If not, see <http://www.gnu.org/licenses/>.
17
34#ifndef TOutputFileFMU_H
35#define TOutputFileFMU_H
36
37// ROOT
38#include "Rtypes.h"
39#include "TString.h"
40#include "TList.h"
41#include "TArrayI.h"
42
43// URANIE
44#include "Launcher.h"
45#include "TOutputFile.h"
46
47// FMI
48#ifdef WIN32
49#include <Windows4Root.h>
50#endif
51#include "fmilib.h"
52
53#include <vector>
54
55namespace URANIE
56{
57namespace Launcher
58{
60{
61public:
62
63 //---------------------------------------------
67
71 TOutputFileFMU(TString str);
73 virtual ~TOutputFileFMU();
75
76 // Public attribute accessor methods
77 //
78 //---------------------------------------------
82
84 {
85 FUNCT_TRACE();
86 return _nOutputVector;
87 }
89 {
90 FUNCT_TRACE();
91 if (_blog)
92 cout << " *** method TOutputFileFMU::" << __func__ << " array size[" << _lstOfVector->GetSize() << "]" << endl;
93 return _lstOfVector;
94 }
96
97 //---------------------------------------------
101
106 void addAttribute(URANIE::DataServer::TAttribute* att, TString sKey = "");
111 void addAttribute(TString sname, TString sKey = "");
112
113
114 void searchIndexeOutputAttribute(URANIE::DataServer::TAttribute* attOutput);
115
117
118 void setVectorValues(vector<vector<double>> vvd)
119 {
120 _vecOutputs = vvd;
121// cout << " **** Method TOutputFileFMU::" << __func__ << " with vector size[" << _vecOutputs.size()<< "]"
122// " AND item 0 size[" << _vecOutputs[0].size() << "]" << endl;
123 }
124
125
126
128
129 //---------------------------------------------
133
134 Bool_t searchOutput(Int_t &n, Double_t *val, TList *lstOut = NULL);
136 Bool_t searchOutput(vector<URANIE::DataServer::UEntry*> *out);
138
139 //---------------------------------------------
143
144 void setFMU1Import( fmi1_import_t* crtFMU1Import);
145
146 void setFMU2Import( fmi2_import_t* crtFMU2Import);
147
148 void setFMUVersion(fmi_version_enu_t theFMUVersion)
149 {
150 _sVersion = theFMUVersion;
151 }
152
153
154 void printLog(Option_t *option = "");
156
157 //---------------------------------------------
162protected:
163 TString _spwd;
164 // FMI structures
165 fmi_version_enu_t _sVersion;
166 fmi1_import_t* _fmi1Import;
167 fmi2_import_t* _fmi2Import;
168
171 TArrayI *_lstOfVector;
172 vector<vector<double>> _vecOutputs;
173
174 // FMI General informations
175
177
178
179
180
181 ClassDef(URANIE::Launcher::TOutputFileFMU, ID_LAUNCHER)
182 // End of Class
183};
184
185} // End of namespace Launcher
186} // End of namespace URANIE
187
188#endif // TInputFileFMU_H
189// End of File
Interface of the class URANIE::Launcher::TOutputFile.
Bool_t _blog
Boolean for edit the log.
Definition TCodeFile.h:76
Description of the class TOutputFileFMU.
Definition TOutputFileFMU.h:60
void searchIndexeOutputAttribute(URANIE::DataServer::TAttribute *attOutput)
void addAttribute(TString sname, TString sKey="")
fmi1_import_t * _fmi1Import
The FMU 1.0 Object.
Definition TOutputFileFMU.h:166
Bool_t searchOutput(vector< URANIE::DataServer::UEntry * > *out)
Looking for output using a map to be able to cope with vectors/strings.
TOutputFileFMU(TString str)
Default constructor.
TArrayI * _lstOfVector
The list of RV for kVectors.
Definition TOutputFileFMU.h:171
void addAttribute(URANIE::DataServer::TAttribute *att, TString sKey="")
Add the attribute in the file.
void setFMU2Import(fmi2_import_t *crtFMU2Import)
TString _spwd
The relative path to suppress.
Definition TOutputFileFMU.h:163
vector< vector< double > > _vecOutputs
the vector of stored kVector attributes
Definition TOutputFileFMU.h:172
Int_t _nOutputVector
the number of Output which is kVector
Definition TOutputFileFMU.h:169
Int_t _nCrtOutputVector
the curent number of Output which is kVector
Definition TOutputFileFMU.h:170
Int_t getNOutputVector()
Definition TOutputFileFMU.h:83
Bool_t searchOutput(Int_t &n, Double_t *val, TList *lstOut=NULL)
Looking for output usindouble only and transmitting matrix (not used by launcher anymore)
void printLog(Option_t *option="")
void setFMUVersion(fmi_version_enu_t theFMUVersion)
Definition TOutputFileFMU.h:148
virtual ~TOutputFileFMU()
Default destructor.
void setFMU1Import(fmi1_import_t *crtFMU1Import)
void setVectorValues(vector< vector< double > > vvd)
Definition TOutputFileFMU.h:118
fmi_version_enu_t _sVersion
The FMU version.
Definition TOutputFileFMU.h:165
fmi2_import_t * _fmi2Import
The FMU 2.0 Object.
Definition TOutputFileFMU.h:167
TArrayI * getListOutputVector()
Definition TOutputFileFMU.h:88
Description of the class TOutputFile.
Definition TOutputFile.h:85
Definition TCluster.h:67