Skip to content

AFNI/NIfTI Server

Sections
Personal tools
You are here: Home » AFNI » Documentation

Doxygen Source Code Documentation


Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals   Search  

wsfe.c File Reference

#include "f2c.h"
#include "fio.h"
#include "fmt.h"

Go to the source code of this file.


Functions

 x_putc (int c)
 x_wSL (Void)
 xw_end (Void)
 xw_rev (Void)
integer s_wsfe (cilist *a)

Variables

int f__hiwater

Function Documentation

integer s_wsfe cilist   a
 

Definition at line 55 of file wsfe.c.

References a, c_sfe(), err, f__hiwater, f__nowwriting(), f_init(), fmt_bg(), pars_f(), x_putc(), x_wSL(), xw_end(), and xw_rev().

Referenced by ff_(), MAIN__(), parser_(), qqqerr_(), and set_().

00057 {       int n;
00058         if(!f__init) f_init();
00059         if(n=c_sfe(a)) return(n);
00060         f__reading=0;
00061         f__sequential=1;
00062         f__formatted=1;
00063         f__external=1;
00064         f__elist=a;
00065         f__hiwater = f__cursor=f__recpos=0;
00066         f__nonl = 0;
00067         f__scale=0;
00068         f__fmtbuf=a->cifmt;
00069         f__curunit = &f__units[a->ciunit];
00070         f__cf=f__curunit->ufd;
00071         if(pars_f(f__fmtbuf)<0) err(a->cierr,100,"startio");
00072         f__putn= x_putc;
00073         f__doed= w_ed;
00074         f__doned= w_ned;
00075         f__doend=xw_end;
00076         f__dorevert=xw_rev;
00077         f__donewrec=x_wSL;
00078         fmt_bg();
00079         f__cplus=0;
00080         f__cblank=f__curunit->ublnk;
00081         if(f__curunit->uwrt != 1 && f__nowwriting(f__curunit))
00082                 err(a->cierr,errno,"write start");
00083         return(0);
00084 }

x_putc int    c
 

Definition at line 10 of file wsfe.c.

References buf_end, c, and f__hiwater.

Referenced by s_wsfe().

00012 {
00013         /* this uses \n as an indicator of record-end */
00014         if(c == '\n' && f__recpos < f__hiwater) {       /* fseek calls fflush, a loss */
00015 #ifndef NON_UNIX_STDIO
00016                 if(f__cf->_ptr + f__hiwater - f__recpos < buf_end(f__cf))
00017                         f__cf->_ptr += f__hiwater - f__recpos;
00018                 else
00019 #endif
00020                         (void) fseek(f__cf, (long)(f__hiwater - f__recpos), SEEK_CUR);
00021         }
00022 #ifdef OMIT_BLANK_CC
00023         if (!f__recpos++ && c == ' ')
00024                 return c;
00025 #else
00026         f__recpos++;
00027 #endif
00028         return putc(c,f__cf);
00029 }

x_wSL Void   
 

Definition at line 30 of file wsfe.c.

References f__hiwater.

Referenced by s_wsfe().

00031 {
00032         (*f__putn)('\n');
00033         f__recpos=0;
00034         f__cursor = 0;
00035         f__hiwater = 0;
00036         return(1);
00037 }

xw_end Void   
 

Definition at line 38 of file wsfe.c.

References f__hiwater.

Referenced by s_wsfe().

00039 {
00040         if(f__nonl == 0)
00041                 (*f__putn)('\n');
00042         f__hiwater = f__recpos = f__cursor = 0;
00043         return(0);
00044 }

xw_rev Void   
 

Definition at line 45 of file wsfe.c.

References f__hiwater.

Referenced by s_wsfe().

00046 {
00047         if(f__workdone) (*f__putn)('\n');
00048         f__hiwater = f__recpos = f__cursor = 0;
00049         return(f__workdone=0);
00050 }

Variable Documentation

int f__hiwater
 

Definition at line 5 of file wsfe.c.

Referenced by s_wsfe(), x_putc(), x_wSL(), xw_end(), and xw_rev().

 

Powered by Plone

This site conforms to the following standards: