From 65f194959c55548a611f1dc5ef71020de7787b97 Mon Sep 17 00:00:00 2001 From: fcolin Date: Wed, 6 Sep 2006 09:59:16 +0000 Subject: mise a jour doc version 3.9 --- doc/ivy-c.sgml | 39 +++++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 14 deletions(-) (limited to 'doc/ivy-c.sgml') diff --git a/doc/ivy-c.sgml b/doc/ivy-c.sgml index 7365746..0021035 100644 --- a/doc/ivy-c.sgml +++ b/doc/ivy-c.sgml @@ -416,9 +416,9 @@ another library. Channels You can get a channel to be managed from the Ivy main loop by using functions -IvyChannelSetUp and IvyChannelClose. +IvyChannelAdd and IvyChannelRemove. -Channel IvyChannelSetUp (HANDLE fd, +Channel IvyChannelAdd (HANDLE fd, void* data, ChannelHandleDelete handle_delete, ChannelHandleRead handle_read); @@ -428,7 +428,7 @@ descriptor fd, and function handle_delete -void IvyChannelClose (Channel ch); +void IvyChannelRemove (Channel ch); terminates the management of channel ch. @@ -529,7 +529,7 @@ following ones: IvyXtChannelAppContect(app_context) with an existing Xt context You can add channels to be handled by Ivy, for instance, - stdin, with the IvyXtChannelSetUp function + stdin, with the IvyChannelAdd function IvyInit(char *name,char *readyMessage,IvyApplicationCallback cb,void *cbUserData,IvyDieCallback dieCb,void *dieCbUserdata) IvyBindMsg() for the behavior @@ -683,18 +683,21 @@ int main( int argc, char *argv[] ) { Functions to be provided You can decide to use the main loop from another toolkit than the X Toolkit -or the Tk toolkit. If you do that, you'll have to define three functions that -Ivy will use to get its own channels managed by the other toolkit. The three -following global variables should be defined: +or the Tk toolkit. If you do that, you'll have to define four functions that +Ivy will use to get its own channels managed by the other toolkit. +you should link ivy with your new module insted of the ivy(xxx)loop module. +These functions are declared in ivychannel.h: -ChannelInit channel_init; -ChannelSetUp channel_setup; -ChannelClose channel_close; +IvyChannelInit +IvyChannelStop +IvyChannelAdd +IvyChannelRemove They should point to functions that respectively: make the necessary global initializations before entering the main loop + make the necessary global finalizations before exiting the main loop initialize a channel and ensure that it is managed by the main loop close a channel @@ -704,13 +707,21 @@ The types ChannelInit, ChannelSetUp and ChannelC as follows: -typedef void (*ChannelInit)(void); -typedef Channel (*ChannelSetUp)( +extern void IvyChannelInit(void); + +extern void IvyChannelStop (void); + +/* function called by Ivy to set callback on the sockets */ +extern Channel IvyChannelAdd( HANDLE fd, void *data, ChannelHandleDelete handle_delete, - ChannelHandleRead handle_read); -typedef void (*ChannelClose)( Channel channel ); + ChannelHandleRead handle_read +); + +/* function called by Ivy to remove callback on the sockets */ +extern void IvyChannelRemove( Channel channel ); + -- cgit v1.1 From 62cae697c9825abc4ef66264e04708d5ee5bba9a Mon Sep 17 00:00:00 2001 From: bustico Date: Wed, 20 Sep 2006 11:19:05 +0000 Subject: update doc with new intervall regexp syntax --- doc/ivy-c.sgml | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'doc/ivy-c.sgml') diff --git a/doc/ivy-c.sgml b/doc/ivy-c.sgml index 0021035..b737f6c 100644 --- a/doc/ivy-c.sgml +++ b/doc/ivy-c.sgml @@ -364,6 +364,13 @@ binds callback function cb to the regular expression specif regex_format and the optional following arguments. regex_format and the following arguments are handled as in printf. The return value is an identifier that can be used later for cancelling the subscription. +There is a special syntax for specifying numeric interval, in this case +the interval is locally transformed in a pcre regexp. +syntax is (?Imin#max[fi]). min and max are the bounds, +by default the regexp match decimal number, but if max bound is +followed by 'i', the regexp match only integers ex : (?I-10#20), (?I20#25i) +Note that due to the regexp generator limitation (which will perhaps be raised eventually) +the bounds are always integers. void IvyUnbindMsg (MsgRcvPtr id); -- cgit v1.1 From a9ad4a28f9ddfb9f95275490372aa737e9c5ce26 Mon Sep 17 00:00:00 2001 From: fcolin Date: Thu, 9 Nov 2006 08:53:04 +0000 Subject: update Channel DOC --- doc/ivy-c.sgml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'doc/ivy-c.sgml') diff --git a/doc/ivy-c.sgml b/doc/ivy-c.sgml index b737f6c..f1b759f 100644 --- a/doc/ivy-c.sgml +++ b/doc/ivy-c.sgml @@ -195,7 +195,7 @@ main (int argc, char**argv) IvyBindMsg (ByeCallback, 0, "^Bye$"); /* main loop */ - IvyMainLoop (0); + IvyMainLoop(); } @@ -308,14 +308,14 @@ environment variable is not defined, the default value "127:2010" is used. -void IvyMainLoop (void (*hook) (void)); +void IvyMainLoop (); makes your application enter the main loop in which it will handle asynchronous communications and signals. This is the default Ivy main loop, based on the select POSIX system call. -If non-null, hook is called every time the main loop is -about to enter select, and can be used (with care!) to -extend the main loop. +You can interact with the mainloop using hook before and after select + use the IvySetBeforeSelectHook and IvySetAfterSelectHook + void IvyStop (); -- cgit v1.1 From cc248b3cea3337c3c54e58d5db035c2ff285da55 Mon Sep 17 00:00:00 2001 From: fcolin Date: Thu, 9 Nov 2006 09:08:59 +0000 Subject: maj version lib documente --- doc/ivy-c.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/ivy-c.sgml') diff --git a/doc/ivy-c.sgml b/doc/ivy-c.sgml index f1b759f..d4b8f90 100644 --- a/doc/ivy-c.sgml +++ b/doc/ivy-c.sgml @@ -47,7 +47,7 @@ This document is a programmer's guide that describes how to use the Ivy C -library to connect applications to an Ivy bus. This guide describes version 3.2 +library to connect applications to an Ivy bus. This guide describes version 3.9 of the library. -- cgit v1.1 From fcde6ab39c85550739cd4503f29877a3999539f5 Mon Sep 17 00:00:00 2001 From: fcolin Date: Thu, 9 Nov 2006 09:48:09 +0000 Subject: adresse mail , date --- doc/ivy-c.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'doc/ivy-c.sgml') diff --git a/doc/ivy-c.sgml b/doc/ivy-c.sgml index d4b8f90..578ef61 100644 --- a/doc/ivy-c.sgml +++ b/doc/ivy-c.sgml @@ -6,7 +6,7 @@ SGML source file - Authors: Stéphane Chatty + Authors: Stéphane Chatty $Id$ @@ -37,7 +37,7 @@
jestin@cena.fr
-December 11, 2002 +November 09, 2006 1998-2002 -- cgit v1.1