2010-03-08 04:55:21 -06:00
|
|
|
/*
|
|
|
|
* Copyright (C) 1992, Board of Trustees of the University of Illinois.
|
|
|
|
*
|
|
|
|
* Permission is granted to copy and distribute source with out fee.
|
|
|
|
* Commercialization of this product requires prior licensing
|
|
|
|
* from the National Center for Supercomputing Applications of the
|
2013-03-09 18:59:42 -06:00
|
|
|
* University of Illinois. Commercialization includes the integration of this
|
|
|
|
* code in part or whole into a product for resale. Free distribution of
|
|
|
|
* unmodified source and use of NCSA software is not considered
|
2010-03-08 04:55:21 -06:00
|
|
|
* commercialization.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
/* $Id: net.h,v 1.1.1.1 1995/01/11 00:03:39 alanb Exp $ */
|
|
|
|
|
|
|
|
#include <sys/types.h>
|
|
|
|
#include "netdata.h"
|
|
|
|
#include "doodle.h"
|
|
|
|
|
|
|
|
#define PORTNAMESIZE 25
|
|
|
|
|
|
|
|
#define NET_UNDEF 0
|
|
|
|
#define NET_IN 1
|
|
|
|
#define NET_OUT 2
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum { NETRIS8, NETSDS, NETPAL, NETTXT, NETSRV, NETCOL, NETDTM,
|
|
|
|
NETANIM, NETVDATA, NETSDL, NETCOM, NETEXEC, NETMSG,
|
|
|
|
NETDOL} NetType;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
int port;
|
|
|
|
char portName[PORTNAMESIZE];
|
|
|
|
char open; /*boolean*/
|
|
|
|
int type;
|
|
|
|
time_t queueTime;
|
|
|
|
} NetPort;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
char *title;
|
|
|
|
char *id;
|
|
|
|
int selLeft; /* selection Left */
|
|
|
|
int selRight; /* selection Right */
|
|
|
|
int insertPt; /* insertion point */
|
|
|
|
int numReplace; /* number to replace */
|
|
|
|
int replaceAll; /* boolean should reaplace All text */
|
|
|
|
int dim; /* dimensions */
|
|
|
|
char *textString;
|
|
|
|
} Text;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
char *title;
|
|
|
|
char *id;
|
|
|
|
char *func;
|
|
|
|
int selType;
|
|
|
|
int width;
|
|
|
|
int dim;
|
|
|
|
struct COL_TRIPLET *data;
|
|
|
|
} Col;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
char *title;
|
|
|
|
char *id;
|
|
|
|
char *func;
|
|
|
|
int selType;
|
|
|
|
int width;
|
|
|
|
int dim;
|
|
|
|
short int *data;
|
|
|
|
} Dol;
|
|
|
|
|
2013-03-09 18:59:42 -06:00
|
|
|
typedef enum { AF_NO_FUNC, AF_STOP, AF_FPLAY, AF_RPLAY
|
2010-03-08 04:55:21 -06:00
|
|
|
} AnimFunc;
|
|
|
|
|
|
|
|
typedef enum { ART_NONE, ART_SINGLE, ART_CONT, ART_BOUNCE
|
|
|
|
} AnimRunType;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
char *title;
|
|
|
|
char *id;
|
|
|
|
AnimFunc func;
|
|
|
|
int frameNumber;
|
|
|
|
AnimRunType runType;
|
|
|
|
Data *data;
|
|
|
|
int axis;
|
|
|
|
} AnimMesg;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
char id[80];
|
|
|
|
char inPort[80];
|
|
|
|
int func;
|
|
|
|
NetPort *netPort;
|
|
|
|
} Server;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
char *id;
|
|
|
|
char *domain;
|
|
|
|
char *mesg;
|
|
|
|
} Com;
|
|
|
|
|
|
|
|
|
|
|
|
extern void NetSetASync PARAMS((int set));
|
|
|
|
extern int NetRegisterModule
|
|
|
|
PARAMS((char *name, NetType netType, void (*new)(), caddr_t newData,
|
|
|
|
void (*change)(), caddr_t changeData, void (*destroy)(),
|
|
|
|
caddr_t destroyData));
|
|
|
|
extern void NetDestroyPort PARAMS((NetPort *netPort));
|
|
|
|
extern NetPort *NetCreateInPort PARAMS((char *inPortAddr));
|
|
|
|
extern NetPort *NetCreateOutPort PARAMS((char *outPortAddr));
|
|
|
|
extern NetPort *NetIsConnected PARAMS((void));
|
|
|
|
extern int NetInit PARAMS((char *));
|
|
|
|
extern void NetClientPollAndRead PARAMS((void));
|
|
|
|
extern void NetTryResend PARAMS((void));
|
|
|
|
extern int NetPALDistribute
|
|
|
|
PARAMS((char *title, unsigned char *rgb, char *assoc, char *excepMod));
|
|
|
|
extern int NetRISDistribute
|
|
|
|
PARAMS((Data **dSend, char *exceptMod));
|
|
|
|
extern int NetSendDisconnect
|
|
|
|
PARAMS((NetPort *netPort, void (*cb)(), void (*failCB)()));
|
|
|
|
extern int NetSendDoodle
|
|
|
|
PARAMS((NetPort *netPort, char *title, long length, int width,
|
|
|
|
POINT *doodle, DColor *color, int sendDiscrete, int doQueue,
|
|
|
|
int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendPointSelect
|
|
|
|
PARAMS((NetPort *netPort, char *title, char *func, int x, int y));
|
|
|
|
extern int NetSendLineSelect
|
|
|
|
PARAMS((NetPort *netPort, char *ti, char *fu, int x1, int y1,
|
|
|
|
int x2, int y2));
|
|
|
|
extern int NetSendAreaSelect
|
|
|
|
PARAMS((NetPort *netPort, char *ti, char *fu, int x1, int y1,
|
|
|
|
int x2, int y2));
|
|
|
|
extern int NetSendClearDoodle PARAMS((NetPort *netPort, char *title));
|
|
|
|
#if 0
|
|
|
|
extern int NetSendSetDoodle();
|
|
|
|
extern int NetSendDoodleText();
|
|
|
|
#endif
|
|
|
|
extern int NetSendEraseDoodle
|
|
|
|
PARAMS((NetPort *netPort, char *title, long length, POINT *doodle,
|
|
|
|
int doQueue));
|
|
|
|
extern int NetSendEraseBlockDoodle
|
|
|
|
PARAMS((NetPort *netPort, char *title, long length, POINT *doodle));
|
|
|
|
extern int NetSendTextSelection
|
|
|
|
PARAMS((NetPort *netPort, char *title, int left, int right));
|
|
|
|
extern int NetSendText
|
|
|
|
PARAMS((NetPort *netPort, Text *t, int distributeInternally,
|
|
|
|
char *moduleName));
|
|
|
|
extern int NetSendPalette8
|
|
|
|
PARAMS((NetPort *netPort, char *title, unsigned char *rgb,
|
|
|
|
char *associated, int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendAnimation
|
|
|
|
PARAMS((NetPort *netPort, Data *d, int shouldCopy,
|
|
|
|
int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendAnimationCommand
|
|
|
|
PARAMS((NetPort *netPort, char *title, AnimFunc command,
|
|
|
|
AnimRunType runType, int frameNumbe));
|
|
|
|
extern int NetSendRaster8
|
|
|
|
PARAMS((NetPort *netPort, Data *d, int shouldCopy,
|
|
|
|
int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendRaster8Group
|
|
|
|
PARAMS((NetPort *netPort, char *title, unsigned char *charDat,
|
|
|
|
int xdim, int ydim, unsigned char *palette8, int shouldCopy,
|
|
|
|
int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendVData
|
|
|
|
PARAMS((NetPort *netPort, char *label, VdataPathElement **magicPath,
|
|
|
|
int pathLength, int nodeID, char *nodeName, char *field,
|
|
|
|
int numRecords, int numElements, int type, char *vdata,
|
|
|
|
int shouldCopy, int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendDataObject
|
|
|
|
PARAMS((NetPort *netPort, Data *d, int shouldCopy,
|
|
|
|
int distributeInternally, char *moduleName));
|
|
|
|
extern int NetSendCommand
|
|
|
|
PARAMS((NetPort *netPort, char *domain, char *message, void (*cb)(),
|
|
|
|
void (*failCB)()));
|
|
|
|
extern int NetGetListOfUsers PARAMS((int max, char **users));
|
|
|
|
extern int NetSendMessage
|
|
|
|
PARAMS((NetPort *netPort, char *message, void (*cb)(), caddr_t cbData,
|
|
|
|
void (*failCB)(), caddr_t failCBData));
|
|
|
|
extern void NetSetTimeOut
|
|
|
|
PARAMS((int seconds));
|
|
|
|
extern int NetGetTimeOut PARAMS((void));
|
|
|
|
extern void NetSetMaxAttemptsToSend
|
|
|
|
PARAMS((int numberTries));
|
|
|
|
extern int NetGetMaxAttemptsToSend PARAMS((void));
|