SwiUI::CTaskManagerImpl Class Reference

class SwiUI::CTaskManagerImpl : public CBase

TaskManagerImpl handles persistent and nonpersistent tasks in the subsystem. It can be used to make sure that critical tasks are executed even in case of fatal error such as power failure.

Since
3.0 SWInstTaskManagerImpl.lib

Inherits from

  • SwiUI::CTaskManagerImpl

Constructor & Destructor Documentation

CTaskManagerImpl()

CTaskManagerImpl()[private]

Constructor.

~CTaskManagerImpl()

~CTaskManagerImpl()[virtual]

Destructor.

Member Functions Documentation

AddTaskL(CTask *)

voidAddTaskL(CTask *aTask)
Adds a task to the task list.
Since
3.0

Parameters

CTask * aTask- Pointer to the CTask object. Transfers ownership to TaskManagerImpl.

CanBeFreed()

TBool CanBeFreed()
Indicates if no more clients have open instances and memory can be freed.
Since
3.0

CommitL()

voidCommitL()
Writes all persistent tasks from the task list to a persistent storage.
Since
3.0

ConstructL()

voidConstructL()[private]

2nd phase constructor.

CreateTaskDirL()

voidCreateTaskDirL()[private]
Creates the directory where persistent tasks are stored.
Since
3.0

DecreaseClientCount()

voidDecreaseClientCount()
Decrease the count of clients.
Since
3.0

DeleteTaskFilesL()

voidDeleteTaskFilesL()[private]
Deletes all tasks from persistent storage.
Since
3.0

ExecutePendingTasksL()

voidExecutePendingTasksL()
Executes all pending tasks that are added to the task list within the lifetime of this thread. In order to recover from fatal error, please use ExecutelRecoveryTasksL.
Since
3.0

ExecuteRecoveryTasksL()

voidExecuteRecoveryTasksL()
Executes all tasks from non persistent and persistent memory. This should be used to recover from fatal error e.g. power loss.
Since
3.0

FlushTasks()

voidFlushTasks()
Removes tasks from task list without executing them.
Since
3.0

GetFreeTaskIdL()

TInt GetFreeTaskIdL()[private]
Gets the next free id that can be assigned to a task.
Since
3.0 return Task id.

GetTaskDir(TDes &)

voidGetTaskDir(TDes &aFilePath)[private]
Gets the directory where persistent tasks are stored.
Since
3.0

Parameters

TDes & aFilePath- On return will contain the path.

GetTaskFilePath(TDes &, TInt)

voidGetTaskFilePath(TDes &aFilePath,
TIntaTaskId
)[private]
Gets the full path to the persistent task file.
Since
3.0

Parameters

TDes & aFilePath- On return will contain the path.
TInt aTaskId- Id of the task.

IncreaseClientCount()

voidIncreaseClientCount()
Increase the count of clients.
Since
3.0

NewL()

CTaskManagerImpl *NewL()[static]

Two-phased constructor.

PopulatePersistentTasksL()

voidPopulatePersistentTasksL()[private]
Reads all persistent task from storage and populates the task list.
Since
3.0

RemovePersistentTask(const CTask &)

voidRemovePersistentTask(const CTask &aTask)[private]
Removes task from persistent storage.
Since
3.0

Parameters

const CTask & aTask- Task to be removed.

RemoveTaskL(CTask *)

voidRemoveTaskL(CTask *aTask)
Removes a task from the task list.
Since
3.0

Parameters

CTask * aTask- Pointer to the CTask object.

Member Data Documentation

TUint iClientCount

TUint iClientCount[private]

RFs iRFs

RFs iRFs[private]

RPointerArray< CTask > iTaskList

RPointerArray< CTask >iTaskList[private]