Go to the documentation of this file.
53 #define VPORTNUMBER 14916
159 #if !defined(VINLINE_MALOC)
199 Vio*
Vio_ctor(
const char *socktype,
const char *datafrmt,
200 const char *hostname,
const char *filename,
const char *
rwkey);
215 int Vio_ctor2(
Vio *thee,
const char *socktype,
const char *datafrmt,
216 const char *hostname,
const char *filename,
const char *
rwkey);
399 const char *iodev,
const char *iofmt,
400 const char *iohost,
const char *iofile);
char rhost[VMAX_ARGLEN]
Definition: vio.h:120
Contains public data members for Vio class.
Definition: vio.h:98
Vio * Vio_socketOpen(char *key, const char *iodev, const char *iofmt, const char *iohost, const char *iofile)
Socket open for read or write.
@ VIO_XDR
Definition: vio.h:78
@ VIO_SDIO
Definition: vio.h:64
VIOrwkey rwkey
Definition: vio.h:113
VIOtype type
Definition: vio.h:100
#define VMAX_ARGLEN
Global constant.
Definition: maloc_base.h:227
The base (or foundation) header for MALOC.
@ VIO_UNIX
Definition: vio.h:67
#define VMAX_ARGNUM
Global constant.
Definition: maloc_base.h:225
int error
Definition: vio.h:122
@ VIO_FILE
Definition: vio.h:66
Vio * Vio_ctor(const char *socktype, const char *datafrmt, const char *hostname, const char *filename, const char *rwkey)
Construct the Vio object.
void Vio_dtor2(Vio *thee)
Work routine that Vio_dtor calls to do most of the destruction.
int ioBufferLen
Definition: vio.h:135
int Vio_write(Vio *thee, char *buf, int bufsize)
Write bufsize characters from buf to output device.
void Vio_setWhiteChars(Vio *thee, char *whiteChars)
Set the white character set for I/O stream.
void Vio_start(void)
Start Vio communication layer (init internal variables/buffers)
void Vio_stop(void)
Shutdown Vio communication layer.
char commChars[VMAX_ARGNUM]
Definition: vio.h:132
void Vio_dtor(Vio **thee)
Destruct the Vio object.
void Vio_connectFree(Vio *thee)
Purge any output buffers (for <UNIX/INET>, else a no-op)
int Vio_connect(Vio *thee, int nonblock)
Connect to some socket on a remote machine (or on our machine)
@ VIO_NO_TYPE
Definition: vio.h:63
VIOrwkey
Parameter for rw type (R,RW)
Definition: vio.h:87
void * axdr
Definition: vio.h:129
int Vio_accept(Vio *thee, int nonblock)
Accept any waiting connect attempt to our socket on our machine.
char putBuffer[VMAX_BUFSIZE]
Definition: vio.h:137
int so
Definition: vio.h:126
void Vio_socketClose(Vio **sock)
Socket close from read or write.
VIOfrmt frmt
Definition: vio.h:108
@ VIO_R
Definition: vio.h:89
FILE * fp
Definition: vio.h:125
Header file for an ISO C [V]irtual [N]umerical [M]achine.
char * VIObuffer
Definition: vio.h:140
int Vio_read(Vio *thee, char *buf, int bufsize)
Read (up to) bufsize characters into buf from input device.
int dirty
Definition: vio.h:123
void Vio_acceptFree(Vio *thee)
Free the socket child that was used for the last accept.
int Vio_printf(Vio *thee, char *parms,...)
Mimic "printf" from an arbitrary Vio device.
int putBufferLen
Definition: vio.h:138
VIOfrmt
Parameter for compression type (XDR,ASC)
Definition: vio.h:76
void * name
Definition: vio.h:128
#define VMAX_BUFSIZE
Global constant.
Definition: maloc_base.h:229
VIOtype
Parameter for I/O type (sdio,buff,file,unix,inet)
Definition: vio.h:62
char ioBuffer[VMAX_BUFSIZE]
Definition: vio.h:134
char whiteChars[VMAX_ARGNUM]
Definition: vio.h:131
@ VIO_NO_FRMT
Definition: vio.h:77
int soc
Definition: vio.h:127
char lhost[VMAX_ARGLEN]
Definition: vio.h:119
char file[VMAX_ARGLEN]
Definition: vio.h:118
int Vio_bufSize(Vio *thee)
Return the length to the internal buffer.
int VIObufferLen
Definition: vio.h:141
int VIObufferPtr
Definition: vio.h:142
@ VIO_ASC
Definition: vio.h:79
char * Vio_bufGive(Vio *thee)
Return the pointer to the internal buffer.
@ VIO_INET
Definition: vio.h:68
@ VIO_BUFF
Definition: vio.h:65
void Vio_setCommChars(Vio *thee, char *commChars)
Set the comment character set for I/O stream.
int Vio_scanf(Vio *thee, char *parms,...)
Mimic "scanf" from an arbitrary Vio device.
void Vio_bufTake(Vio *thee, char *buf, int bufsize)
Set the pointer to the internal buffer.
int Vio_ctor2(Vio *thee, const char *socktype, const char *datafrmt, const char *hostname, const char *filename, const char *rwkey)
Work routine that Vio_ctor calls to do most of the construction.
@ VIO_NO_RW
Definition: vio.h:88
@ VIO_W
Definition: vio.h:90