From 9c4448f04bc46d81f795177671dfedd546e08725 Mon Sep 17 00:00:00 2001
From: root
Date: Tue, 27 Nov 2007 08:20:41 +0000
Subject: update c++ if
---
ev++.h | 51 ++++++++++++++++++++++++++++++++++++---------------
ev.3 | 4 ++++
ev.html | 6 +++++-
ev.pod | 4 ++++
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(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(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(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 @@
-
+
@@ -1633,6 +1633,10 @@ constructor already takes the loop.
Invokes ev_embed_sweep
.
+ w->update () ev::stat
only
+
+ Invokes ev_stat_stat
.
+
diff --git a/ev.pod b/ev.pod
index cc478bd..687a53d 100644
--- a/ev.pod
+++ b/ev.pod
@@ -1640,6 +1640,10 @@ C function.
Invokes C.
+=item w->update () C only
+
+Invokes C.
+
=back
=back
--
cgit v1.2.3