Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
column.h
1/*
2** Copyright 2007-2024, 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
22#pragma once
23
24#include <vector>
25#include <wx/string.h>
26#include <antares/study/fwd.h>
27
28namespace Antares
29{
30namespace Component
31{
32namespace Datagrid
33{
34namespace Renderer
35{
36class Cell;
37
38// -------------------
39// Base column class
40// -------------------
41class Column
42{
43public:
44 Column(Antares::Data::TimeSeriesType ts, const wxString& caption);
45 virtual ~Column();
46 Cell* getLine(int y) const;
47 int getNumberOfLines() const;
48 wxString getCaption() const;
49
50protected:
51 std::vector<Cell*> cells_;
52 Antares::Data::TimeSeriesType tsKind_;
53 wxString caption_;
54};
55
56// -------------------
57// Classic column
58// -------------------
59class classicColumn final : public Column
60{
61public:
62 classicColumn(Antares::Data::TimeSeriesType ts, const wxString& caption);
63 ~classicColumn() override = default;
64};
65
66// -------------------
67// Thermal column
68// -------------------
69class thermalColumn final : public Column
70{
71public:
73};
74
75// -----------------------------
76// Renewable clusters column
77// -----------------------------
78class ColumnRenewableClusters final : public Column
79{
80public:
82 ~ColumnRenewableClusters() override = default;
83};
84
85// -------------------------------
86// Column for NTC
87// -------------------------------
88class ColumnNTC final : public Column
89{
90public:
91 ColumnNTC();
92 ~ColumnNTC() override = default;
93};
94} // namespace Renderer
95} // namespace Datagrid
96} // namespace Component
97} // namespace Antares