Continued to implement GUI::Program.
[aesalon.git] / src / gui / Program.h
blobec2a778b49a4174e69c71faba694d0dcc5246e44
1 #ifndef AESALON_GUI_PROGRAM_H
2 #define AESALON_GUI_PROGRAM_H
4 #include "platform/EventQueue.h"
5 #include "platform/NamedPipe.h"
6 #include "platform/Memory.h"
7 #include "platform/BidirectionalPipe.h"
9 #include "misc/SmartPointer.h"
11 namespace Aesalon {
12 namespace GUI {
14 class Program {
15 private:
16 Misc::SmartPointer<Platform::EventQueue> event_queue;
17 Misc::SmartPointer<Platform::Memory> memory;
18 Misc::SmartPointer<Platform::NamedPipe> named_pipe;
20 std::string executable;
21 std::string arguments;
22 bool in_xterm;
24 Misc::SmartPointer<Platform::BidirectionalPipe> bi_pipe;
25 public:
26 Program(std::string executable, std::string arguments, bool in_xterm);
27 virtual ~Program() {}
29 std::string get_executable() const { return executable; }
30 std::string get_arguments() const { return arguments; }
31 bool is_in_xterm() const { return in_xterm; }
34 } // namespace GUI
35 } // namespace Aesalon
37 #endif