Pacm module

InstallMonitor

Aggregates multiple install tasks and reports overall progress.

#include <icy/pacm/installmonitor.h>

class InstallMonitor

Defined in src/pacm/include/icy/pacm/installmonitor.h:27

Public Attributes

ReturnNameDescription
ThreadSignal< void(InstallTask &, const InstallationState &, const InstallationState &)>InstallStateChangeProxies state change events from managed packages.
ThreadSignal< void(LocalPackage &)>InstallCompleteSignals when a managed install task completes.
ThreadSignal< void(int &)>ProgressSignals on overall progress update [0-100].
ThreadSignal< void(LocalPackageVec &)>CompleteSignals on all tasks complete.

InstallStateChange

ThreadSignal< void(InstallTask &, const InstallationState &, const InstallationState &)> InstallStateChange

Type: ThreadSignal< void(InstallTask &, const InstallationState &, const InstallationState &)>

Defined in src/pacm/include/icy/pacm/installmonitor.h:60

Proxies state change events from managed packages.


InstallComplete

ThreadSignal< void(LocalPackage &)> InstallComplete

Type: ThreadSignal< void(LocalPackage &)>

Defined in src/pacm/include/icy/pacm/installmonitor.h:63

Signals when a managed install task completes.


Progress

ThreadSignal< void(int &)> Progress

Type: ThreadSignal< void(int &)>

Defined in src/pacm/include/icy/pacm/installmonitor.h:66

Signals on overall progress update [0-100].


Complete

ThreadSignal< void(LocalPackageVec &)> Complete

Type: ThreadSignal< void(LocalPackageVec &)>

Defined in src/pacm/include/icy/pacm/installmonitor.h:69

Signals on all tasks complete.

Public Methods

ReturnNameDescription
InstallMonitor
~InstallMonitor virtual noexcept
InstallMonitorDeleted constructor.
InstallMonitor &operator=Deleted assignment operator.
InstallMonitorDeleted constructor.
InstallMonitor &operator=Deleted assignment operator.
voidaddTask virtualAdds a task to monitor.
voidstartAll virtualStarts all monitored tasks.
voidcancelAll virtualCancels all monitored tasks.
boolisComplete virtual constReturns true if all install tasks have completed, either successfully or unsuccessfully.
InstallTaskPtrVectasks virtual constReturns the list of monitored package tasks.
LocalPackageVecpackages virtual constReturns the list of monitored packages.

InstallMonitor

InstallMonitor()

Defined in src/pacm/include/icy/pacm/installmonitor.h:30


~InstallMonitor

virtual noexcept

virtual ~InstallMonitor() noexcept

Defined in src/pacm/include/icy/pacm/installmonitor.h:31


InstallMonitor

InstallMonitor(const InstallMonitor &) = delete

Defined in src/pacm/include/icy/pacm/installmonitor.h:33

Deleted constructor.


operator=

InstallMonitor & operator=(const InstallMonitor &) = delete

Defined in src/pacm/include/icy/pacm/installmonitor.h:34

Deleted assignment operator.


InstallMonitor

InstallMonitor(InstallMonitor &&) = delete

Defined in src/pacm/include/icy/pacm/installmonitor.h:35

Deleted constructor.


operator=

InstallMonitor & operator=(InstallMonitor &&) = delete

Defined in src/pacm/include/icy/pacm/installmonitor.h:36

Deleted assignment operator.


addTask

virtual

virtual void addTask(InstallTask::Ptr task)

Defined in src/pacm/include/icy/pacm/installmonitor.h:39

Adds a task to monitor.


startAll

virtual

virtual void startAll()

Defined in src/pacm/include/icy/pacm/installmonitor.h:42

Starts all monitored tasks.


cancelAll

virtual

virtual void cancelAll()

Defined in src/pacm/include/icy/pacm/installmonitor.h:45

Cancels all monitored tasks.


isComplete

virtual const

virtual bool isComplete() const

Defined in src/pacm/include/icy/pacm/installmonitor.h:49

Returns true if all install tasks have completed, either successfully or unsuccessfully.


tasks

virtual const

virtual InstallTaskPtrVec tasks() const

Defined in src/pacm/include/icy/pacm/installmonitor.h:52

Returns the list of monitored package tasks.


packages

virtual const

virtual LocalPackageVec packages() const

Defined in src/pacm/include/icy/pacm/installmonitor.h:55

Returns the list of monitored packages.

Protected Attributes


_mutex

std::mutex _mutex

Defined in src/pacm/include/icy/pacm/installmonitor.h:81


_tasks

InstallTaskPtrVec _tasks

Type: InstallTaskPtrVec

Defined in src/pacm/include/icy/pacm/installmonitor.h:82


_packages

LocalPackageVec _packages

Type: LocalPackageVec

Defined in src/pacm/include/icy/pacm/installmonitor.h:83


_progress

int _progress

Defined in src/pacm/include/icy/pacm/installmonitor.h:84

Protected Methods

ReturnNameDescription
voidonInstallStateChange virtual
voidonInstallComplete virtual
voidsetProgress virtual

onInstallStateChange

virtual

virtual void onInstallStateChange(void * sender, InstallationState & state, const InstallationState & oldState)

Defined in src/pacm/include/icy/pacm/installmonitor.h:72


onInstallComplete

virtual

virtual void onInstallComplete(InstallTask & task)

Defined in src/pacm/include/icy/pacm/installmonitor.h:76


setProgress

virtual

virtual void setProgress(int value)

Defined in src/pacm/include/icy/pacm/installmonitor.h:78