openATV enigma2
openATV is an open source SetTopBox Graphical user interface.
socket_mmi.h
Go to the documentation of this file.
1 #ifndef __socket_mmi_h
2 #define __socket_mmi_h
3 
4 #include <string>
5 #include <lib/mmi/mmi_ui.h>
7 
8 #ifndef SWIG
9 #include <lib/base/buffer.h>
10 #include <lib/base/ebase.h>
11 #include <sys/socket.h>
12 #include <sys/types.h>
13 #include <sys/un.h>
14 class eSocketMMIHandler: public sigc::trackable
15 {
16  eIOBuffer buffer;
17  int listenfd, connfd, clilen;
18  struct sockaddr_un servaddr;
19  ePtr<eSocketNotifier> listensn, connsn;
20  void listenDataAvail(int what);
21  void connDataAvail(int what);
22  void closeConn();
23  const char *sockname;
24  char *name;
25 public:
26  const char *getName() const { return name; }
27  sigc::signal4<int, int, const unsigned char*, const void *, int> mmi_progress;
28  int send_to_mmisock( void *, size_t );
29  bool connected() { return !!connsn; }
32 };
33 #endif
34 
35 class eSocket_UI: public eMMI_UI
36 {
37  eSocketMMIHandler handler;
38  static eSocket_UI *instance;
39 #ifdef SWIG
40  eSocket_UI();
41  ~eSocket_UI();
42 #endif
43  void stateChanged(int val) { socketStateChanged(val); }
44 public:
46 #ifndef SWIG
47  eSocket_UI();
48 #endif
49  static eSocket_UI *getInstance();
50  void setInit(int slot);
51  void setReset(int slot);
52  int startMMI(int slot);
53  int stopMMI(int slot);
54  int answerMenu(int slot, int answer);
55  int answerEnq(int slot, char *val);
56  int cancelEnq(int slot);
57  int getState(int slot);
58  int getMMIState(int slot);
59  const char *getName(int) const { return handler.getName() ? handler.getName() : "MMI Socket"; }
60 };
61 
62 #endif
Definition: buffer.h:11
Definition: mmi_ui.h:22
Definition: socket_mmi.h:36
int getState(int slot)
Definition: socket_mmi.cpp:107
void setReset(int slot)
Definition: socket_mmi.cpp:39
static eSocket_UI * getInstance()
Definition: socket_mmi.cpp:29
void setInit(int slot)
Definition: socket_mmi.cpp:34
const char * getName(int) const
Definition: socket_mmi.h:59
int getMMIState(int slot)
Definition: socket_mmi.cpp:112
PSignal1< void, int > socketStateChanged
Definition: socket_mmi.h:45
int answerEnq(int slot, char *val)
Definition: socket_mmi.cpp:78
int stopMMI(int slot)
Definition: socket_mmi.cpp:55
int answerMenu(int slot, int answer)
Definition: socket_mmi.cpp:66
int cancelEnq(int slot)
Definition: socket_mmi.cpp:96
int startMMI(int slot)
Definition: socket_mmi.cpp:44
eSocket_UI()
Definition: socket_mmi.cpp:21
Definition: socket_mmi.h:15
int send_to_mmisock(void *, size_t)
Definition: socket_mmi.cpp:120
~eSocketMMIHandler()
Definition: socket_mmi.cpp:306
sigc::signal4< int, int, const unsigned char *, const void *, int > mmi_progress
Definition: socket_mmi.h:27
bool connected()
Definition: socket_mmi.h:29
eSocketMMIHandler()
Definition: socket_mmi.cpp:132
const char * getName() const
Definition: socket_mmi.h:26
name
Definition: newplugin.py:9
val
Definition: UnitConversions.py:88