Aspose.Tasks for C++
ByMonthWeekDayRepetition.h
1 #pragma once
2 //-----------------------------------------------------------------------
3 // <copyright file="ByMonthWeekDayRepetition.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/months/MonthlyRepetitionBase.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 OrdinalNumber;
17 class RecurrencePatternValidatorBase;
18 } // namespace Tasks
19 } // namespace Aspose
20 namespace System
21 {
22 enum class DayOfWeek;
23 } // namespace System
24 
25 namespace Aspose {
26 
27 namespace Tasks {
28 
29 /// <summary>
30 /// Represents a pattern which is based on the position of weekday in a month.
31 /// </summary>
32 class ASPOSE_TASKS_SHARED_CLASS ByMonthWeekDayRepetition : public Aspose::Tasks::MonthlyRepetitionBase
33 {
34  typedef ByMonthWeekDayRepetition ThisType;
35  typedef Aspose::Tasks::MonthlyRepetitionBase BaseType;
36 
37  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
38  ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
39 
40 public:
41 
42  /// <summary>
43  /// Gets a type of weekday on which the task must be recurring.
44  /// </summary>
45  ASPOSE_TASKS_SHARED_API System::DayOfWeek get_WeekDay() const;
46  /// <summary>
47  /// Sets a type of weekday on which the task must be recurring.
48  /// </summary>
49  ASPOSE_TASKS_SHARED_API void set_WeekDay(System::DayOfWeek value);
50  /// <summary>
51  /// Gets a position of weekday in a month on which the task must be recurring.
52  /// </summary>
53  ASPOSE_TASKS_SHARED_API OrdinalNumber get_Position() const;
54  /// <summary>
55  /// Sets a position of weekday in a month on which the task must be recurring.
56  /// </summary>
57  ASPOSE_TASKS_SHARED_API void set_Position(OrdinalNumber value);
58 
59  /// <summary>
60  /// Initializes a new instance of the <see cref="ByMonthWeekDayRepetition"></see> class.
61  /// </summary>
62  // ReSharper disable once EmptyConstructor
63  ASPOSE_TASKS_SHARED_API ByMonthWeekDayRepetition();
64 
65 protected:
66 
67  ASPOSE_TASKS_SHARED_API System::SharedPtr<RecurrencePatternValidatorBase> GetValidatorInternal(System::SharedPtr<Calendar> calendar) override;
68  #ifdef ASPOSE_GET_SHARED_MEMBERS
69  ASPOSE_TASKS_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
70  #endif
71 
72 
73 private:
74 
75  System::DayOfWeek pr_WeekDay;
76  OrdinalNumber pr_Position;
77 
78 };
79 
80 } // namespace Tasks
81 } // namespace Aspose
82 
83 
Represents a pattern which is based on the position of weekday in a month.
Definition: ByMonthWeekDayRepetition.h:33
ByMonthWeekDayRepetition()
Initializes a new instance of the ByMonthWeekDayRepetition class.
void set_WeekDay(System::DayOfWeek value)
Sets a type of weekday on which the task must be recurring.
System::DayOfWeek get_WeekDay() const
Gets a type of weekday on which the task must be recurring.
OrdinalNumber get_Position() const
Gets a position of weekday in a month on which the task must be recurring.
void set_Position(OrdinalNumber value)
Sets a position of weekday in a month on which the task must be recurring.
Represents a base pattern for monthly day position.
Definition: MonthlyRepetitionBase.h:40
Definition: Asn.h:13