Antares Simulator
Power System Simulator
inspector.h
1 /*
2  * Copyright 2007-2025, RTE (https://www.rte-france.com)
3  * See AUTHORS.txt
4  * SPDX-License-Identifier: MPL-2.0
5  * This file is part of Antares-Simulator,
6  * Adequacy and Performance assessment for interconnected energy networks.
7  *
8  * Antares_Simulator is free software: you can redistribute it and/or modify
9  * it under the terms of the Mozilla Public Licence 2.0 as published by
10  * the Mozilla Foundation, either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * Antares_Simulator 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  * Mozilla Public Licence 2.0 for more details.
17  *
18  * You should have received a copy of the Mozilla Public Licence 2.0
19  * along with Antares_Simulator. If not, see <https://opensource.org/license/mpl-2-0/>.
20  */
21 #ifndef __ANTARES_WINDOWS_INSPECTOR_INSPECTOR_H__
22 #define __ANTARES_WINDOWS_INSPECTOR_INSPECTOR_H__
23 
24 #include <yuni/yuni.h>
25 #include <antares/study/study.h>
26 #include "antares/study/binding_constraint/BindingConstraintsRepository.h"
27 
28 namespace Antares::Window::Inspector
29 {
31 
32 
35 void Refresh();
36 
40 void Show();
41 
45 void Hide();
46 
50 void Destroy();
51 
55 void Unselect();
57 
59 
62 void SelectArea(const Data::Area* area);
63 
67 void SelectAreas(const Data::Area::Vector& areas);
68 
72 void AddArea(const Data::Area* area);
73 
77 void AddAreas(const Data::Area::Vector& list);
78 
82 void AddAreas(const Data::Area::Set& list);
83 
87 void RemoveArea(const Data::Area* area);
89 
91 
92 
95 void SelectLink(const Data::AreaLink* lnk);
96 
100 void SelectLinks(const Data::AreaLink::Vector& lnks);
101 
105 void AddLink(const Data::AreaLink* link);
106 
110 void AddLinks(const Data::AreaLink::Vector& links);
111 
115 void AddLinks(const Data::AreaLink::Set& links);
116 
120 const Data::AreaLink::Set& getLinks();
121 
125 void RemoveLink(const Data::AreaLink* link);
127 
129 
130 
133 void SelectThermalCluster(const Data::ThermalCluster* cluster);
134 
138 void AddThermalClusters(const Data::ThermalCluster::Vector& clusters);
142 void RemoveThermalCluster(const Data::ThermalCluster* cluster);
144 
146 
147 
150 void SelectRenewableCluster(const Data::RenewableCluster* cluster);
151 
155 void RemoveRenewableCluster(const Data::RenewableCluster* cluster);
156 
160 void AddBindingConstraints(const Data::BindingConstraint::Set& set);
161 
163 
164 
167 uint SelectionAreaCount();
168 
172 uint SelectionLinksCount();
173 
177 uint SelectionThermalClusterCount();
178 
182 uint SelectionBindingConstraintCount();
183 
187 uint SelectionTotalCount();
188 
192 bool isAreaSelected(Antares::Data::AreaName name);
193 bool AreasSelected(const Data::Area::NameSet& set,
194  std::map<Antares::Data::AreaName, Antares::Data::AreaName>& nameMap);
195 
196 bool isConstraintSelected(const Yuni::String& constraintName);
197 bool ConstraintsSelected(const std::set<Yuni::String>& set);
198 
199 bool IsLinkSelected(const Data::AreaName& from, const Data::AreaName& with);
200 bool LinksSelected(std::map<Data::AreaName, std::map<Data::AreaName, bool>>& set);
201 
202 void FirstSelectedArea(Data::AreaName& out);
203 
204 void FirstSelectedAreaLink(Data::AreaLink** link);
206 
208 
209 
214 uint CopyToClipboard();
216 
217 } // namespace Antares::Window::Inspector
218 
219 #endif // __ANTARES_WINDOWS_INSPECTOR_INSPECTOR_H__
Definition for a single area.
Definition: area.h:51
std::set< std::shared_ptr< BindingConstraint >, CompareBindingConstraintName > Set
Ordered Set of binding constraints.
Definition: BindingConstraint.h:88
Definition: cluster.h:40
A single thermal cluster.
Definition: cluster.h:76
std::vector< Data::ThermalCluster * > Vector
Vector of thermal clusters.
Definition: cluster.h:85