summaryrefslogtreecommitdiff
path: root/src/lib/ecore/efl_general.h
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2018-02-27 21:19:17 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2018-03-03 13:40:33 +0900
commit1bdd9e4dd15fc27da43b50fd29bfb1b0b30ef6bd (patch)
tree168b9a7e716a814e8cdc476be53c61565a47ff3b /src/lib/ecore/efl_general.h
parent1c74aaa7e9c9fa1732b467aca5ee1458e3721f0a (diff)
ecore - a different take on efl.app class as a super class to efl.loop
so the MAIN loop is actually an efl.app object. which inherits from efl.loop. the idea is that other loops in threads will not be efl.app objects. thread on the creator side return an efl.thread object. inside the thread, like the mainloop, there is now an efl.appthread object that is for all non-main-loop threads. every thread (main loop or child) when it spawns a thread is the parent. there are i/o pipes from parnet to child and back. so parents are generally expected to, if they want to talk to child thread, so use the efl.io interfaces on efl.thread, and the main loop's elf.app class allows you to talk to stdio back to the parent process like the efl.appthread does the same using the efl.io interfaces to talk to its parent app or appthread. it's symmetrical no tests here - sure. i have been holding off on tests until things settle. that's why i haven't done them yet. those will come back in a subsequent commit for really quick examples on using this see: https://phab.enlightenment.org/F2983118 https://phab.enlightenment.org/F2983142 they are just my test code for this. Please see this design document: https://phab.enlightenment.org/w/efl-loops-threads/
Diffstat (limited to 'src/lib/ecore/efl_general.h')
-rw-r--r--src/lib/ecore/efl_general.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/ecore/efl_general.h b/src/lib/ecore/efl_general.h
index 256f1065a4..222c799c2c 100644
--- a/src/lib/ecore/efl_general.h
+++ b/src/lib/ecore/efl_general.h
@@ -107,9 +107,9 @@
107#define EFL_MAIN_EX() \ 107#define EFL_MAIN_EX() \
108 EFL_CALLBACKS_ARRAY_DEFINE(_efl_main_ex, \ 108 EFL_CALLBACKS_ARRAY_DEFINE(_efl_main_ex, \
109 { EFL_LOOP_EVENT_ARGUMENTS, efl_main }, \ 109 { EFL_LOOP_EVENT_ARGUMENTS, efl_main }, \
110 { EFL_LOOP_EVENT_PAUSE, efl_pause }, \ 110 { EFL_APP_EVENT_PAUSE, efl_pause }, \
111 { EFL_LOOP_EVENT_RESUME, efl_resume }, \ 111 { EFL_APP_EVENT_RESUME, efl_resume }, \
112 { EFL_LOOP_EVENT_TERMINATE, efl_terminate }); \ 112 { EFL_APP_EVENT_TERMINATE, efl_terminate }); \
113 int main(int argc, char **argv) \ 113 int main(int argc, char **argv) \
114 { \ 114 { \
115 Eina_Value *ret__; \ 115 Eina_Value *ret__; \