1 #ifndef __ENIGMA_MMISOCKET_H_
2 #define __ENIGMA_MMISOCKET_H_
4 #include <sys/socket.h>
8 #include <lib/dvb/dvbservice.h>
9 #include <enigma_mmi.h>
10 #include <enigma_main.h>
11 #include <enigma_setup.h>
13 class eSocketMMIHandler
: public Object
15 int listenfd
, connfd
, clilen
;
16 struct sockaddr_un servaddr
;
17 eSocketNotifier
*listensn
, *connsn
;
18 void listenDataAvail(int what
);
19 void connDataAvail(int what
);
21 void setupOpened( eSetupWindow
*setup
, int *entrynum
);
26 const char *getName() const { return name
; }
27 Signal2
<void, const char*, int> mmi_progress
;
28 int send_to_mmisock( void *, size_t );
33 class eSocketMMI
: public enigmaMMI
35 eSocketMMIHandler
*handler
;
37 void sendAnswer( AnswerType ans
, int param
, unsigned char *data
);
38 static std::map
<eSocketMMIHandler
*,eSocketMMI
*> exist
;
40 static eSocketMMI
*getInstance( eSocketMMIHandler
*handler
);
41 eSocketMMI(eSocketMMIHandler
*handler
);
44 #endif // __ENIGMA_MMISOCKET_H_