ILauncher.h
1
26
27#ifndef COSMO_LAUNCHER_INTERFACE_H
28#define COSMO_LAUNCHER_INTERFACE_H
29
30#include <Pt/Cosmo/Api.h>
31#include <Pt/Cosmo/IUnknown.h>
32
33namespace Pt {
34
35namespace Cosmo {
36
46class ILauncher : public IUnknown
47{
48 public:
51 void launch()
52 {
53 onLaunch();
54 }
55
58 void exit()
59 {
60 onExit();
61 }
62
63 protected:
66 virtual void onLaunch() = 0;
67
70 virtual void onExit() = 0;
71};
72
73} // namespace Cosmo
74
75} // namespace Pt
76
77#endif // include guard
Launcher strategy interface.
Definition ILauncher.h:47
void launch()
Starts the launcher.
Definition ILauncher.h:51
void exit()
Requests the launcher to exit.
Definition ILauncher.h:58
virtual void onLaunch()=0
Called to start the launcher.
virtual void onExit()=0
Called to exit the launcher.
Interface base class.
Definition IUnknown.h:44
Cosmo Component Model.
Definition Api.h:53
Core module.
Definition Allocator.h:33