Aspose.Tasks for C++
ByYearWeekDayRepetition.h
1 #pragma once
2 //-----------------------------------------------------------------------
3 // <copyright file="ByYearWeekDayRepetition.cs" company="Aspose Pty Ltd">
4 // Copyright (c) 2002-2024 Aspose Pty Ltd. All Rights Reserved.
5 // </copyright>
6 //-----------------------------------------------------------------------
7 
8 #include "aspose.tasks.cpp/Recurring/years/YearlyRepetitionBase.h"
9 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
10 
11 namespace Aspose
12 {
13 namespace Tasks
14 {
15 class Calendar;
16 enum class Month;
17 enum class OrdinalNumber;
18 class RecurrencePatternValidatorBase;
19 } // namespace Tasks
20 } // namespace Aspose
21 namespace System
22 {
23 enum class DayOfWeek;
24 } // namespace System
25 
26 namespace Aspose {
27 
28 namespace Tasks {
29 
30 /// <summary>
31 /// Represents a pattern which is based on position of a weekday in a month.
32 /// </summary>
33 class ASPOSE_TASKS_SHARED_CLASS ByYearWeekDayRepetition : public Aspose::Tasks::YearlyRepetitionBase
34 {
35  typedef ByYearWeekDayRepetition ThisType;
36  typedef Aspose::Tasks::YearlyRepetitionBase BaseType;
37 
38  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
39  ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
40 
41 public:
42 
43  /// <summary>
44  /// Gets a type of week day on which the task must be recurring.
45  /// </summary>
46  ASPOSE_TASKS_SHARED_API System::DayOfWeek get_WeekDay() const;
47  /// <summary>
48  /// Sets a type of week day on which the task must be recurring.
49  /// </summary>
50  ASPOSE_TASKS_SHARED_API void set_WeekDay(System::DayOfWeek value);
51  /// <summary>
52  /// Gets a month on which the task must be recurring.
53  /// </summary>
54  ASPOSE_TASKS_SHARED_API Aspose::Tasks::Month get_Month() const;
55  /// <summary>
56  /// Sets a month on which the task must be recurring.
57  /// </summary>
58  ASPOSE_TASKS_SHARED_API void set_Month(Aspose::Tasks::Month value);
59  /// <summary>
60  /// Gets a position of the day in a week of a month on which the task must be recurring.
61  /// </summary>
62  ASPOSE_TASKS_SHARED_API OrdinalNumber get_Position() const;
63  /// <summary>
64  /// Sets a position of the day in a week of a month on which the task must be recurring.
65  /// </summary>
66  ASPOSE_TASKS_SHARED_API void set_Position(OrdinalNumber value);
67 
68  /// <summary>
69  /// Initializes a new instance of the <see cref="ByYearWeekDayRepetition"></see> class.
70  /// </summary>
71  // ReSharper disable once EmptyConstructor
72  ASPOSE_TASKS_SHARED_API ByYearWeekDayRepetition();
73 
74 protected:
75 
76  ASPOSE_TASKS_SHARED_API System::SharedPtr<RecurrencePatternValidatorBase> GetValidatorInternal(System::SharedPtr<Calendar> calendar) override;
77  #ifdef ASPOSE_GET_SHARED_MEMBERS
78  ASPOSE_TASKS_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
79  #endif
80 
81 
82 private:
83 
84  System::DayOfWeek pr_WeekDay;
85  Aspose::Tasks::Month pr_Month;
86  OrdinalNumber pr_Position;
87 
88 };
89 
90 } // namespace Tasks
91 } // namespace Aspose
92 
93 
Represents a pattern which is based on position of a weekday in a month.
Definition: ByYearWeekDayRepetition.h:34
ByYearWeekDayRepetition()
Initializes a new instance of the ByYearWeekDayRepetition class.
void set_Position(OrdinalNumber value)
Sets a position of the day in a week of a month on which the task must be recurring.
OrdinalNumber get_Position() const
Gets a position of the day in a week of a month on which the task must be recurring.
void set_Month(Aspose::Tasks::Month value)
Sets a month on which the task must be recurring.
System::DayOfWeek get_WeekDay() const
Gets a type of week day on which the task must be recurring.
void set_WeekDay(System::DayOfWeek value)
Sets a type of week day on which the task must be recurring.
Aspose::Tasks::Month get_Month() const
Gets a month on which the task must be recurring.
Represents a base pattern for yearly day position.
Definition: YearlyRepetitionBase.h:38
Definition: Asn.h:13