--- libaitio/inc/aitio.h 2013/12/05 16:57:08 1.38.10.6 +++ libaitio/inc/aitio.h 2013/12/06 01:03:03 1.38.10.8 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.38.10.6 2013/12/05 16:57:08 misho Exp $ +* $Id: aitio.h,v 1.38.10.8 2013/12/06 01:03:03 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -123,6 +123,7 @@ typedef struct { pthread_mutex_t prog_mtx; array_t *prog_fds; + unsigned int *prog_used; } prog_t; @@ -189,6 +190,30 @@ void io_progDestroy(prog_t ** __restrict pprg); * return: -1 error or >-1 exited programs */ int io_progCheck(prog_t * __restrict prg); + +/* + * io_progAttach() - Attach to open program + * + * @prg = program pool + * return: NULL error or !=NULL attached program handle + */ +#ifdef POPEN_STREAM +FILE *io_progAttach(prog_t * __restrict prg); +#else +int io_progAttach(prog_t * __restrict prg); +#endif +/* + * io_progDetach() - Detch from open program + * + * @prg= program pool + * @pfd = attached program handle + * return: none + */ +#ifdef POPEN_STREAM +void io_progDetach(prog_t * __restrict prg, FILE *pfd); +#else +void io_progDetach(prog_t * __restrict prg, int pfd); +#endif /*