summaryrefslogtreecommitdiff
path: root/includes
AgeCommit message (Collapse)Author
2011-10-18Fixing Darwin compilation:Pixel
-) Using clang instead of gcc for the native target (*sigh*) -) Fixing libeio (*sigh*) -) "Fixing" the connect() call in Sockets because Darwin is stupid (*SIIIIIIIGH*) Although the Threads unit test isn't working properly.
2011-10-17Making some adjustments to get the Socket code compiling under mingw32. ↵Pixel
Doesn't work though; I'm guessing IPv6 isn't really mingw32 thing. At least, it's not WinXP's. Will try later to make something that switches between IPv4 and IPv6 intelligently.
2011-10-17Adding the Socket class, and a few tools that comes with it.Pixel
2011-10-17Tweaking a bit the main event loop to simplify it.Pixel
2011-10-17Adding the Async event, and tweaking the others a bit.Pixel
2011-10-17Removing the 'non-preemptible' madness before it could even be used.Pixel
2011-10-17Redefined how the IO class works. The ref counting should now work properly.Pixel
2011-10-17Adding an early version of the 'engine debug' facility.Pixel
2011-10-14Fixing a few bugs.Pixel
-) The IO class needed an assignment operator, as well as the ability to NOT contain a Handle. -) The Task Manager wasn't properly starting up pending tasks that got added during startup.
2011-10-14Further tweaks to the Task class: now a Task can declare being smart, and ↵Pixel
say it's okay to get a EAgain exception, if the operation is interruptible.
2011-10-14Tweaking the Task class a bit.Pixel
-) setPreemptible now returns the previous state -) Events may now not have an owner -) Events may now have a callback (even though it still needs an owner to get into the ev_loop, for these kind of watchers...) TODO: -) think about a way to start a watcher without requireing a Task -) add a few more things in the Tasks unit tests
2011-10-14Making sure that external task yields are able to complete their subactions. ↵Pixel
Hence removing a few now unnecessary asserts.
2011-10-14Adding a Thread and a Queue class.Pixel
2011-10-14The tasks can now set themselves to be non-preemptible. Also implemented a ↵Pixel
mechanism to re-arm an event.
2011-10-13Having a template here is useless...Pixel
2011-10-12Enabling cross-compilation for Darwin. Haven't tested under the real thing ↵Nicolas "Pixel" Noble
yet though. The eprintf() thingy seems odd.
2011-10-12Forgot mingw32-config.h. Also fixed a couple of bugs:Pixel
WSAStartup has to be called in win32 at startup. The TLS environment needs to be cleared when created.
2011-10-11Input class seems to be done.Pixel
2011-10-10Adding a few more features to Input, and actually creating a slightly better ↵Pixel
ClassName system, when using gcc and libstdc++.
2011-10-10Adding the 'stats' call to Input.Pixel
Also fixing a bug with the Printer - va_args are vicious.
2011-10-10Adding the basic "Handle" structure, and adding an early version of Input.Pixel
Renamed suspend() to yield(). Fixed a couple of bugs, and reorganized slightly some code.
2011-10-09Adding basic locks from libpthread. Also, that 'pending' loop belongs after ↵Pixel
we activate the tasks.
2011-10-09Starting to integrate libev; timer event works.Pixel
2011-10-09More work on the Task manager.Pixel
Now "Main" is a Task, among the most important changes. Introduced the notion of Events, and managed a coherent task switch. Also, renamed a lot of the variables to have a more coherent naming scheme.
2011-10-07More work in the Task manager.Pixel
Also fixing a few bugs linked with the printer and TLS. Removed flto from compilation flags: this actually creates bad code (!)
2011-10-07Preliminary work for the Task manager.Pixel
Added libcoro submodule. Also refactored some pieces of code.
2011-10-04Adding atomics.Nicolas "Pixel" Noble
2011-10-03First commit - very basic features.Pixel