IMain.h
1
26
27#ifndef COSMO_IMAIN_H
28#define COSMO_IMAIN_H
29
30#include <Pt/Cosmo/Api.h>
31#include <Pt/Cosmo/Component.h>
32
33namespace Pt {
34
35namespace Cosmo {
36
44class IMain : public IUnknown
45{
46 public:
49 int& argc() const
50 { return onGetArgc(); }
51
54 char** argv() const
55 { return onGetArgv(); }
56
57 protected:
60 virtual int& onGetArgc() const = 0;
61
64 virtual char** onGetArgv() const = 0;
65};
66
67} // namespace Cosmo
68
69} // namespace Pt
70
71#endif // include guard
Main program interface.
Definition IMain.h:45
char ** argv() const
Returns the command line argument array.
Definition IMain.h:54
virtual int & onGetArgc() const =0
Number of command line arguments.
virtual char ** onGetArgv() const =0
Command line arguments.
int & argc() const
Returns the number of command line arguments.
Definition IMain.h:49
Interface base class.
Definition IUnknown.h:44
Cosmo Component Model.
Definition Api.h:53
Core module.
Definition Allocator.h:33