Antares Simulator
Power System Simulator
FileWriter.h
1 // Copyright 2007-2025, RTE (https://www.rte-france.com)
2 // See AUTHORS.txt
3 // SPDX-License-Identifier: MPL-2.0
4 // This file is part of Antares-Simulator,
5 // Adequacy and Performance assessment for interconnected energy networks.
6 //
7 // Antares_Simulator is free software: you can redistribute it and/or modify
8 // it under the terms of the Mozilla Public Licence 2.0 as published by
9 // the Mozilla Foundation, either version 2 of the License, or
10 // (at your option) any later version.
11 //
12 // Antares_Simulator is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // Mozilla Public Licence 2.0 for more details.
16 //
17 // You should have received a copy of the Mozilla Public Licence 2.0
18 // along with Antares_Simulator. If not, see <https://opensource.org/license/mpl-2-0/>.
19 
20 #pragma once
21 #include <filesystem>
22 
23 #include "modeler/include/antares/solver/modeler/IWriter.h"
24 
26 {
27 class ILinearProblem;
28 class ILinearProblemData;
29 class FillContext;
30 } // namespace Antares::Optimisation::LinearProblemApi
31 
32 namespace Antares::Optimization
33 {
34 class VariableDictionary;
35 }
36 
37 namespace Antares::ModelerStudy::SystemModel
38 {
39 class Component;
40 }
41 
42 namespace Antares::Modeler
43 {
45 {
46 public:
47  void init(const std::string& simulationId) override;
48 
49  void writeSimulationTable(
52  const Data& modelerData,
53  const Optimisation::OptimEntityContainer& variableContainer,
54  const Optimisation::LinearProblemApi::FillContext& fillContext) const override;
55  explicit FileWriter(std::filesystem::path path);
56 
57  const std::filesystem::path& outputPath() const;
58 
59 private:
60  const std::filesystem::path studyPath_;
61  std::filesystem::path outputPath_;
62  std::string simulationId_;
63 };
64 } // namespace Antares::Modeler
Definition: FileWriter.h:45
Context for filling linear problem data. Contains temporal information.
Definition: ILinearProblemData.h:35
Definition: OptimEntityContainer.h:46
Definition: IWriter.h:59
Namespace for the classes related to the linear problem API.
Definition: SimulationTableGenerator.h:41
Definition: data.h:38