libsimpleio: (gerd) include glue_t2n in doxygen
[libasyncio] / ideas.txt
CommitLineData
21ffe77a
GE
1ideas/todo libsimpleio
2------------------------
3
4name
5-----
6don't use namespace i2n but namespace according to new project name
7
8ideas:
9libsimpleio
10libastiop (LIBrary for ASynchronous Timer, I/O and Process)
11
12important todo
13--------------------
14don't use m_poll_vector.front() directly as argument to poll, relies on std::vector really storing it's data continous
15
16
17smaller refactoring
18-----------
19backend in separate file
20break backend::doOneStep in 4 functions
21document reason for ptrlist: keeps iterators valid during loops which do inserts/deletes
22separate ptrlist
23protect ptrlist against evil usage (e.g. forbid or overload erase, push_back, insert,...)
24separate MilliTime
25separate pollfd, maybe encapsulate the pollfd-struct instead of deriving from it
26separate polldatacluster
27document that timerbase is always based on monotonic clock, getrealwhentime converts the time live
28document handling of error-cases, m_errno (e.g. mask ENOTSOCK for non-socket fds)
29
30
31bigger refactoring
32------------------
33put iolist & timerlist into backend to reduce the usage global objects
34make IOImplementations require a link to the backend they are used with
35
36ideas
37-----
38offer a common io-client or io-server, abstracting out the real communication channel used.
39makes it possible to switch between ways of communication at runtime