[BACK]Return to oxserv.h CVS log [TXT][DIR] Up to [local] / OpenXM / src / ox_ntl

File: [local] / OpenXM / src / ox_ntl / oxserv.h (download)

Revision 1.3, Sat Nov 15 09:06:20 2003 UTC (20 years, 6 months ago) by iwane
Branch: MAIN
Changes since 1.2: +16 -2 lines

block interrupt input.

add ox_ntl command "lll"
e.g.
[1081] M=newmat(2,2,[[10,0],[-7,3]]);
[ 10 0 ]
[ -7 3 ]
[1082] ntl.lll(PID, M);
[ 3 3 ]
[ 4 -6 ]

add local cmo-object

/* $OpenXM: OpenXM/src/ox_ntl/oxserv.h,v 1.3 2003/11/15 09:06:20 iwane Exp $ */

#ifndef __OX_SERVE_H__
#define __OX_SERVE_H__

#if HAVE_CONFIG_H
#include "config.h"
#endif

#include <signal.h>
#include "ox_toolkit.h"

#ifndef OXSERV_FAILURE
#define OXSERV_FAILURE	(-1)
#define OXSERV_SUCCESS  ( 0)
#endif

#ifdef __cplusplus
extern "C" {
#endif

/* signal */
extern sigset_t	G_oxserv_sigusr1;

#define	BLOCK_INPUT()	do { \
	sigprocmask(SIG_BLOCK, &G_oxserv_sigusr1, NULL); \
} while(0)

#define	UNBLOCK_INPUT()	do { \
	sigprocmask(SIG_UNBLOCK, &G_oxserv_sigusr1, NULL); \
} while(0)

/* c.f. mathcap_init in ox_toolkit */
int	 oxserv_init	(OXFILE *, int, char *, char *, int *, int *);
void	 oxserv_dest	(void);

int	 oxserv_receive	(OXFILE *);

int	 oxserv_set	(int mode, void *, void *);

#define OXSERV_SET_EXECUTE_STRING_PARSER        (0x01)
#define OXSERV_SET_EXECUTE_FUNCTION             (0x02)
#define OXSERV_SET_CONVERT_CMO                  (0x03)
#define OXSERV_SET_DELETE_CMO                   (0x04)
#define OXSERV_SET_GET_CMOTAG                   (0x05)


#ifdef __cplusplus
}
#endif

#endif /* !__OX_SERVE_H__ */