8 #include <system/collections/list.h>
9 #include <system/collections/ilist.h>
10 #include <system/array.h>
13 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
19 enum class BaselineType;
20 namespace Calculations
22 class TaskCostCalculator;
23 class TaskVarianceCalculator;
24 class TaskWorkCalculator;
26 namespace Connectivity
28 class MpdTaskBaselineMapper;
30 class MspTaskBaseLineMapper;
37 class HtmlTaskBaseLineTableReader;
41 class MPP14As9TaskReader;
46 class MppBaselineWriter;
55 class ProjectTasksMapper;
71 class TimephasedWorkCostSelector;
76 class TaskFieldToValue;
87 template <
typename>
class IEnumerable;
88 template <
typename>
class IEnumerator;
100 class ASPOSE_TASKS_SHARED_CLASS
TaskBaselineCollection :
public System::Collections::Generic::IList<System::SharedPtr<Aspose::Tasks::TaskBaseline>>
103 typedef System::Collections::Generic::IList<System::SharedPtr<Aspose::Tasks::TaskBaseline>> BaseType;
105 typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
106 ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
108 friend class Aspose::Tasks::Calculations::TaskCostCalculator;
109 friend class Aspose::Tasks::Calculations::TaskVarianceCalculator;
110 friend class Aspose::Tasks::Calculations::TaskWorkCalculator;
111 friend class Aspose::Tasks::IO::MSProject::Writers::MppBaselineWriter;
113 friend class Aspose::Tasks::EVCalculator;
114 friend class Aspose::Tasks::Connectivity::MpdTaskBaselineMapper;
115 friend class Aspose::Tasks::Connectivity::MpdTaskMapper;
116 friend class Aspose::Tasks::Connectivity::MspTaskBaseLineMapper;
117 friend class Aspose::Tasks::IO::Html::HtmlTaskBaseLineTableReader;
118 friend class Aspose::Tasks::IO::MSProject::MPPTaskReader;
119 friend class Aspose::Tasks::IO::MSProject::MPP14As9TaskReader;
120 friend class Aspose::Tasks::IO::MSProject::MPP9TaskReader;
121 friend class Aspose::Tasks::IO::Pwa::InternalApi::Mapping::ProjectTasksMapper;
122 friend class Aspose::Tasks::IO::Xml::TaskNodeReader;
123 friend class Aspose::Tasks::ProjectState;
124 friend class Aspose::Tasks::Saving::TemplateWriter;
125 friend class Aspose::Tasks::TimephasedWorkCostSelector;
126 friend class Aspose::Tasks::Util::Fields::TaskFieldToValue;
132 using iterator =
typename iterator_holder_type::iterator;
145 ASPOSE_TASKS_SHARED_API int32_t get_Count()
const override;
152 ASPOSE_TASKS_SHARED_API System::SharedPtr<TaskBaseline> idx_get(int32_t index)
const override;
158 ASPOSE_TASKS_SHARED_API
void idx_set(int32_t index, System::SharedPtr<TaskBaseline> value)
override;
164 ASPOSE_TASKS_SHARED_API System::SharedPtr<System::Collections::Generic::IEnumerator<System::SharedPtr<TaskBaseline>>> GetEnumerator()
override;
169 ASPOSE_TASKS_SHARED_API
void Add(
const System::SharedPtr<TaskBaseline>& item)
override;
175 ASPOSE_TASKS_SHARED_API
bool Remove(
const System::SharedPtr<TaskBaseline>& item)
override;
180 ASPOSE_TASKS_SHARED_API System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<TaskBaseline>>> ToList();
183 ASPOSE_TASKS_SHARED_API
iterator begin() noexcept;
186 ASPOSE_TASKS_SHARED_API
iterator end() noexcept;
224 ASPOSE_TASKS_SHARED_API MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(
TaskBaselineCollection, CODEPORTING_ARGS());
228 ASPOSE_TASKS_SHARED_API MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(
TaskBaselineCollection, CODEPORTING_ARGS(const System::SharedPtr<System::Collections::Generic::IEnumerable<System::SharedPtr<
TaskBaseline>>>& baselines));
229 ASPOSE_TASKS_SHARED_API
void Sort();
230 ASPOSE_TASKS_SHARED_API
void RemoveByType(BaselineType baselineType);
231 ASPOSE_TASKS_SHARED_API System::SharedPtr<
TaskBaseline> GetByType(BaselineType baselineType);
232 ASPOSE_TASKS_SHARED_API
void AddInternal(const System::SharedPtr<
TaskBaseline>& baseline);
236 #ifdef ASPOSE_GET_SHARED_MEMBERS
237 ASPOSE_TASKS_SHARED_API
void GetSharedMembers(System::Object::shared_members_type& result)
const override;
243 System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<TaskBaseline>>> baselines;
245 bool get_IsReadOnly()
const override;
247 int32_t IndexOf(
const System::SharedPtr<TaskBaseline>& item)
const override;
248 void Insert(int32_t index,
const System::SharedPtr<TaskBaseline>& item)
override;
249 void RemoveAt(int32_t index)
override;
250 void Clear()
override;
251 bool Contains(
const System::SharedPtr<TaskBaseline>& item)
const override;
252 void CopyTo(System::ArrayPtr<System::SharedPtr<TaskBaseline>> array, int32_t arrayIndex)
override;