Antares Simulator
Power System Simulator
Antares::Date::Calendar Class Referencefinal

Classes

struct  Settings
 The calendar settings. More...
 

Public Types

enum  { maxHoursInYear = 24 * 366 , maxDaysInYear = 366 , maxWeeksInYear = 54 }
 
using ShortString42 = Yuni::CString< 41, false >
 Short string representation with maximum 42 characters.
 
using ShortString12 = Yuni::CString< 11, false >
 Short string representation with maximum 12 characters.
 
using ShortString8 = Yuni::CString< 7, false >
 Short string representation with maximum 8 characters.
 

Public Attributes

struct {
   DayOfTheWeek   weekday
 Weekday.
 
   uint   dayYear
 The day year for a single hour in the year.
 
   uint   dayMonth
 The day in the month.
 
   uint   dayHour
 Hour in the day.
 
   uint   month
 Month.
 
   uint   week
 Week.
 
   bool   firstHourInDay
 First hour in the current day.
 
   bool   firstHourInMonth
 First hour in the current month.
 
hours [maxHoursInYear]
 informations about hours in the year according the current
 
struct {
   DayOfTheWeek   weekday
 Weekday.
 
   HourInterval   hours
 Hour interval.
 
   uint   month
 Month.
 
   uint   dayMonth
 Day in the month.
 
   uint   week
 Week.
 
days [maxDaysInYear]
 Informations about days in the year according the current.
 
struct {
   HourInterval   hours
 Hour interval.
 
   DayInterval   daysYear
 Days in the year.
 
   uint   days
 Total number of days of simulation for this week.
 
   uint   userweek
 User week number.
 
weeks [maxWeeksInYear]
 Informations about weeks according the current calendar settings. More...
 
struct {
   HourInterval   hours
 Hour interval.
 
   uint   days
 Number of days.
 
   DayInterval   daysYear
 Days in the year.
 
   DayOfTheWeek   firstWeekday
 Very First weekday of the month.
 
   MonthName   realmonth
 Real month index.
 
months [12+1]
 Informations about months according the current calendar settings. More...
 
struct {
   uint   months [12]
 Mapping for months index.
 
mapping
 Mappings between any expected calendar and our own calendar.
 
struct {
   struct {
      ShortString12   name
 Month name (January..December)
 
      ShortString8   shortName
 Short name (3 letters) and uppercase (Jan..Dec)
 
      ShortString8   shortUpperName
 Short name (3 letters) and uppercase (JAN..DEC)
 
   }   months [12]
 Caption for each month.
 
   ShortString42   hours [maxHoursInYear]
 Caption for each hour.
 
   ShortString42   daysYear [maxHoursInYear]
 Caption for each day.
 
   ShortString12   weekdays [7]
 Weekdays.
 
text
 Human string representations for any time interval of our calendar.
 
struct {
   std::wstring   hours [maxHoursInYear]
 
wtext
 

Constructor & Destructor

 Calendar ()
 Default constructor.
 
 ~Calendar ()
 Destructor.
 
void reset ()
 Reset the calendar from the given settings.
 
void reset (Settings settings)
 Reset the calendar from the given settings. More...
 
bool saveToCSVFile (const AnyString &filename) const
 Export the whole calendar into a CSV file. More...
 

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
maxHoursInYear 

The maximum number of hours in a year.

maxDaysInYear 

The maximum number of days in a year.

maxWeeksInYear 

The maximum number of weeks in a year.

Member Function Documentation

◆ reset()

void Antares::Date::Calendar::reset ( Settings  settings)

Reset the calendar from the given settings.

Reset the calendar from an instance of the class Parameters,

Parameters
parametersSimulation settings

◆ saveToCSVFile()

bool Antares::Date::Calendar::saveToCSVFile ( const AnyString &  filename) const

Export the whole calendar into a CSV file.

This method is mainly used for debug purposes

Member Data Documentation

◆ dayMonth

uint Antares::Date::Calendar::dayMonth

The day in the month.

Day in the month.

◆ days

uint Antares::Date::Calendar::days

Total number of days of simulation for this week.

Number of days.

◆ 

struct { ... } Antares::Date::Calendar::months[12 + 1]

Informations about months according the current calendar settings.

The index used here for months is not the standard one. The index 0 is settings.firstMonth (ex: september). The variable mapping.months must be used to get the real standard order.

◆ 

struct { ... } Antares::Date::Calendar::weeks[maxWeeksInYear]

Informations about weeks according the current calendar settings.

We may have 53 weeks within a year (even if not complete)


The documentation for this class was generated from the following files: