ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/EV/EV.xs
(Generate patch)

Comparing EV/EV.xs (file contents):
Revision 1.98 by root, Fri Dec 21 05:10:01 2007 UTC vs.
Revision 1.103 by root, Wed Dec 26 14:55:22 2007 UTC

3#include "XSUB.h" 3#include "XSUB.h"
4 4
5/*#include <netinet/in.h>*/ 5/*#include <netinet/in.h>*/
6 6
7#define EV_PROTOTYPES 1 7#define EV_PROTOTYPES 1
8#define EV_USE_NANOSLEEP EV_USE_MONOTONIC
8#define EV_H <ev.h> 9#define EV_H <ev.h>
9#include "EV/EVAPI.h" 10#include "EV/EVAPI.h"
10 11
11/* fix perl api breakage */ 12/* fix perl api breakage */
12#undef signal 13#undef signal
40 ev_ref (e_loop (w)); 41 ev_ref (e_loop (w));
41 42
42#define START(type,w) \ 43#define START(type,w) \
43 do { \ 44 do { \
44 UNREF (w); \ 45 UNREF (w); \
45 ev_ ## type ## _start (e_loop (w), w); \ 46 ev_ ## type ## _start (e_loop (w), w); \
46 } while (0) 47 } while (0)
47 48
48#define STOP(type,w) \ 49#define STOP(type,w) \
49 do { \ 50 do { \
50 REF (w); \ 51 REF (w); \
51 ev_ ## type ## _stop (e_loop (w), w); \ 52 ev_ ## type ## _stop (e_loop (w), w); \
52 } while (0) 53 } while (0)
53 54
54#define RESET(type,w,seta) \ 55#define RESET(type,w,seta) \
55 do { \ 56 do { \
56 int active = ev_is_active (w); \ 57 int active = ev_is_active (w); \
388 evapi.sv_signum = sv_signum; 389 evapi.sv_signum = sv_signum;
389 evapi.supported_backends = ev_supported_backends (); 390 evapi.supported_backends = ev_supported_backends ();
390 evapi.recommended_backends = ev_recommended_backends (); 391 evapi.recommended_backends = ev_recommended_backends ();
391 evapi.embeddable_backends = ev_embeddable_backends (); 392 evapi.embeddable_backends = ev_embeddable_backends ();
392 evapi.time = ev_time; 393 evapi.time = ev_time;
394 evapi.sleep = ev_sleep;
393 evapi.loop_new = ev_loop_new; 395 evapi.loop_new = ev_loop_new;
394 evapi.loop_destroy = ev_loop_destroy; 396 evapi.loop_destroy = ev_loop_destroy;
395 evapi.loop_fork = ev_loop_fork; 397 evapi.loop_fork = ev_loop_fork;
396 evapi.loop_count = ev_loop_count; 398 evapi.loop_count = ev_loop_count;
397 evapi.now = ev_now; 399 evapi.now = ev_now;
453 RETVAL = newSVsv (default_loop_sv); 455 RETVAL = newSVsv (default_loop_sv);
454} 456}
455 OUTPUT: 457 OUTPUT:
456 RETVAL 458 RETVAL
457 459
460void ev_default_destroy ()
461 CODE:
462 ev_default_destroy ();
463 SvREFCNT_dec (default_loop_sv);
464 default_loop_sv = 0;
465
466unsigned int ev_supported_backends ()
467
468unsigned int ev_recommended_backends ()
469
470unsigned int ev_embeddable_backends ()
471
458NV ev_time () 472NV ev_time ()
459 473
460NV ev_now () 474NV ev_now ()
461 C_ARGS: evapi.default_loop 475 C_ARGS: evapi.default_loop
462 476
463unsigned int ev_backend () 477unsigned int ev_backend ()
464 C_ARGS: evapi.default_loop 478 C_ARGS: evapi.default_loop
465 479
466unsigned int ev_loop_count () 480unsigned int ev_loop_count ()
467 C_ARGS: evapi.default_loop 481 C_ARGS: evapi.default_loop
482
483void ev_set_io_collect_interval (NV interval)
484 C_ARGS: evapi.default_loop, interval
485
486void ev_set_timeout_collect_interval (NV interval)
487 C_ARGS: evapi.default_loop, interval
468 488
469void ev_loop (int flags = 0) 489void ev_loop (int flags = 0)
470 C_ARGS: evapi.default_loop, flags 490 C_ARGS: evapi.default_loop, flags
471 491
472void ev_unloop (int how = 1) 492void ev_unloop (int how = 1)
687 { 707 {
688 SvREFCNT_dec (w->data); 708 SvREFCNT_dec (w->data);
689 w->data = newSVsv (new_data); 709 w->data = newSVsv (new_data);
690 } 710 }
691} 711}
712 OUTPUT:
713 RETVAL
714
715SV *loop (ev_watcher *w)
716 CODE:
717 RETVAL = newRV_inc (w->loop);
692 OUTPUT: 718 OUTPUT:
693 RETVAL 719 RETVAL
694 720
695int priority (ev_watcher *w, int new_priority = 0) 721int priority (ev_watcher *w, int new_priority = 0)
696 CODE: 722 CODE:
909void DESTROY (ev_idle *w) 935void DESTROY (ev_idle *w)
910 CODE: 936 CODE:
911 STOP (idle, w); 937 STOP (idle, w);
912 e_destroy (w); 938 e_destroy (w);
913 939
914MODULE = EV PACKAGE = EV::Prepare PREFIX = ev_check_ 940MODULE = EV PACKAGE = EV::Prepare PREFIX = ev_prepare_
915 941
916void ev_prepare_start (ev_prepare *w) 942void ev_prepare_start (ev_prepare *w)
917 CODE: 943 CODE:
918 START (prepare, w); 944 START (prepare, w);
919 945
1139 1165
1140void ev_loop_fork (struct ev_loop *loop) 1166void ev_loop_fork (struct ev_loop *loop)
1141 1167
1142NV ev_now (struct ev_loop *loop) 1168NV ev_now (struct ev_loop *loop)
1143 1169
1170void ev_set_io_collect_interval (struct ev_loop *loop, NV interval)
1171
1172void ev_set_timeout_collect_interval (struct ev_loop *loop, NV interval)
1173
1144unsigned int ev_backend (struct ev_loop *loop) 1174unsigned int ev_backend (struct ev_loop *loop)
1145 1175
1146unsigned int ev_loop_count (struct ev_loop *loop) 1176unsigned int ev_loop_count (struct ev_loop *loop)
1147 1177
1148void ev_loop (struct ev_loop *loop, int flags = 0) 1178void ev_loop (struct ev_loop *loop, int flags = 0)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines