10 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
19 template <
typename>
class ICondition;
20 template <
typename>
class ITreeAlgorithm;
26 template <
typename>
class SmartPtr;
27 template <
typename T0>
using SharedPtr = System::SmartPtr<T0>;
51 static ASPOSE_TASKS_SHARED_API
void Apply(
const System::SharedPtr<Task>& root,
const System::SharedPtr<
ITreeAlgorithm<System::SharedPtr<Task>>>& alg, int32_t level);
58 static ASPOSE_TASKS_SHARED_API System::SharedPtr<Task>
Filter(
const System::SharedPtr<Task>& root,
const System::SharedPtr<
ICondition<System::SharedPtr<Task>>>& cond);
65 static ASPOSE_TASKS_SHARED_API System::SharedPtr<Task>
Find(
const System::SharedPtr<Task>& root,
const System::SharedPtr<
ICondition<System::SharedPtr<Task>>>& cond);
71 static ASPOSE_TASKS_SHARED_API int32_t
TaskChildrenCount(
const System::SharedPtr<Task>& task);
Represents a condition which can be used by filters or search methods.
Definition: ICondition.h:22
Represents an algorithm that can be applied to a tree of objects T .
Definition: ITreeAlgorithm.h:23
Helper class which provides useful operations with tasks.
Definition: TaskUtils.h:40
static System::SharedPtr< Task > Find(const System::SharedPtr< Task > &root, const System::SharedPtr< ICondition< System::SharedPtr< Task >>> &cond)
Finds a task which satisfy the condition in a tree of tasks.
static System::SharedPtr< Task > Filter(const System::SharedPtr< Task > &root, const System::SharedPtr< ICondition< System::SharedPtr< Task >>> &cond)
Builds new tree of tasks which satisfy the condition.
static int32_t TaskChildrenCount(const System::SharedPtr< Task > &task)
Recursively calculates a number of task's children tasks through all levels.
static void Apply(const System::SharedPtr< Task > &root, const System::SharedPtr< ITreeAlgorithm< System::SharedPtr< Task >>> &alg, int32_t level)
Applies specified algorithm to each task of a tree.