summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ev++.h51
-rw-r--r--ev.34
-rw-r--r--ev.html6
-rw-r--r--ev.pod4
4 files changed, 49 insertions, 16 deletions
diff --git a/ev++.h b/ev++.h
index 0f51bd5..9d0df26 100644
--- a/ev++.h
+++ b/ev++.h
@@ -193,7 +193,7 @@ namespace ev {
}
EV_END_WATCHER (timer, timer)
- #if EV_PERIODICS
+ #if EV_PERIODIC_ENABLE
EV_BEGIN_WATCHER (periodic, periodic)
void set (ev_tstamp at, ev_tstamp interval = 0.)
{
@@ -216,18 +216,6 @@ namespace ev {
EV_END_WATCHER (periodic, periodic)
#endif
- EV_BEGIN_WATCHER (idle, idle)
- void set () { }
- EV_END_WATCHER (idle, idle)
-
- EV_BEGIN_WATCHER (prepare, prepare)
- void set () { }
- EV_END_WATCHER (prepare, prepare)
-
- EV_BEGIN_WATCHER (check, check)
- void set () { }
- EV_END_WATCHER (check, check)
-
EV_BEGIN_WATCHER (sig, signal)
void set (int signum)
{
@@ -260,8 +248,42 @@ namespace ev {
}
EV_END_WATCHER (child, child)
- #if EV_MULTIPLICITY
+ #if EV_STAT_ENABLE
+ EV_BEGIN_WATCHER (stat, stat)
+ void set (const char *path, ev_tstamp interval = 0.)
+ {
+ int active = is_active ();
+ if (active) stop ();
+ ev_stat_set (static_cast<ev_stat *>(this), path, interval);
+ if (active) start ();
+ }
+ void start (const char *path, ev_tstamp interval = 0.)
+ {
+ set (path, interval);
+ start ();
+ }
+
+ void update ()
+ {
+ ev_stat_stat (EV_A_ static_cast<ev_stat *>(this));
+ }
+ EV_END_WATCHER (stat, stat)
+ #endif
+
+ EV_BEGIN_WATCHER (idle, idle)
+ void set () { }
+ EV_END_WATCHER (idle, idle)
+
+ EV_BEGIN_WATCHER (prepare, prepare)
+ void set () { }
+ EV_END_WATCHER (prepare, prepare)
+
+ EV_BEGIN_WATCHER (check, check)
+ void set () { }
+ EV_END_WATCHER (check, check)
+
+ #if EV_EMBED_ENABLE
EV_BEGIN_WATCHER (embed, embed)
void set (struct ev_loop *loop)
{
@@ -282,7 +304,6 @@ namespace ev {
ev_embed_sweep (EV_A_ static_cast<ev_embed *>(this));
}
EV_END_WATCHER (embed, embed)
-
#endif
#undef EV_CONSTRUCT
diff --git a/ev.3 b/ev.3
index 4cddbe3..31d1f6b 100644
--- a/ev.3
+++ b/ev.3
@@ -1763,6 +1763,10 @@ For \f(CW\*(C`ev::timer\*(C'\fR and \f(CW\*(C`ev::periodic\*(C'\fR, this invokes
.el .IP "w\->sweep () \f(CWev::embed\fR only" 4
.IX Item "w->sweep () ev::embed only"
Invokes \f(CW\*(C`ev_embed_sweep\*(C'\fR.
+.ie n .IP "w\->update () ""ev::stat"" only" 4
+.el .IP "w\->update () \f(CWev::stat\fR only" 4
+.IX Item "w->update () ev::stat only"
+Invokes \f(CW\*(C`ev_stat_stat\*(C'\fR.
.RE
.RS 4
.RE
diff --git a/ev.html b/ev.html
index f24dedd..f643a6b 100644
--- a/ev.html
+++ b/ev.html
@@ -6,7 +6,7 @@
<meta name="description" content="Pod documentation for libev" />
<meta name="inputfile" content="&lt;standard input&gt;" />
<meta name="outputfile" content="&lt;standard output&gt;" />
- <meta name="created" content="Tue Nov 27 09:11:42 2007" />
+ <meta name="created" content="Tue Nov 27 09:20:40 2007" />
<meta name="generator" content="Pod::Xhtml 1.57" />
<link rel="stylesheet" href="http://res.tst.eu/pod.css"/></head>
<body>
@@ -1633,6 +1633,10 @@ constructor already takes the loop.</p>
<dd>
<p>Invokes <code>ev_embed_sweep</code>.</p>
</dd>
+ <dt>w-&gt;update () <code>ev::stat</code> only</dt>
+ <dd>
+ <p>Invokes <code>ev_stat_stat</code>.</p>
+ </dd>
</dl>
</p>
</dd>
diff --git a/ev.pod b/ev.pod
index cc478bd..687a53d 100644
--- a/ev.pod
+++ b/ev.pod
@@ -1640,6 +1640,10 @@ C<ev_TYPE_again> function.
Invokes C<ev_embed_sweep>.
+=item w->update () C<ev::stat> only
+
+Invokes C<ev_stat_stat>.
+
=back
=back