Antares Simulator
Power System Simulator
houryear.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_TOOLBOX_FILTER_ALL_HOUR_YEAR_H__
22 #define __ANTARES_TOOLBOX_FILTER_ALL_HOUR_YEAR_H__
23 
24 #include "../filter.h"
25 
26 namespace Antares::Toolbox::Filter
27 {
28 class HourYear: public AFilterBase
29 {
30 public:
31  static const wxChar* Name()
32  {
33  return wxT("houryear");
34  }
35 
36  static const wxChar* Caption()
37  {
38  return wxT("Hour Year");
39  }
40 
41  static Date::Precision Precision()
42  {
43  return Date::hourly;
44  }
45 
46 public:
47  HourYear(Input* parent):
48  AFilterBase(parent)
49  {
50  operators.addStdArithmetic();
51  }
52 
53  virtual ~HourYear()
54  {
55  }
56 
57  virtual Date::Precision precision() const
58  {
59  return HourYear::Precision();
60  }
61 
62  virtual bool checkOnRowsLabels() const
63  {
64  return true;
65  }
66 
67  virtual const wxChar* name() const
68  {
69  return HourYear::Name();
70  }
71 
72  virtual const wxChar* caption() const
73  {
74  return HourYear::Caption();
75  }
76 
77  virtual bool rowIsValid(int row) const
78  {
79  return currentOperator->compute(row + 1);
80  }
81 
82 }; // class HourYear
83 
84 } // namespace Antares::Toolbox::Filter
85 
86 #endif // __ANTARES_TOOLBOX_FILTER_FILTER_H__
Abstract Filter.
Definition: filter.h:48
Operator::AOperator * currentOperator
The current selected operator for the filter.
Definition: filter.h:198
Operator::List operators
List of all possible operations for the filter.
Definition: filter.h:196
AFilterBase(Input *parent)
Default constructor.
Definition: filter.cpp:34
Definition: houryear.h:29
virtual const wxChar * name() const
Get the name of the filter.
Definition: houryear.h:67
virtual const wxChar * caption() const
Get the caption of the filter.
Definition: houryear.h:72
Definition: input.h:34