Add: ev extension docs

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@328897 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Ruslan Osmanov 2012-12-26 19:46:06 +00:00
parent 86fe1b6af3
commit 27d57bc40b
109 changed files with 11075 additions and 0 deletions

78
reference/ev/book.xml Normal file
View file

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<book xml:id="book.ev" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Ev</title>
<titleabbrev>Ev</titleabbrev>
<preface xml:id="intro.ev">
&reftitle.intro;
<para>
This extension provides inteface to <link
xlink:href="&url.libev;">libev</link> library - a high performance
full-featured event loop written in C.
</para>
&note.no-windows.extension;
<para>
<emphasis>Libev</emphasis> is an event loop: you register interest in certain
events (such as a file descriptor being readable or a timeout occurring), and
it will manage these event sources and provide your program with events.
To do this, it must take more or less complete control over your process (or
thread) by executing the event loop handler, and will then communicate events
via a callback mechanism.
You register interest in certain events by registering so-called event
watchers, and then hand it over to libev by starting the watcher.
For details refer to the <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod">documentation
of libev</link>
</para>
</preface>
&reference.ev.setup;
&reference.ev.constants;
&reference.ev.examples;
&reference.ev.watchers;
&reference.ev.watcher-callbacks;
&reference.ev.periodic-modes;
&reference.ev.ev;
&reference.ev.evcheck;
&reference.ev.evchild;
&reference.ev.evembed;
&reference.ev.evfork;
&reference.ev.evidle;
&reference.ev.evio;
&reference.ev.evloop;
&reference.ev.evperiodic;
&reference.ev.evprepare;
&reference.ev.evsignal;
&reference.ev.evstat;
&reference.ev.evtimer;
&reference.ev.evwatcher;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<section xml:id="ev.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.install;
<para>
&pecl.info;
<link xlink:href="&url.pecl.package;ev">&url.pecl.package;ev</link>
</para>
<para>
For information about manual installation, please
read the file <filename>INSTALL.md</filename> included in the package source.
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<appendix xml:id="ev.global.constants" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.constants;
&no.constants;
<para>Most constants are moved to <classname>Ev</classname>
singleton class.</para>
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

728
reference/ev/ev.xml Normal file
View file

@ -0,0 +1,728 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.ev" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The Ev class</title>
<titleabbrev>Ev</titleabbrev>
<partintro>
<!-- {{{ Ev intro -->
<section xml:id="ev.intro">
&reftitle.intro;
<para>
Ev is a singleton providing access to the default loop and to some common
operations.
</para>
</section>
<!-- }}} -->
<section xml:id="ev.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>Ev</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>Ev</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constants</classsynopsisinfo><!--{{{-->
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.flag-auto">Ev::FLAG_AUTO</varname>
<initializer>0</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.flag-noenv">Ev::FLAG_NOENV</varname>
<initializer>16777216</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.flag-forkcheck">Ev::FLAG_FORKCHECK</varname>
<initializer>33554432</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.flag-noinotify">Ev::FLAG_NOINOTIFY</varname>
<initializer>1048576</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.flag-signalfd">Ev::FLAG_SIGNALFD</varname>
<initializer>2097152</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.flag-nosigmask">Ev::FLAG_NOSIGMASK</varname>
<initializer>4194304</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.run-nowait">Ev::RUN_NOWAIT</varname>
<initializer>1</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.run-once">Ev::RUN_ONCE</varname>
<initializer>2</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.break-cancel">Ev::BREAK_CANCEL</varname>
<initializer>0</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.break-one">Ev::BREAK_ONE</varname>
<initializer>1</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.break-all">Ev::BREAK_ALL</varname>
<initializer>2</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.minpri">Ev::MINPRI</varname>
<initializer>-2</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.maxpri">Ev::MAXPRI</varname>
<initializer>2</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.read">Ev::READ</varname>
<initializer>1</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.write">Ev::WRITE</varname>
<initializer>2</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.timer">Ev::TIMER</varname>
<initializer>256</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.periodic">Ev::PERIODIC</varname>
<initializer>512</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.signal">Ev::SIGNAL</varname>
<initializer>1024</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.child">Ev::CHILD</varname>
<initializer>2048</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.stat">Ev::STAT</varname>
<initializer>4096</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.idle">Ev::IDLE</varname>
<initializer>8192</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.prepare">Ev::PREPARE</varname>
<initializer>16384</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.check">Ev::CHECK</varname>
<initializer>32768</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.embed">Ev::EMBED</varname>
<initializer>65536</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.custom">Ev::CUSTOM</varname>
<initializer>16777216</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.error">Ev::ERROR</varname>
<initializer>2147483648</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-select">Ev::BACKEND_SELECT</varname>
<initializer>1</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-poll">Ev::BACKEND_POLL</varname>
<initializer>2</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-epoll">Ev::BACKEND_EPOLL</varname>
<initializer>4</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-kqueue">Ev::BACKEND_KQUEUE</varname>
<initializer>8</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-devpoll">Ev::BACKEND_DEVPOLL</varname>
<initializer>16</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-port">Ev::BACKEND_PORT</varname>
<initializer>32</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-all">Ev::BACKEND_ALL</varname>
<initializer>63</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="ev.constants.backend-mask">Ev::BACKEND_MASK</varname>
<initializer>65535</initializer>
</fieldsynopsis>
<!--}}}-->
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.ev')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ Ev constants -->
<section xml:id="ev.constants">
&reftitle.constants;
<para xml:id="ev.constants.loop-flags">Flags passed to create a loop:<!--{{{-->
<variablelist>
<varlistentry xml:id="ev.constants.flag-auto">
<term><constant>Ev::FLAG_AUTO</constant></term>
<listitem>
<para>The default flags value</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.flag-noenv">
<term><constant>Ev::FLAG_NOENV</constant></term>
<listitem>
<para>
If this flag used(or the program runs setuid or setgid),
<literal>libev</literal> won't look at the environment variable
<varname>LIBEV_FLAGS</varname>. Otherwise(by default),
<varname>LIBEV_FLAGS</varname> will override the flags completely if it
is found. Useful for performance tests and searching for bugs.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.flag-forkcheck">
<term><constant>Ev::FLAG_FORKCHECK</constant></term>
<listitem>
<para>
Makes libev check for a fork in each iteration, instead of calling
<methodname>EvLoop::fork</methodname> manually.
This works by calling <literal>getpid()</literal> on every iteration of
the loop, and thus this might slow down your event loop if you do a lot of
loop iterations, but usually is not noticeable.
This flag setting cannot be overridden or specified in the
<varname>LIBEV_FLAGS</varname> environment variable.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.flag-noinotify">
<term><constant>Ev::FLAG_NOINOTIFY</constant></term>
<listitem>
<para>
When this flag is specified, <literal>libev</literal> won't attempt to
use the <literal>inotify</literal> API for its <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#code_ev_stat_code_did_the_file_attri">ev_stat</link>
watchers. The flag can be useful to conserve inotify file descriptors, as
otherwise each loop using <literal>ev_stat</literal> watchers consumes
one <literal>inotify</literal> handle.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.flag-signalfd">
<term><constant>Ev::FLAG_SIGNALFD</constant></term>
<listitem>
<para>
When this flag is specified, <literal>libev</literal> will attempt to
use the <literal>signalfd</literal> API for its
<link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#code_ev_signal_code_signal_me_when_a">ev_signal</link>
(and <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#code_ev_child_code_watch_out_for_pro">ev_child</link>)
watchers. This API delivers signals synchronously, which makes it both
faster and might make it possible to get the queued signal data. It can
also simplify signal handling with threads, as long as you properly block
signals in your threads that are not interested in handling them.
<literal>Signalfd</literal> will not be used by default.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.flag-nosigmask">
<term><constant>Ev::FLAG_NOSIGMASK</constant></term>
<listitem>
<para>
When this flag is specified, <literal>libev</literal> will avoid to
modify the signal mask. Specifically, this means you have to make sure
signals are unblocked when you want to receive them.
This behaviour is useful when you want to do your own signal handling, or
want to handle signals only in specific threads and want to avoid
<literal>libev</literal> unblocking the signals.
</para>
</listitem>
</varlistentry>
</variablelist>
</para><!--}}}-->
<para xml:id="ev.constants.run-flags">Flags passed to <methodname>Ev::run</methodname>, or <methodname>EvLoop::run</methodname><!--{{{-->
<variablelist>
<varlistentry xml:id="ev.constants.run-nowait">
<term><constant>Ev::RUN_NOWAIT</constant></term>
<listitem>
<para>
Means that event loop will look for new events, will handle those events
and any already outstanding ones, but will not wait and block your
process in case there are no events and will return after one iteration
of the loop. This is sometimes useful to poll and handle new events
while doing lengthy calculations, to keep the program responsive.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.run-once">
<term><constant>Ev::RUN_ONCE</constant></term>
<listitem>
<para>
Means that even loop will look for new events(waiting if
necessary) and will handle those and any already outstanding ones. It
will block your process until at least one new event arrives (which could
be an event internal to libev itself, so there is no guarantee that a
user-registered callback will be called), and will return after one
iteration of the loop.
</para>
</listitem>
</varlistentry>
</variablelist>
</para><!--}}}-->
<para xml:id="ev.constants.break-flags">Flags passed to <methodname>Ev::stop</methodname>, or
<methodname>EvLoop::stop</methodname><!--{{{-->
<variablelist>
<varlistentry xml:id="ev.constants.break-cancel">
<term><constant>Ev::BREAK_CANCEL</constant></term>
<listitem>
<para>
Cancel the break operation.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.break-one">
<term><constant>Ev::BREAK_ONE</constant></term>
<listitem>
<para>
Makes the innermost <methodname>Ev::run</methodname>(or
<methodname>EvLoop::run</methodname>) call return.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.break-all">
<term><constant>Ev::BREAK_ALL</constant></term>
<listitem>
<para>
Makes all nested <methodname>Ev::run</methodname>(or
<methodname>EvLoop::run</methodname>) calls return.
</para>
</listitem>
</varlistentry>
</variablelist>
</para><!--}}}-->
<para xml:id="ev.constants.watcher-pri">Watcher priorities:<!--{{{-->
<variablelist>
<varlistentry xml:id="ev.constants.minpri">
<term><constant>Ev::MINPRI</constant></term>
<listitem>
<para>
Minimum allowed watcher priority.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.maxpri">
<term><constant>Ev::MAXPRI</constant></term>
<listitem>
<para>
Maximum allowed watcher priority.
</para>
</listitem>
</varlistentry>
</variablelist>
</para><!--}}}-->
<para xml:id="ev.constants.watcher-revents">Bit masks of (received) events:<!--{{{-->
<variablelist>
<varlistentry xml:id="ev.constants.read">
<term><constant>Ev::READ</constant></term>
<listitem>
<para>
The file descriptor in the <classname>EvIo</classname> watcher has become
readable.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.write">
<term><constant>Ev::WRITE</constant></term>
<listitem>
<para>
The file descriptor in the <classname>EvIo</classname> watcher has become
writable.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.timer">
<term><constant>Ev::TIMER</constant></term>
<listitem>
<para>
<classname>EvTimer</classname> watcher has been timed out.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.periodic">
<term><constant>Ev::PERIODIC</constant></term>
<listitem>
<para>
<classname>EvPeriodic</classname> watcher has been timed out.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.signal">
<term><constant>Ev::SIGNAL</constant></term>
<listitem>
<para>
A signal specified in <methodname>EvSignal::__construct</methodname> has
been received.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.child">
<term><constant>Ev::CHILD</constant></term>
<listitem>
<para>
The <parameter>pid</parameter> specified in
<methodname>EvChild::__construct</methodname> has received a status
change.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.stat">
<term><constant>Ev::STAT</constant></term>
<listitem>
<para>
The path specified in <classname>EvStat</classname> watcher changed its
attributes.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.idle">
<term><constant>Ev::IDLE</constant></term>
<listitem>
<para>
<classname>EvIdle</classname> watcher works when there is nothing to do
with other watchers.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.prepare">
<term><constant>Ev::PREPARE</constant></term>
<listitem>
<para>
All <classname>EvPrepare</classname> watchers are invoked just before
<methodname>Ev::run</methodname> starts. Thus,
<classname>EvPrepare</classname> watchers are the last watchers invoked
before the event loop sleeps or polls for new events.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.check">
<term><constant>Ev::CHECK</constant></term>
<listitem>
<para>
All <classname>EvCheck</classname> watchers are queued just after
<methodname>Ev::run</methodname> has gathered the new events, but before it
queues any callbacks for any received events. Thus,
<classname>EvCheck</classname> watchers will be invoked before any other
watchers of the same or lower priority within an event loop iteration.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.embed">
<term><constant>Ev::EMBED</constant></term>
<listitem>
<para>
The embedded event loop specified in the <classname>EvEmbed</classname> watcher needs attention.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.custom">
<term><constant>Ev::CUSTOM</constant></term>
<listitem>
<para>
Not ever sent(or otherwise used) by <literal>libev</literal> itself,
but can be freely used by <literal>libev</literal> users to signal
watchers (e.g. via <methodname>EvWatcher::feed</methodname>).
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.error">
<term><constant>Ev::ERROR</constant></term>
<listitem>
<para>
An unspecified error has occurred, the watcher has been stopped. This
might happen because the watcher could not be properly started because
<literal>libev</literal> ran out of memory, a file descriptor was found
to be closed or any other problem. <literal>Libev</literal> considers
these application bugs.
See also <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#ANATOMY_OF_A_WATCHER_CONTENT">ANATOMY
OF A WATCHER</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</para><!--}}}-->
<para xml:id="ev.constants.watcher-backends">Backend flags:<!--{{{-->
<variablelist>
<varlistentry xml:id="ev.constants.backend-select">
<term><constant>Ev::BACKEND_SELECT</constant></term>
<listitem>
<para>
<literal>select(2) backend</literal>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-poll">
<term><constant>Ev::BACKEND_POLL</constant></term>
<listitem>
<para>
<literal>poll(2) backend</literal>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-epoll">
<term><constant>Ev::BACKEND_EPOLL</constant></term>
<listitem>
<para>
Linux-specific <literal>epoll(7) backendf or both pre- and post-2.6.9 kernels</literal>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-kqueue">
<term><constant>Ev::BACKEND_KQUEUE</constant></term>
<listitem>
<para>
<literal>kqueue</literal> backend used on most BSD systems.
<classname>EvEmbed</classname> watcher could be used to embed one
loop(with kqueue backend) into another. For instance, you can try to
create an event loop with <literal>kqueue</literal> backend and use it
for sockets only.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-devpoll">
<term><constant>Ev::BACKEND_DEVPOLL</constant></term>
<listitem>
<para>
Solaris 8 backend. This is not implemented yet.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-port">
<term><constant>Ev::BACKEND_PORT</constant></term>
<listitem>
<para>
Solaris 10 event port mechanism with a good scaling.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-all">
<term><constant>Ev::BACKEND_ALL</constant></term>
<listitem>
<para>
Try all backends(even currupted ones). It's not recommended to use it
explicitly. You should apply bitwise operators(e.g.
<constant>Ev::BACKEND_ALL</constant> &amp;
~<constant>Ev::BACKEND_KQUEUE</constant>)
Use <methodname>Ev::recommendedBackends</methodname>, or don't specify any
backends at all.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ev.constants.backend-mask">
<term><constant>Ev::BACKEND_MASK</constant></term>
<listitem>
<para>
Not a backend, but a mask to select all backend bits from a
<parameter>flags</parameter> value, in case you want to mask out any
backends from a flags value (e.g. when modifying the
<varname>LIBEV_FLAGS</varname> environment variable).
</para>
</listitem>
</varlistentry>
</variablelist>
</para><!--}}}-->
<note xmlns="http://docbook.org/ns/docbook">
<para>
For the default loop during module initialization phase <literal>Ev</literal> registers
<link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#FUNCTIONS_CONTROLLING_EVENT_LOOPS_CO">ev_loop_fork</link>
call by means of <literal>pthread_atfork</literal>(if available).
</para>
</note>
<note xmlns="http://docbook.org/ns/docbook">
<para>
There are methods providing access to the <emphasis>default event
loop</emphasis> in <classname>Ev</classname> class(e.g.
<methodname>Ev::iteration</methodname>, <methodname>Ev::depth</methodname>
etc.) For <emphasis>custom loops</emphasis>(created with
<methodname>EvLoop::__construct</methodname>) you can access these values
via corresponding properties and methods of <classname>EvLoop</classname>
class.
</para>
<para>
The instance of the default event loop itself can be fetched by means of
<methodname>Ev::defaultLoop</methodname> method.
</para>
</note>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.ev;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.backend" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::backend</refname>
<refpurpose>Returns an integer describing the backend used by libev.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier>
<modifier>static</modifier> <type>int</type><methodname>Ev::backend</methodname>
<void />
</methodsynopsis>
<para>
Returns an integer describing the backend used by
<emphasis>libev</emphasis>.
See <link linkend="ev.constants.watcher-backends">Backend flags</link>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns an integer(bit mask) describing the backend used by
<emphasis>libev</emphasis>.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><classname>EvEmbed</classname></member>
<member><methodname>Ev::embeddableBackends</methodname></member>
<member><methodname>Ev::recommendedBackends</methodname></member>
<member><methodname>Ev::supportedBackends</methodname></member>
<member><link linkend="ev.constants.watcher-backends">Backend flags</link></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

68
reference/ev/ev/depth.xml Normal file
View file

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.depth" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::depth</refname>
<refpurpose>Returns recursion depth</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier>
<modifier>static</modifier> <type>int</type><methodname>Ev::depth</methodname>
<void />
</methodsynopsis>
<para>
The number of times <methodname>Ev::run</methodname> was entered minus the number
of times <methodname>Ev::run</methodname> was exited normally, in other words, the
recursion depth. Outside <methodname>Ev::run</methodname>, this number is
<constant>0</constant>. In a callback, this number is <constant>1</constant>,
unless <methodname>Ev::run</methodname> was invoked recursively (or from another
thread), in which case it is higher.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>ev_depth</function> returns recursion depth of the default loop.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::iteration</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,104 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.embeddablebackends" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::embeddableBackends</refname>
<refpurpose>Returns the set of backends that are embeddable in other event loops.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::embeddableBackends</methodname>
<void />
</methodsynopsis>
<para>
Returns the set of backends that are embeddable in other event loops.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns a bit mask which can containing <link
linkend="ev.constants.watcher-backends">backend flags</link> combined using
bitwise <emphasis>OR</emphasis> operator.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Embedding loop created with kqueue backend into the default loop</title>
<programlisting role="php">
<![CDATA[
<?php
/*
* Check if kqueue is available but not recommended and create a kqueue backend
* for use with sockets (which usually work with any kqueue implementation).
* Store the kqueue/socket-only event loop in loop_socket. (One might optionally
* use EVFLAG_NOENV, too)
*
* Example borrowed from
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop = EvLoop::defaultLoop();
$socket_loop = NULL;
$embed = NULL;
if (Ev::supportedBackends() & ~Ev::recommendedBackends() & Ev::BACKEND_KQUEUE) {
if (($socket_loop = new EvLoop(Ev::BACKEND_KQUEUE))) {
$embed = new EvEmbed($loop);
}
}
if (!$socket_loop) {
$socket_loop = $loop;
}
// Now use $socket_loop for all sockets, and $loop for anything else
?>
]]>
</programlisting>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><classname>EvEmbed</classname></member>
<member><methodname>Ev::recommendedBackends</methodname></member>
<member><methodname>Ev::supportedBackends</methodname></member>
<member><link linkend="ev.constants.watcher-backends">Backend flags</link></member>
<member><link linkend="ev.examples">Examples</link></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.feedsignal" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::feedSignal</refname>
<refpurpose>Feed a signal event info Ev</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::feedSignal</methodname>
<methodparam><type>int</type><parameter>signum</parameter></methodparam>
</methodsynopsis>
<para>
Simulates a signal receive. It is safe to call this function at
any time, from any context, including signal handlers or random threads.
Its main use is to customise signal handling in your process.
</para>
<para>
Unlike <methodname>Ev::feedSignalEvent</methodname>, this works regardless
of which loop has registered the signal.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>signum</parameter></term>
<listitem>
<para>
Signal number. See <literal>signal(7)</literal> man page for detals.
You can use constants exported by <literal>pcntl</literal> extension.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::feedSignalEvent</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.feedsignalevent" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::feedSignalEvent</refname>
<refpurpose>Feed signal event into the default loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier>
<type>void</type><methodname>Ev::feedSignalEvent</methodname>
<methodparam><type>int</type><parameter>signum</parameter></methodparam>
</methodsynopsis>
<para>
Feed signal event into the default loop. Ev will react to this call as if
the signal specified by <parameter>signal</parameter> had occured.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>signum</parameter></term>
<listitem>
<para>
Signal number. See <literal>signal(7)</literal> man page for detals.
You can use constants exported by <literal>pcntl</literal> extension.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::feedSignal</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.iteration" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::iteration</refname>
<refpurpose>Return the number of times the default event loop has polled for new
events.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier>
<modifier>static</modifier> <type>int</type><methodname>Ev::iteration</methodname>
<void />
</methodsynopsis>
<para>
Return the number of times the event loop has polled for new events.
Sometimes useful as a generation counter.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns number of polls of the default event loop.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::depth</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

67
reference/ev/ev/now.xml Normal file
View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.now" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::now</refname>
<refpurpose>Returns the time when the last iteration of the default event
loop has started.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier>
<modifier>static</modifier> <type>double</type><methodname>Ev::now</methodname>
<void />
</methodsynopsis>
<para>
Returns the time when the last iteration of the default event loop has
started. This is the time that timers(<classname>EvTimer</classname> and
<classname>EvPeriodic</classname>) are based on, and referring to it is
usually faster then calling <methodname>Ev::time</methodname>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns number of seconds(fractional) representing the time when the last
iteration of the default event loop has started.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::nowUpdate</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.nowupdate" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::nowUpdate</refname>
<refpurpose>Establishes the current time by querying the kernel, updating the time
returned by Ev::now in the progress.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::nowUpdate</methodname>
<void />
</methodsynopsis>
<para>
Establishes the current time by querying the kernel, updating the time
returned by <methodname>Ev::now</methodname> in the progress. This is a
costly operation and is usually done automatically within
<methodname>Ev::run</methodname>.
</para>
<para>
This method is rarely useful, but when some event callback runs for a very
long time without entering the event loop, updating
<emphasis>libev</emphasis>'s consideration of the current time is a good
idea.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::now</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.recommendedbackends" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::recommendedBackends</refname>
<refpurpose>Returns a bit mask of recommended backends for current
platform.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::recommendedBackends</methodname>
<void />
</methodsynopsis>
<para>
Returns the set of all backends compiled into this binary of
<literal>libev</literal> and also recommended for this platform, meaning it
will work for most file descriptor types. This set is often smaller than the
one returned by <function>ev_supported_backends</function>, as for example
<literal>kqueue</literal> is broken on most <literal>BSD</literal> systems
and will not be auto-detected unless you explicitly request it. This is the
set of backends that <literal>libev</literal> will probe for you if you
specify no backends explicitly.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns a bit mask which can containing <link
linkend="ev.constants.watcher-backends">backend flags</link> combined using
bitwise <emphasis>OR</emphasis> operator.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Embedding one loop into another</title>
<programlisting role="php">
<![CDATA[
<?php
/*
* Try to get an embeddable event loop and embed it into the default event loop.
* If it is impossible, use the default
* loop. The default loop is stored in $loop_hi, while the embeddable loop is
* stored in $loop_lo(which is $loop_hi in the case no embeddable loop can be
* used).
*
* Sample translated to PHP
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop_hi = EvLoop::defaultLoop();
$loop_lo = NULL;
$embed = NULL;
/*
* See if there is a chance of getting one that works
* (flags' value of 0 means autodetection)
*/
$loop_lo = Ev::embeddableBackends() & Ev::recommendedBackends()
? new EvLoop(Ev::embeddableBackends() & Ev::recommendedBackends())
: 0;
if ($loop_lo) {
$embed = new EvEmbed($loop_lo, function () {});
} else {
$loop_lo = $loop_hi;
}
?>
]]>
</programlisting>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><classname>EvEmbed</classname></member>
<member><methodname>Ev::embeddableBackends</methodname></member>
<member><methodname>Ev::supportedBackends</methodname></member>
<member><link linkend="ev.constants.watcher-backends">Backend flags</link></member>
<member><link linkend="ev.examples">Examples</link></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.resume" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::resume</refname>
<refpurpose>Resume previously suspended default event loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::resume</methodname>
<void />
</methodsynopsis>
<para>
<methodname>Ev::suspend</methodname> and
<methodname>Ev::resume</methodname> methods suspend and resume a loop
correspondingly.
</para>
<para>
All timer watchers will be delayed by the time spend between
<emphasis>suspend</emphasis> and <emphasis>resume</emphasis>, and all
<emphasis>periodic</emphasis> watchers will be rescheduled(that is, they
will lose any events that would have occured while suspended).
</para>
<para>
After calling <methodname>Ev::suspend</methodname> you must not call any
function on the given loop other than <methodname>Ev::resume</methodname>,
and you must not call <methodname>Ev::resume</methodname>
without a previous call to <methodname>Ev::suspend</methodname>.
</para>
<para>
Calling <emphasis>suspend</emphasis>/<emphasis>resume</emphasis> has the
side effect of updating the event loop time(see
<methodname>Ev::nowUpdate</methodname>).
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::suspend</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

112
reference/ev/ev/run.xml Normal file
View file

@ -0,0 +1,112 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.run" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::run</refname>
<refpurpose>Begin checking for events and calling callbacks for the default
loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier>
<type>void</type><methodname>Ev::run</methodname>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
</methodsynopsis>
<para>
Begin checking for events and calling callbacks <emphasis>for the default
loop</emphasis>. Returns when a callback calls
<methodname>Ev::stop</methodname> method, or the flags are nonzero(in which
case the return value is true) or when there are no active watchers which
reference the loop(<methodname>EvWatcher::keepalive</methodname> is &true;),
in which case the return value will be &false;. The return value can
generally be interpreted as <emphasis>if &true;, there is more work left to
do</emphasis>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Optional parameter <parameter>flags</parameter> can be one of the following:
<table>
<title>
List for possible values of <parameter>flags</parameter>
</title>
<tgroup cols="2">
<thead>
<row>
<entry><parameter>flags</parameter></entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><constant>0</constant></entry>
<entry>The default behavior described above</entry>
</row>
<row>
<entry><constant>Ev::RUN_ONCE</constant></entry>
<entry>Block at most one(wait, but don't loop)</entry>
</row>
<row>
<entry><constant>Ev::RUN_NOWAIT</constant></entry>
<entry>Don't block at all(fetch/handle events, but don't wait)</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>
See <link linkend="ev.constants.run-flags">the run flag
constants</link>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::stop</methodname></member>
<member><methodname>EvLoop::run</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

64
reference/ev/ev/sleep.xml Normal file
View file

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.sleep" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::sleep</refname>
<refpurpose>Block the process for the given number of seconds.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::sleep</methodname>
<methodparam><type>double</type><parameter>seconds</parameter></methodparam>
</methodsynopsis>
<para>
Block the process for the given number of seconds.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>seconds</parameter></term>
<listitem>
<para>
Fractional number of seconds
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

72
reference/ev/ev/stop.xml Normal file
View file

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.stop" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::stop</refname>
<refpurpose>Stops the default event loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::stop</methodname>
<methodparam choice="opt"><type>int</type><parameter>how</parameter></methodparam>
</methodsynopsis>
<para>
Stops the default event loop
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>how</parameter></term>
<listitem>
<para>
One of <emphasis>Ev::BREAK_*</emphasis> <link
linkend="ev.constants.break-flags">constants</link>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::run</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,106 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.supportedbackends" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::supportedBackends</refname>
<refpurpose>Returns the set of backends supported by current libev
configuration.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::supportedBackends</methodname>
<void />
</methodsynopsis>
<para>
Returns the set of backends supported by current libev
configuration.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns a bit mask which can containing <link
linkend="ev.constants.watcher-backends">backend flags</link> combined using
bitwise <emphasis>OR</emphasis> operator.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Embedding loop created with kqueue backend into the default loop</title>
<programlisting role="php">
<![CDATA[
<?php
/*
* Check if kqueue is available but not recommended and create a kqueue backend
* for use with sockets (which usually work with any kqueue implementation).
* Store the kqueue/socket-only event loop in loop_socket. (One might optionally
* use EVFLAG_NOENV, too)
*
* Example borrowed from
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop = EvLoop::defaultLoop();
$socket_loop = NULL;
$embed = NULL;
if (Ev::supportedBackends() & ~Ev::recommendedBackends() & Ev::BACKEND_KQUEUE) {
if (($socket_loop = new EvLoop(Ev::BACKEND_KQUEUE))) {
$embed = new EvEmbed($loop);
}
}
if (!$socket_loop) {
$socket_loop = $loop;
}
// Now use $socket_loop for all sockets, and $loop for anything else
?>
]]>
</programlisting>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><classname>EvEmbed</classname></member>
<member><methodname>Ev::recommendedBackends</methodname></member>
<member><methodname>Ev::embeddableBackends</methodname></member>
<member><link linkend="ev.constants.watcher-backends">Backend flags</link></member>
<member><link linkend="ev.examples">Examples</link></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.suspend" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::suspend</refname>
<refpurpose>Suspend the default event loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::suspend</methodname>
<void />
</methodsynopsis>
<para>
<methodname>Ev::suspend</methodname> and
<methodname>Ev::resume</methodname> methods suspend and resume the default
loop correspondingly.
</para>
<para>
All timer watchers will be delayed by the time spend between
<emphasis>suspend</emphasis> and <emphasis>resume</emphasis>, and all
<emphasis>periodic</emphasis> watchers will be rescheduled(that is, they
will lose any events that would have occured while suspended).
</para>
<para>
After calling <methodname>Ev::suspend</methodname> you must not call any
function on the given loop other than <methodname>Ev::resume</methodname>,
and you must not call <methodname>Ev::resume</methodname>
without a previous call to <methodname>Ev::suspend</methodname>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::resume</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

63
reference/ev/ev/time.xml Normal file
View file

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.time" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::time</refname>
<refpurpose>Returns the current time in fractional seconds since the epoch.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier>
<modifier>static</modifier> <type>double</type><methodname>Ev::time</methodname>
<void />
</methodsynopsis>
<para>
Returns the current time in fractional seconds since the epoch. Consider
using <methodname>Ev::now</methodname>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the current time in fractional seconds since the epoch.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::now</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ev.verify" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ev::verify</refname>
<refpurpose>Performs internal consistency checks(for debugging)</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>Ev::verify</methodname>
<void />
</methodsynopsis>
<para>
Performs internal consistency checks(for debugging
<emphasis>libev</emphasis>) and abort the program if any data structures
were found to be corrupted.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

115
reference/ev/evcheck.xml Normal file
View file

@ -0,0 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evcheck" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvCheck class</title>
<titleabbrev>EvCheck</titleabbrev>
<partintro>
<!-- {{{ EvCheck intro -->
<section xml:id="evcheck.intro">
&reftitle.intro;
<para>
<classname>EvPrepare</classname> and <classname>EvCheck</classname>
watchers are usually used in pairs. <classname>EvPrepare</classname>
watchers get invoked before the process blocks,
<classname>EvCheck</classname> afterwards.
</para>
<para>
You must not call <methodname>EvLoop::run</methodname> or similar methods
or functions that enter the current event loop from either
<classname>EvPrepare</classname> or
<classname>EvCheck</classname> watchers. Other loops than the current one are fine, however. The
rationale behind this is that you do not need to check for recursion in
those watchers, i.e. the sequence will always be:
<classname>EvPrepare</classname> -&gt; blocking -&gt;
<classname>EvCheck</classname>, so if you have one watcher of each kind they will always be called
in pairs bracketing the blocking
call.
</para>
<para>
The main purpose is to integrate other event mechanisms into
<emphasis>libev</emphasis> and their use is somewhat advanced. They could
be used, for example, to track variable changes, implement your own
watchers, integrate net-snmp or a coroutine library and lots more. They are
also occasionally useful if you cache some data and want to flush it before
blocking.
</para>
<para>
It is recommended to give <classname>EvCheck</classname> watchers
highest(<constant>Ev::MAXPRI</constant>) priority, to ensure that they are
being run before any other watchers after the poll (this doesnt matter for
<classname>EvPrepare</classname> watchers).
</para>
<para>
Also, <classname>EvCheck</classname> watchers should not activate/feed
events. While <emphasis>libev</emphasis> fully supports this, they might
get executed before other <classname>EvCheck</classname> watchers did their job.
</para>
</section>
<!-- }}} -->
<section xml:id="evcheck.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvCheck</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvCheck</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<!--<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>-->
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evcheck')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
&reference.ev.entities.evcheck;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evcheck.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvCheck::__construct</refname>
<refpurpose>Constructs the EvCheck watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvCheck::__construct</methodname>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Constructs the <classname>EvCheck</classname> watcher object.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvCheck object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><classname>EvPrepare</classname></member>
<member><methodname>EvLoop::check</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evcheck.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvCheck::createStopped</refname>
<refpurpose>Create instance of a stopped EvCheck watcher</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>object</type><methodname>EvCheck::createStopped</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Create instance of a stopped EvCheck watcher
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvCheck object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><classname>EvPrepare</classname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

134
reference/ev/evchild.xml Normal file
View file

@ -0,0 +1,134 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evchild" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvChild class</title>
<titleabbrev>EvChild</titleabbrev>
<partintro>
<!-- {{{ EvChild intro -->
<section xml:id="evchild.intro">
&reftitle.intro;
<para>
<classname>EvChild</classname> watchers trigger when your process receives
a <constant>SIGCHLD</constant> in response to some child status changes
(most typically when a child of yours dies or exits). It is permissible to
install an <constant>EvChild</constant> watcher after the child has been
forked(which implies it might have already exited), as long as the event
loop isn't entered(or is continued from a watcher), i.e. forking and then
immediately registering a watcher for the child is fine, but forking and
registering a watcher a few event loop iterations later or in the next
callback invocation is not.
</para>
<para>
It is allowed to register <classname>EvChild</classname> watchers in the
<emphasis>default loop</emphasis> only.
</para>
</section>
<!-- }}} -->
<section xml:id="evchild.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvChild</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvChild</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evchild.props.pid">pid</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evchild.props.rpid">rpid</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evchild.props.rstatus">rstatus</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evchild')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvChild properties -->
<section xml:id="evchild.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evchild.props.pid">
<term><varname>pid</varname></term>
<listitem>
<para><emphasis>Readonly</emphasis>. The process ID this watcher watches
out for, or <constant>0</constant>, meaning any process ID.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evchild.props.rpid">
<term><varname>rpid</varname></term>
<listitem>
<para><emphasis>Readonly</emphasis>.The process ID that detected a status change.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evchild.props.rstatus">
<term><varname>rstatus</varname></term>
<listitem>
<para><emphasis>Readonly</emphasis>. The process exit status caused by
<varname>rpid</varname>.</para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evchild;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,144 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evchild.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvChild::__construct</refname>
<refpurpose>Constructs the EvChild watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvChild::__construct</methodname>
<methodparam><type>int</type><parameter>pid</parameter></methodparam>
<methodparam><type>bool</type><parameter>trace</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Constructs the <classname>EvChild</classname> watcher object.
</para>
<para>
Call the callback when a status change for process ID
<parameter>pid</parameter>(or any <emphasis>PID</emphasis> if
<parameter>pid</parameter> is <constant>0</constant>) has been received(a
status change happens when the process terminates or is killed, or, when
<parameter>trace</parameter> is &true;, additionally when it is stopped or
continued). In other words, when the process receives a
<constant>SIGCHLD</constant>, <emphasis>Ev</emphasis> will fetch the
outstanding exit/wait status for all changed/zombie children and call the
callback.
</para>
<para>
It is valid to install a child watcher after an
<classname>EvChild</classname> has exited but before the event loop has
started its next iteration(for example, first you fork, then the new child
process might exit, and only then do you install an
<classname>EvChild</classname> watcher in the parent for the new
<emphasis>PID</emphasis>).
</para>
<para>
You can access both exit/tracing status and <parameter>pid</parameter> by
using the <varname>rstatus</varname> and <varname>rpid</varname>
properties of the watcher object.
</para>
<para>
You can have as many <emphasis>PID</emphasis> watchers per
<emphasis>PID</emphasis> as you want, they will all be called.
</para>
<para>
The <methodname>EvChild::createStopped</methodname> method doesn't
start(activate) the newly created watcher.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>pid</parameter></term>
<listitem>
<para>
Wait for status changes of process PID(or any process if PID is specified
as <constant>0</constant>).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>trace</parameter></term>
<listitem>
<para>
If &false;, only activate the watcher when the process terminates.
Otherwise(&true;) additionally activate the watcher when the process is
stopped or continued.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvChild object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::child</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evchild.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvChild::createStopped</refname>
<refpurpose>Create instance of a stopped EvCheck watcher</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>object</type><methodname>EvChild::createStopped</methodname>
<methodparam><type>int</type><parameter>pid</parameter></methodparam>
<methodparam><type>bool</type><parameter>trace</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
The same as <methodname>EvChild::__construct</methodname>, but doesn't start
the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>pid</parameter></term>
<listitem>
<para>
The same as for <methodname>EvChild::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>trace</parameter></term>
<listitem>
<para>
The same as for <methodname>EvChild::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvChild::__construct</methodname></member>
<member><methodname>EvLoop::child</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evchild.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvChild::set</refname>
<refpurpose>Configures the watcher</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvChild::set</methodname>
<methodparam><type>int</type><parameter>pid</parameter></methodparam>
<methodparam><type>bool</type><parameter>trace</parameter></methodparam>
</methodsynopsis>
<para>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>pid</parameter></term>
<listitem>
<para>
The same as for <methodname>EvChild::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>trace</parameter></term>
<listitem>
<para>
The same as for <methodname>EvChild::__construct</methodname>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvChild::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

122
reference/ev/evembed.xml Normal file
View file

@ -0,0 +1,122 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evembed" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvEmbed class</title>
<titleabbrev>EvEmbed</titleabbrev>
<partintro>
<!-- {{{ EvEmbed intro -->
<section xml:id="evembed.intro">
&reftitle.intro;
<para>
Used to embed one event loop into another.
</para>
</section>
<!-- }}} -->
<section xml:id="evembed.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvEmbed</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvEmbed</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evembed.props.embed">embed</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evembed')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvEmbed properties -->
<section xml:id="evembed.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evembed.props.is-active">
<term><varname>is_active</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evembed.props.data">
<term><varname>data</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evembed.props.is-pending">
<term><varname>is_pending</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evembed.props.priority">
<term><varname>priority</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evembed.props.embed">
<term><varname>embed</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evembed;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,149 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evembed.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvEmbed::__construct</refname>
<refpurpose>Constructs the EvEmbed object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvEmbed::__construct</methodname>
<methodparam><type>object</type><parameter>other</parameter></methodparam>
<methodparam choice="opt"><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
This is a rather advanced watcher type that lets you embed one event loop
into another(currently only IO events are supported in the embedded loop,
other types of watchers might be handled in a delayed or incorrect fashion
and must not be used).
</para>
<para>
See <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#code_ev_embed_code_when_one_backend_">the
libev documentation</link> for details.
</para>
<para>
This watcher is most useful on <emphasis>BSD</emphasis> systems without
working <literal>kqueue</literal> to still be able to handle a large number
of sockets. See example below.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>other</parameter></term>
<listitem>
<para>
Instance of <classname>EvLoop</classname>. The loop to embed, this loop
must be embeddable(see <methodname>Ev::embeddableBackends</methodname>).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvEmbed object on success.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Embedding loop created with kqueue backend into the default loop</title>
<programlisting role="php">
<![CDATA[
<?php
/*
* Check if kqueue is available but not recommended and create a kqueue backend
* for use with sockets (which usually work with any kqueue implementation).
* Store the kqueue/socket-only event loop in loop_socket. (One might optionally
* use EVFLAG_NOENV, too)
*
* Example borrowed from
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop = EvLoop::defaultLoop();
$socket_loop = NULL;
$embed = NULL;
if (Ev::supportedBackends() & ~Ev::recommendedBackends() & Ev::BACKEND_KQUEUE) {
if (($socket_loop = new EvLoop(Ev::BACKEND_KQUEUE))) {
$embed = new EvEmbed($loop);
}
}
if (!$socket_loop) {
$socket_loop = $loop;
}
// Now use $socket_loop for all sockets, and $loop for anything else
?>
]]>
</programlisting>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::embeddableBackends</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evembed.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvEmbed::createStopped</refname>
<refpurpose>Create stopped EvEmbed watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>EvEmbed::createStopped</methodname>
<methodparam><type>object</type><parameter>other</parameter></methodparam>
<methodparam choice="opt"><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
The same as <methodname>EvEmbed::__construct</methodname>, but doesn't start
the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>other</parameter></term>
<listitem>
<para>
The same as for <methodname>EvEmbed::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns stopped EvEmbed object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvEmbed::__construct</methodname></member>
<member><methodname>Ev::embeddableBackends</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evembed.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvEmbed::set</refname>
<refpurpose>Configures the watcher</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvEmbed::set</methodname>
<methodparam><type>object</type><parameter>other</parameter></methodparam>
</methodsynopsis>
<para>
Configures the watcher to use <parameter>other</parameter> event loop
object.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>other</parameter></term>
<listitem>
<para>
The same as for <methodname>EvEmbed::__construct</methodname>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evembed.sweep" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvEmbed::sweep</refname>
<refpurpose>The sweep purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvEmbed::sweep</methodname>
<void />
</methodsynopsis>
<para>
Make a single, non-blocking sweep over the embedded loop. Works similarly
to the following, but in the most appropriate way for embedded loops:
<programlisting role="php">
<![CDATA[
<?php
$other->start(Ev::RUN_NOWAIT);
?>
]]>
</programlisting>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvWatcher::start</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

86
reference/ev/evfork.xml Normal file
View file

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evfork" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvFork class</title>
<titleabbrev>EvFork</titleabbrev>
<partintro>
<!-- {{{ EvFork intro -->
<section xml:id="evfork.intro">
&reftitle.intro;
<para>
Fork watchers are called when a <literal>fork()</literal> was detected
(usually because whoever signalled <emphasis>libev</emphasis> about it by
calling <methodname>EvLoop::fork</methodname>). The invocation is done
before the event loop blocks next and before <classname>EvCheck</classname>
watchers are being called, and only in the child after the fork. Note, that
if whoever calling <methodname>EvLoop::fork</methodname> calls it in the
wrong process, the fork handlers will be invoked, too.
</para>
</section>
<!-- }}} -->
<section xml:id="evfork.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvFork</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvFork</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<!--<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>-->
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evfork')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
&reference.ev.entities.evfork;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evfork.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvFork::__construct</refname>
<refpurpose>Constructs the EvFork watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvFork::__construct</methodname>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Constructs the EvFork watcher object and starts the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvFork object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::fork</methodname></member>
<member><classname>EvCheck</classname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evfork.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvFork::createStopped</refname>
<refpurpose>Creates a stopped instance of EvFork watcher class</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>object</type><methodname>EvFork::createStopped</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
The same as <methodname>EvFork::__construct</methodname>, but doesn't start
the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvFork(stopped) object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvFork::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

106
reference/ev/evidle.xml Normal file
View file

@ -0,0 +1,106 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evidle" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvIdle class</title>
<titleabbrev>EvIdle</titleabbrev>
<partintro>
<!-- {{{ EvIdle intro -->
<section xml:id="evidle.intro">
&reftitle.intro;
<para>
<classname>EvIdle</classname> watchers trigger events when no other events
of the same or higher priority are pending
(<classname>EvPrepare</classname>, <classname>EvCheck</classname> and other
<classname>EvIdle</classname> watchers do not count as receiving
<emphasis>events</emphasis>).
</para>
<para>
Thus, as long as your process is busy handling sockets or timeouts(or even
signals) of the same or higher priority it will not be triggered. But when
your process is in idle(or only lower-priority watchers are pending), the
<classname>EvIdle</classname> watchers are being called once per event loop
iteration - until stopped, that is, or your process receives more events
and becomes busy again with higher priority stuff.
</para>
<para>
Apart from keeping your process non-blocking(which is a useful on its own
sometimes), <classname>EvIdle</classname> watchers are a good place to do
<emphasis>"pseudo-background processing"</emphasis>, or delay processing
stuff to after the event loop has handled all outstanding events.
</para>
<para>
The most noticeable effect is that as long as any <emphasis>idle</emphasis>
watchers are active, the process will <emphasis>not</emphasis> block when
waiting for new events.
</para>
</section>
<!-- }}} -->
<section xml:id="evidle.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvIdle</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvIdle</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<!--<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>-->
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evidle')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evidle;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evidle.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvIdle::__construct</refname>
<refpurpose>Constructs the EvIdle watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvIdle::__construct</methodname>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Constructs the EvIdle watcher object and starts the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvIdle object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvIdle::createStopped</methodname></member>
<member><methodname>EvLoop::idle</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evidle.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvIdle::createStopped</refname>
<refpurpose>Creates instance of a stopped EvIdle watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>object</type><methodname>EvIdle::createStopped</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
The same as <methodname>EvIdle::__construct</methodname>, but doesn't start
the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvIdle object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvIdle::__construct</methodname></member>
<member><methodname>EvLoop::idle</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

139
reference/ev/evio.xml Normal file
View file

@ -0,0 +1,139 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evio" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvIo class</title>
<titleabbrev>EvIo</titleabbrev>
<partintro>
<!-- {{{ EvIo intro -->
<section xml:id="evio.intro">
&reftitle.intro;
<para>
<classname>EvIo</classname> watchers check whether a file descriptor(or
socket, or a stream castable to numeric file descriptor) is readable or writable in each
iteration of the event loop, or, more precisely, when reading would not
block the process and writing would at least be able to write some data.
This behaviour is called <emphasis>level-triggering</emphasis> because you keep receiving events
as long as the condition persists. Remember, you can stop the watcher if you
don't want to act on the event and neither want to receive future events.
</para>
<para>
You can register as many read and/or write event watchers per <parameter>fd</parameter> as
you want. Setting all file descriptors to non-blocking mode is also usually a
good idea(but not required).
</para>
<para>
Another thing you have to watch out for is that it is quite easy to receive
false readiness notifications, i.e. your callback might be called with
<constant>Ev::READ</constant> but a subsequent <emphasis>read()</emphasis>
will actually block because there is no data. It is very easy to get into this
situation. Thus it is best to always use non-blocking I/O: An extra
<emphasis>read()</emphasis> returning <constant>EAGAIN</constant>(or similar)
is far preferable to a program hanging until some data arrives.
</para>
<para>
If you cannot run the <parameter>fd</parameter> in non-blocking mode, then
you have to separately re-test whether a file descriptor is really ready.
Some people additionally use <constant>SIGALRM</constant> and an interval
timer, just to be sure thry won't block infinitely.
</para>
<para>
Always consider using non-blocking mode.
</para>
</section>
<!-- }}} -->
<section xml:id="evio.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvIo</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvIo</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evio.props.fd">fd</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evio.props.events">events</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evio')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvIo properties -->
<section xml:id="evio.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evio.props.fd">
<term><varname>fd</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evio.props.events">
<term><varname>events</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evio;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evio.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvIo::__construct</refname>
<refpurpose>Constructs EvIo watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvIo::__construct</methodname>
<methodparam><type>mixed</type><parameter>fd</parameter></methodparam>
<methodparam><type>int</type><parameter>events</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Constructs EvIo watcher object and starts the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>fd</parameter></term>
<listitem>
<para>
Can be a stream opened with <function>fopen</function> or similar
functions, numeric file descriptor, or socket.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>events</parameter></term>
<listitem>
<para>
<constant>Ev::READ</constant> and/or <constant>Ev::WRITE</constant>.
See <link linkend="ev.constants.watcher-revents">the bit masks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvIo object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvIo::createStopped</methodname></member>
<member><methodname>EvLoop::io</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evio.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvIo::createStopped</refname>
<refpurpose>The createStopped purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>EvIo::createStopped</methodname>
<methodparam><type>string</type><parameter>fd</parameter></methodparam>
<methodparam><type>string</type><parameter>events</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
The same as <methodname>EvIo::__construct</methodname>, but doesn't start
the watcher automatically.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>fd</parameter></term>
<listitem>
<para>
The same as for <methodname>EvIo::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>events</parameter></term>
<listitem>
<para>
The same as for <methodname>EvIo::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
See <link linkend="ev.watcher-callbacks">Watcher callbacks</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the watcher.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
<link linkend="ev.constants.watcher-pri">Watcher priority</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvIo object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvIo::__construct</methodname></member>
<member><methodname>EvLoop::io</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

72
reference/ev/evio/set.xml Normal file
View file

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evio.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvIo::set</refname>
<refpurpose>Configures the watcher</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvIo::set</methodname>
<methodparam><type>mixed</type><parameter>fd</parameter></methodparam>
<methodparam><type>int</type><parameter>events</parameter></methodparam>
</methodsynopsis>
<para>
Configures the EvIo watcher
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>fd</parameter></term>
<listitem>
<para>
The same as for <methodname>EvIo::__construct</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>events</parameter></term>
<listitem>
<para>
The same as for <methodname>EvIo::__construct</methodname>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

211
reference/ev/evloop.xml Normal file
View file

@ -0,0 +1,211 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evloop" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvLoop class</title>
<titleabbrev>EvLoop</titleabbrev>
<partintro>
<!-- {{{ EvLoop intro -->
<section xml:id="evloop.intro">
&reftitle.intro;
<para>
Represents an event loop that is always distinct from the <emphasis>default
loop</emphasis>. Unlike the <emphasis>default loop</emphasis>, it cannot
handle <classname>EvChild</classname> watchers.
</para>
<para>
If you are creating threads, you have to create a loop per thread, and use
the <emphasis>the default loop</emphasis> in the parent thread.
</para>
<para>The <emphasis>default event loop</emphasis> is initialized
automatically for you by <emphasis>Ev</emphasis>. You can access it by
means of methods of <classname>Ev</classname> class, or access the loop
itself via <methodname>EvLoop::defaultLoop</methodname> method.</para>
</section>
<!-- }}} -->
<section xml:id="evloop.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvLoop</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<modifier>final</modifier>
<classname>EvLoop</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.data">data</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.backend">backend</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.is-default-loop">is_default_loop</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.iteration">iteration</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.pending">pending</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.io-interval">io_interval</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.timeout-interval">timeout_interval</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evloop.props.depth">depth</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evloop')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvLoop properties -->
<section xml:id="evloop.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evloop.props.data">
<term><varname>data</varname></term>
<listitem>
<para>Custom data attached to loop</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.backend">
<term><varname>backend</varname></term>
<listitem>
<para><emphasis>Readonly</emphasis>.
The <link linkend="ev.constants.watcher-backends">backend flags</link>
indicating the event backend in use.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.is-default-loop">
<term><varname>is_default_loop</varname></term>
<listitem>
<para>
<emphasis>Readonly</emphasis>. &true; if it is the default event loop.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.iteration">
<term><varname>iteration</varname></term>
<listitem>
<para>The current iteration count of the loop. See
<methodname>Ev::iteration</methodname></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.pending">
<term><varname>pending</varname></term>
<listitem>
<para>
The number of pending watchers. <constant>0</constant> indicates that
there are no watchers pending.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.io-interval">
<term><varname>io_interval</varname></term>
<listitem>
<para>
By setting a higher <varname>io_interval</varname> you allow
<emphasis>libev</emphasis> to spend more time collecting
<classname>EvIo</classname> events, so you can handle more events per
iteration, at the cost of increasing latency. Timeouts (both
<classname>EvPeriodic</classname> and <classname>EvTimer</classname>)
will not be affected. Setting this to a non-zero value will introduce an
additional <literal>sleep()</literal> call into most loop iterations.
The sleep time ensures that <emphasis>libev</emphasis> will not poll for
<classname>EvIo</classname> events events more often than once per this
interval, on average. Many programs can usually benefit by setting the
<varname>io_interval</varname> to a value near <constant>0.1</constant>,
which is often enough for interactive servers(not for games). It usually
doesn't make much sense to set it to a lower value than
<constant>0.01</constant>, as this approaches the timing granularity of
most systems. Note that if you do transactions with the outside world
and you cant increase the parallelism, then this setting will limit
your transaction rate (if you need to poll once per transaction and the
<varname>io_interval</varname> is <constant>0.01</constant>, then you
can't do more than <constant>100</constant> transactions per second).
See also <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#FUNCTIONS_CONTROLLING_EVENT_LOOPS">FUNCTIONS
CONTROLLING EVENT LOOPS</link>.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.timeout-interval">
<term><varname>timeout_interval</varname></term>
<listitem>
<para>
By setting a higher <varname>timeout_interval</varname> you allow <emphasis>libev</emphasis>
to spend more time collecting timeouts, at the expense of increased
latency/jitter/inexactness(the watcher callback will be called later).
<classname>EvIo</classname> watchers will not be affected. Setting this to a non-null value
will not introduce any overhead in <emphasis>libev</emphasis>.
See also <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#FUNCTIONS_CONTROLLING_EVENT_LOOPS">FUNCTIONS
CONTROLLING EVENT LOOPS</link>.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evloop.props.depth">
<term><varname>depth</varname></term>
<listitem>
<para>The recursion depth. See <methodname>Ev::depth</methodname>.</para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evloop;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.backend" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::backend</refname>
<refpurpose>Returns an integer describing the backend used by libev.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>int</type><methodname>EvLoop::backend</methodname>
<void />
</methodsynopsis>
<para>
The same as <methodname>Ev::backend</methodname>, but for the loop instance.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns an integer describing the backend used by libev. See
<methodname>Ev::backend</methodname>.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member>
<methodname>Ev::backend</methodname>
</member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.check" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::check</refname>
<refpurpose>Creates EvCheck object associated with the current event loop
instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvCheck</type><methodname>EvLoop::check</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Creates EvCheck object associated with the current event loop instance.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same meaning as for
<methodname>EvCheck::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvCheck object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvCheck::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.child" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::child</refname>
<refpurpose>Creates EvChild object associated with the current event loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvChild</type><methodname>EvLoop::child</methodname>
<methodparam><type>string</type><parameter>pid</parameter></methodparam>
<methodparam><type>string</type><parameter>trace</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Creates EvChild object associated with the current event loop.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same meaning as for
<methodname>EvChild::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvChild object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvChild::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::__construct</refname>
<refpurpose>Constructs the event loop object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvLoop::__construct</methodname>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>NULL</initializer></methodparam>
<methodparam
choice="opt"><type>double</type><parameter>io_interval</parameter><initializer>0.0</initializer></methodparam>
<methodparam
choice="opt"><type>double</type><parameter>timeout_interval</parameter><initializer>0.0</initializer></methodparam>
</methodsynopsis>
<para>
Constructs the event loop object.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
One of the
<link linkend="ev.constants.loop-flags">event loop flags</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data associated with the loop.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>io_interval</parameter></term>
<listitem>
<para>
See <link linkend="evloop.props.io-interval">io_interval</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>timeout_interval</parameter></term>
<listitem>
<para>
See <link linkend="evloop.props.timeout-interval">timeout_interval</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns new EvLoop object.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::defaultLoop</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.defaultloop" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::defaultLoop</refname>
<refpurpose>Returns or creates the default event loop.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>EvLoop</type><methodname>EvLoop::defaultLoop</methodname>
<methodparam
choice="opt"><type>int</type><parameter>flags</parameter><initializer>Ev::FLAG_AUTO</initializer></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>NULL</initializer></methodparam>
<methodparam
choice="opt"><type>double</type><parameter>io_interval</parameter><initializer>0.</initializer></methodparam>
<methodparam
choice="opt"><type>double</type><parameter>timeout_interval</parameter><initializer>0.</initializer></methodparam>
</methodsynopsis>
<para>
If the default event loop is not created,
<methodname>EvLoop::defaultLoop</methodname> creates it with the specified
parameters. Otherwise, it just returns the object representing previously
created instance ignoring all the parameters.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
One of the
<link linkend="ev.constants.loop-flags">event loop flags</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Custom data to associate with the loop.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>io_collect_interval</parameter></term>
<listitem>
<para>
See <link linkend="evloop.props.io-interval">io_interval</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>timeout_collect_interval</parameter></term>
<listitem>
<para>
See <link linkend="evloop.props.timeout-interval">timeout_interval</link>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvLoop object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.embed" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::embed</refname>
<refpurpose>Creates an instance of EvEmbed watcher associated
with the current EvLoop object.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvEmbed</type><methodname>EvLoop::embed</methodname>
<methodparam><type>string</type><parameter>other</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Creates an instance of <classname>EvEmbed</classname> watcher associated
with the current <classname>EvLoop</classname> object.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
All parameters have the same meaning as for
<methodname>EvEmbed::__construct</methodname>.
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvEmbed object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvEmbed::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.fork" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::fork</refname>
<refpurpose>Creates EvFork watcher object associated with the current event
loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvFork</type><methodname>EvLoop::fork</methodname>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvFork watcher object associated with the current event
loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
All parameters have the same meaning as for <methodname>EvFork::__construct</methodname>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvFork object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvFork::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.idle" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::idle</refname>
<refpurpose>Creates EvIdle watcher object associated with the current event
loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvIdle</type><methodname>EvLoop::idle</methodname>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvIdle watcher object associated with the current event
loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All the parameters have the same meaning as for
<methodname>EvIdle::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvIdle object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvIdle::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.invokepending" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::invokePending</refname>
<refpurpose>Invoke all pending watchers while resetting their pending state</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::invokePending</methodname>
<void />
</methodsynopsis>
<para>
Invoke all pending watchers while resetting their pending state.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.io" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::io</refname>
<refpurpose>Create EvIo watcher object associated with the current event
loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvIo</type><methodname>EvLoop::io</methodname>
<methodparam><type>mixed</type><parameter>fd</parameter></methodparam>
<methodparam><type>int</type><parameter>events</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Create EvIo watcher object associated with the current event
loop instance.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same meaning as for
<methodname>EvIo::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvIo object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvIo::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.loopfork" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::loopFork</refname>
<refpurpose>Must be called after a fork</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::loopFork</methodname>
<void />
</methodsynopsis>
<para>
Must be called after a <emphasis>fork</emphasis> in the child, before
entering or continuing the event loop. An alternative is to use
<constant>Ev::FLAG_FORKCHECK</constant> which calls this function
automatically, at some performance loss (refer to the <link
xlink:href="http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#FUNCTIONS_CONTROLLING_EVENT_LOOPS">libev
documentation</link>).
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.now" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::now</refname>
<refpurpose>Returns the current "event loop time"</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>double</type><methodname>EvLoop::now</methodname>
<void />
</methodsynopsis>
<para>
Returns the current "event loop time", which is the time the event loop
received events and started processing them. This timestamp does not change
as long as callbacks are being processed, and this is also the base time
used for relative timers. You can treat it as the timestamp of the event
occurring(or more correctly, libev finding out about it).
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns time of the event loop in (fractional) seconds.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::now</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.nowupdate" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::nowUpdate</refname>
<refpurpose>Establishes the current time by querying the kernel, updating the time
returned by EvLoop::now in the progress.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::nowUpdate</methodname>
<void />
</methodsynopsis>
<para>
Establishes the current time by querying the kernel, updating the time
returned by <methodname>EvLoop::now</methodname> in the progress. This is a
costly operation and is usually done automatically within
<methodname>EvLoop::run</methodname>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::now</methodname></member>
<member><methodname>Ev::nowUpdate</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.periodic" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::periodic</refname>
<refpurpose>Creates EvPeriodic watcher object associated with the current
event loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvPeriodic</type><methodname>EvLoop::periodic</methodname>
<methodparam><type>double</type><parameter>offset</parameter></methodparam>
<methodparam><type>double</type><parameter>interval</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvPeriodic watcher object associated with the current
event loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same maening as for
<methodname>EvPeriodic::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvPeriodic object on success.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvPeriodic::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.prepare" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::prepare</refname>
<refpurpose>Creates EvPrepare watcher object associated with the current
event loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvPrepare</type><methodname>EvLoop::prepare</methodname>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvPrepare watcher object associated with the current
event loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same maening as for
<methodname>EvPrepare</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvPrepare object on success
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvPrepare::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.resume" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::resume</refname>
<refpurpose>Resume previously suspended default event loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::resume</methodname>
<void />
</methodsynopsis>
<para>
<methodname>EvLoop::suspend</methodname> and
<methodname>EvLoop::resume</methodname> methods suspend and resume a loop
correspondingly.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::suspend</methodname></member>
<member><methodname>Ev::resume</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

112
reference/ev/evloop/run.xml Normal file
View file

@ -0,0 +1,112 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.run" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::run</refname>
<refpurpose>Begin checking for events and calling callbacks for the loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::run</methodname>
<methodparam
choice="opt"><type>int</type><parameter>flags</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Begin checking for events and calling callbacks for the current event loop.
Returns when a callback calls <methodname>Ev::stop</methodname> method, or
the flags are nonzero(in which case the return value is true) or when there
are no active watchers which reference the
loop(<methodname>EvWatcher::keepalive</methodname> is &true;), in which case
the return value will be &false;. The return value can generally be
interpreted as <emphasis>if &true;, there is more work left
to do</emphasis>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Optional parameter <parameter>flags</parameter> can be one of the following:
<table>
<title>
List for possible values of <parameter>flags</parameter>
</title>
<tgroup cols="2">
<thead>
<row>
<entry><parameter>flags</parameter></entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><constant>0</constant></entry>
<entry>The default behavior described above</entry>
</row>
<row>
<entry><constant>Ev::RUN_ONCE</constant></entry>
<entry>Block at most one(wait, but don't loop)</entry>
</row>
<row>
<entry><constant>Ev::RUN_NOWAIT</constant></entry>
<entry>Don't block at all(fetch/handle events, but don't wait)</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>
See <link linkend="ev.constants.run-flags">the run flag
constants</link>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::stop</methodname></member>
<member><methodname>Ev::run</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.signal" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::signal</refname>
<refpurpose>Creates EvSignal watcher object associated with the current
event loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvSignal</type><methodname>EvLoop::signal</methodname>
<methodparam><type>int</type><parameter>signum</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvSignal watcher object associated with the current
event loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same meaning as for
<methodname>EvSignal::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvSignal object on success
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvSignal::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.stat" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::stat</refname>
<refpurpose>Creates EvStat watcher object associated with the current event
loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvStat</type><methodname>EvLoop::stat</methodname>
<methodparam><type>string</type><parameter>path</parameter></methodparam>
<methodparam><type>double</type><parameter>interval</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvStat watcher object associated with the current event
loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same meaning as for
<methodname>EvSignal::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvStat object on success
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvSignal::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.stop" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::stop</refname>
<refpurpose>Stops the event loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::stop</methodname>
<methodparam choice="opt"><type>int</type><parameter>how</parameter></methodparam>
</methodsynopsis>
<para>
Stops the event loop
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>how</parameter></term>
<listitem>
<para>
One of <emphasis>Ev::BREAK_*</emphasis> <link
linkend="ev.constants.break-flags">constants</link>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::run</methodname></member>
<member><methodname>Ev::stop</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.suspend" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::suspend</refname>
<refpurpose>Suspend the loop</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::suspend</methodname>
<void />
</methodsynopsis>
<para>
<methodname>EvLoop::suspend</methodname> and
<methodname>EvLoop::resume</methodname> methods suspend and resume a loop
correspondingly.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvLoop::resume</methodname></member>
<member><methodname>Ev::suspend</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.timer" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::timer</refname>
<refpurpose>Creates EvTimer watcher object associated with the current event
loop instance</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>EvTimer</type><methodname>EvLoop::timer</methodname>
<methodparam><type>double</type><parameter>after</parameter></methodparam>
<methodparam><type>double</type><parameter>repeat</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
<methodparam
choice="opt"><type>mixed</type><parameter>data</parameter><initializer>&null;</initializer></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>priority</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates EvTimer watcher object associated with the current event
loop instance
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>All parameters have the same meaning as for
<methodname>EvTimer::__construct</methodname></para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns EvTimer object on success
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvTimer::__construct</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evloop.verify" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvLoop::verify</refname>
<refpurpose>Performs internal consistency checks(for debugging)</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvLoop::verify</methodname>
<void />
</methodsynopsis>
<para>
Performs internal consistency checks(for debugging
<emphasis>libev</emphasis>) and abort the program if any data structures
were found to be corrupted.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>Ev::verify</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

151
reference/ev/evperiodic.xml Normal file
View file

@ -0,0 +1,151 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evperiodic" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvPeriodic class</title>
<titleabbrev>EvPeriodic</titleabbrev>
<partintro>
<!-- {{{ EvPeriodic intro -->
<section xml:id="evperiodic.intro">
&reftitle.intro;
<para>
Periodic watchers are also timers of a kind, but they are very versatile.
</para>
<para>
Unlike <classname>EvTimer</classname>, <classname>EvPeriodic</classname>
watchers are not based on real time(or relative time, the physical time
that passes) but on wall clock time(absolute time, calendar or clock). The
difference is that wall clock time can run faster or slower than real time,
and time jumps are not uncommon(e.g. when you adjust it).
</para>
<para>
You can tell a <classname>EvPeriodic</classname> watcher to trigger after
some specific point in time: for example, if you tell a
<classname>EvPeriodic</classname> watcher to trigger <emphasis>"in 10
seconds"</emphasis> (by specifying e.g.
<methodname>EvLoop::now</methodname> + <constant>10.0</constant>, that
is, an absolute time not a delay) and then reset your system clock to
<emphasis>January</emphasis> of the previous year, then it will take a year
or more to trigger the event (unlike an <classname>EvTimer</classname>,
which would still trigger roughly <constant>10</constant> seconds after
starting it, as it uses a relative timeout).
</para>
<para>
As with timers, the callback is guaranteed to be invoked only when the
point in time where it is supposed to trigger has passed. If multiple
timers become ready during the same loop iteration then the ones with
earlier time-out values are invoked before ones with later time-out values
(but this is no longer true when a callback calls
<methodname>EvLoop::run</methodname> recursively).
</para>
</section>
<!-- }}} -->
<section xml:id="evperiodic.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvPeriodic</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvPeriodic</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evperiodic.props.offset">offset</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evperiodic.props.interval">interval</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evperiodic')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvPeriodic properties -->
<section xml:id="evperiodic.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evperiodic.props.offset">
<term><varname>offset</varname></term>
<listitem>
<para>
When repeating, this contains the offset value, otherwise this is the
absolute point in time(the offset value passed to
<methodname>EvPeriodic::set</methodname>, although
<emphasis>libev</emphasis> might modify this value for better numerical
stability).
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evperiodic.props.interval">
<term><varname>interval</varname></term>
<listitem>
<para>
The current interval value. Can be modified any time, but changes only
take effect when the periodic timer fires or
<methodname>EvPeriodic::again</methodname> is being called.
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evperiodic;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evperiodic.again" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPeriodic::again</refname>
<refpurpose>Simply stops and restarts the periodic watcher again.</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvPeriodic::again</methodname>
<void />
</methodsynopsis>
<para>
Simply stops and restarts the periodic watcher again. This is only useful
when you changed some attributes.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>EvTimer::again</methodname></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evperiodic.at" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPeriodic::at</refname>
<refpurpose>Returns the absolute time that this
watcher is supposed to trigger next</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>double</type><methodname>EvPeriodic::at</methodname>
<void />
</methodsynopsis>
<para>
When the watcher is active, returns the absolute time that this
watcher is supposed to trigger next. This is not the same as the offset
argument to <methodname>EvPeriodic::set</methodname> or
<methodname>EvPeriodic::__construct</methodname>, but indeed works even in
interval mode.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the absolute time this watcher is supposed to trigger next in
seconds.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,143 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evperiodic.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPeriodic::__construct</refname>
<refpurpose>Constructs EvPeriodic watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvPeriodic::__construct</methodname>
<methodparam><type>double</type><parameter>offset</parameter></methodparam>
<methodparam><type>string</type><parameter>interval</parameter></methodparam>
<methodparam><type>callable</type><parameter>reschedule_cb</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
Constructs EvPeriodic watcher object
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>offset</parameter></term>
<listitem>
<para>
See <link linkend="ev.periodic-modes">Periodic watcher operation
modes</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
See <link linkend="ev.periodic-modes">Periodic watcher operation
modes</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>reschedule_cb</parameter></term>
<listitem>
<para>
Rescheduler callback. You can pass &null;.
See <link linkend="ev.periodic-modes">Periodic watcher operation
modes</link>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvPeriodic::__construct</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evperiodic.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPeriodic::createStopped</refname>
<refpurpose>The createStopped purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>EvPeriodic::createStopped</methodname>
<methodparam><type>string</type><parameter>offset</parameter></methodparam>
<methodparam><type>string</type><parameter>interval</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>offset</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvPeriodic::createStopped</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evperiodic.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPeriodic::set</refname>
<refpurpose>The set purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvPeriodic::set</methodname>
<methodparam><type>string</type><parameter>offset</parameter></methodparam>
<methodparam><type>string</type><parameter>interval</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>offset</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvPeriodic::set</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,76 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evprepare" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvPrepare class</title>
<titleabbrev>EvPrepare</titleabbrev>
<partintro>
<!-- {{{ EvPrepare intro -->
<section xml:id="evprepare.intro">
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evcheck.intro')/*)" />
</section>
<!-- }}} -->
<section xml:id="evprepare.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvPrepare</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvPrepare</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<!--<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>-->
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('evwatcher.synopsis')/descendant::db:fieldsynopsis)" />
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evprepare')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
&reference.ev.entities.evprepare;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,114 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evprepare.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPrepare::__construct</refname>
<refpurpose>The __construct purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvPrepare::__construct</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvPrepare::__construct</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,114 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evprepare.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvPrepare::createStopped</refname>
<refpurpose>The createStopped purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>object</type><methodname>EvPrepare::createStopped</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvPrepare::createStopped</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

122
reference/ev/evsignal.xml Normal file
View file

@ -0,0 +1,122 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evsignal" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvSignal class</title>
<titleabbrev>EvSignal</titleabbrev>
<partintro>
<!-- {{{ EvSignal intro -->
<section xml:id="evsignal.intro">
&reftitle.intro;
<para>
</para>
</section>
<!-- }}} -->
<section xml:id="evsignal.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvSignal</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvSignal</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evsignal.props.signum">signum</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evsignal')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvSignal properties -->
<section xml:id="evsignal.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evsignal.props.is-active">
<term><varname>is_active</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evsignal.props.data">
<term><varname>data</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evsignal.props.is-pending">
<term><varname>is_pending</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evsignal.props.priority">
<term><varname>priority</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evsignal.props.signum">
<term><varname>signum</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evsignal;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evsignal.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvSignal::__construct</refname>
<refpurpose>The __construct purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvSignal::__construct</methodname>
<methodparam><type>string</type><parameter>signum</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>signum</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvSignal::__construct</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evsignal.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvSignal::createStopped</refname>
<refpurpose>The createStopped purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>EvSignal::createStopped</methodname>
<methodparam><type>string</type><parameter>signum</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>signum</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvSignal::createStopped</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evsignal.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvSignal::set</refname>
<refpurpose>The set purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvSignal::set</methodname>
<methodparam><type>string</type><parameter>signum</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>signum</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvSignal::set</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

132
reference/ev/evstat.xml Normal file
View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evstat" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvStat class</title>
<titleabbrev>EvStat</titleabbrev>
<partintro>
<!-- {{{ EvStat intro -->
<section xml:id="evstat.intro">
&reftitle.intro;
<para>
</para>
</section>
<!-- }}} -->
<section xml:id="evstat.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvStat</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvStat</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evstat.props.path">path</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evstat.props.interval">interval</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evstat')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvStat properties -->
<section xml:id="evstat.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evstat.props.is-active">
<term><varname>is_active</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evstat.props.data">
<term><varname>data</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evstat.props.is-pending">
<term><varname>is_pending</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evstat.props.priority">
<term><varname>priority</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evstat.props.path">
<term><varname>path</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evstat.props.interval">
<term><varname>interval</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evstat;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evstat.attr" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvStat::attr</refname>
<refpurpose>The attr purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvStat::attr</methodname>
<void />
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvStat::attr</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evstat.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvStat::__construct</refname>
<refpurpose>The __construct purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvStat::__construct</methodname>
<methodparam><type>string</type><parameter>path</parameter></methodparam>
<methodparam><type>string</type><parameter>interval</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>path</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvStat::__construct</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evstat.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvStat::createStopped</refname>
<refpurpose>The createStopped purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>EvStat::createStopped</methodname>
<methodparam><type>string</type><parameter>path</parameter></methodparam>
<methodparam><type>string</type><parameter>interval</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>path</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvStat::createStopped</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evstat.prev" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvStat::prev</refname>
<refpurpose>The prev purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvStat::prev</methodname>
<void />
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvStat::prev</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

105
reference/ev/evstat/set.xml Normal file
View file

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evstat.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvStat::set</refname>
<refpurpose>The set purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvStat::set</methodname>
<methodparam><type>string</type><parameter>path</parameter></methodparam>
<methodparam><type>string</type><parameter>interval</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>path</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvStat::set</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evstat.stat" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvStat::stat</refname>
<refpurpose>The stat purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvStat::stat</methodname>
<void />
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvStat::stat</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

132
reference/ev/evtimer.xml Normal file
View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evtimer" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvTimer class</title>
<titleabbrev>EvTimer</titleabbrev>
<partintro>
<!-- {{{ EvTimer intro -->
<section xml:id="evtimer.intro">
&reftitle.intro;
<para>
</para>
</section>
<!-- }}} -->
<section xml:id="evtimer.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvTimer</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>EvTimer</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evtimer.props.repeat">repeat</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evtimer.props.remaining">remaining</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evtimer')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvTimer properties -->
<section xml:id="evtimer.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evtimer.props.is-active">
<term><varname>is_active</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evtimer.props.data">
<term><varname>data</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evtimer.props.is-pending">
<term><varname>is_pending</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evtimer.props.priority">
<term><varname>priority</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evtimer.props.repeat">
<term><varname>repeat</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="evtimer.props.remaining">
<term><varname>remaining</varname></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evtimer;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evtimer.again" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvTimer::again</refname>
<refpurpose>The again purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvTimer::again</methodname>
<void />
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvTimer::again</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evtimer.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvTimer::__construct</refname>
<refpurpose>The __construct purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>EvTimer::__construct</methodname>
<methodparam><type>string</type><parameter>after</parameter></methodparam>
<methodparam><type>string</type><parameter>repeat</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>after</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>repeat</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvTimer::__construct</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evtimer.createstopped" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvTimer::createStopped</refname>
<refpurpose>The createStopped purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <modifier>static</modifier> <type>void</type><methodname>EvTimer::createStopped</methodname>
<methodparam><type>string</type><parameter>after</parameter></methodparam>
<methodparam><type>string</type><parameter>repeat</parameter></methodparam>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>priority</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>after</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>repeat</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>priority</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvTimer::createStopped</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evtimer.set" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvTimer::set</refname>
<refpurpose>The set purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvTimer::set</methodname>
<methodparam><type>string</type><parameter>after</parameter></methodparam>
<methodparam><type>string</type><parameter>repeat</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>after</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>repeat</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvTimer::set</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

130
reference/ev/evwatcher.xml Normal file
View file

@ -0,0 +1,130 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.evwatcher" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The EvWatcher class</title>
<titleabbrev>EvWatcher</titleabbrev>
<partintro>
<!-- {{{ EvWatcher intro -->
<section xml:id="evwatcher.intro">
&reftitle.intro;
<para>
</para>
</section>
<!-- }}} -->
<section xml:id="evwatcher.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>EvWatcher</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<modifier>abstract</modifier>
<classname>EvWatcher</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evwatcher.props.is-active">is_active</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evwatcher.props.data">data</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evwatcher.props.is-pending">is_pending</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<varname linkend="evwatcher.props.priority">priority</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.evwatcher')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ EvWatcher properties -->
<section xml:id="evwatcher.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="evwatcher.props.is-active">
<term><varname>is_active</varname></term>
<listitem>
<para><emphasis>Readonly</emphasis>. &true; if the watcher is active.
&false; otherwise.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evwatcher.props.data">
<term><varname>data</varname></term>
<listitem>
<para>User custom data associated with the watcher</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evwatcher.props.is-pending">
<term><varname>is_pending</varname></term>
<listitem>
<para><emphasis>Readonly</emphasis>.&true; if the watcher is pending,
i.e. it has outstanding events, but its callback has not yet been invoked.
&false; otherwise. As long, as a watcher is pending(but not active), you
must <emphasis>not</emphasis> change its priority.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="evwatcher.props.priority">
<term><varname>priority</varname></term>
<listitem>
<para><type>Integer</type> between <constant>EV_MINPRI</constant> and
<constant>EV_MAXPRI</constant>. Pending watchers with higher priority
will be invoked before watchers with lower priority, but priority will
not keep watchers from being executed(except for
<classname>EvIdle</classname> watchers). If you need to suppress
invocation when higher priority events are pending you need to look at
<classname>EvIdle</classname> watchers, which provide this functionality.</para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.ev.entities.evwatcher;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.clear" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::clear</refname>
<refpurpose>The clear purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvWatcher::clear</methodname>
<void />
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::clear</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::__construct</refname>
<refpurpose>Abstract constructor of a watcher object</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>abstract</modifier> <modifier>public</modifier> <methodname>EvWatcher::__construct</methodname>
<void />
</methodsynopsis>
<para>
<methodname>EvWatcher::__construct</methodname> is an abstract constructor
of a watcher object implemented in the derived classes.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::__construct</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.feed" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::feed</refname>
<refpurpose>The feed purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvWatcher::feed</methodname>
<methodparam><type>string</type><parameter>revents</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>revents</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::feed</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.getloop" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::getLoop</refname>
<refpurpose>The getLoop purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvWatcher::getLoop</methodname>
<void />
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::getLoop</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.invoke" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::invoke</refname>
<refpurpose>The invoke purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvWatcher::invoke</methodname>
<methodparam><type>string</type><parameter>revents</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>revents</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::invoke</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.keepalive" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::keepalive</refname>
<refpurpose>The keepalive purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvWatcher::keepalive</methodname>
<methodparam choice="opt"><type>string</type><parameter>value</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>value</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::keepalive</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="evwatcher.setcallback" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>EvWatcher::setCallback</refname>
<refpurpose>The setCallback purpose</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>EvWatcher::setCallback</methodname>
<methodparam><type>string</type><parameter>callback</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>EvWatcher::setCallback</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
/* ... */
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
...
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

Some files were not shown because too many files have changed in this diff Show more