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  

uio.c File Reference

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

Go to the source code of this file.


Functions

 do_us (ftnint *number, char *ptr, ftnlen len)
integer do_ud (ftnint *number, char *ptr, ftnlen len)
integer do_uio (ftnint *number, char *ptr, ftnlen len)

Variables

uiolen f__reclen

Function Documentation

integer do_ud ftnint   number,
char *    ptr,
ftnlen    len
 

Definition at line 30 of file uio.c.

References err, and i.

Referenced by do_uio().

00032 {
00033         f__recpos += (int)(*number * len);
00034         if(f__recpos > f__curunit->url && f__curunit->url!=1)
00035                 err(f__elist->cierr,110,"do_ud");
00036         if(f__reading)
00037         {
00038 #ifdef Pad_UDread
00039 #ifdef KR_headers
00040         int i;
00041 #else
00042         size_t i;
00043 #endif
00044                 if (!(i = fread(ptr,(int)len,(int)(*number),f__cf))
00045                  && !(f__recpos - *number*len))
00046                         err(f__elist->cierr,EOF,"do_ud")
00047                 if (i < *number)
00048                         memset(ptr + i*len, 0, (*number - i)*len);
00049                 return 0;
00050 #else
00051                 if(fread(ptr,(int)len,(int)(*number),f__cf) != *number)
00052                         err(f__elist->cierr,EOF,"do_ud")
00053                 else return(0);
00054 #endif
00055         }
00056         (void) fwrite(ptr,(int)len,(int)(*number),f__cf);
00057         return(0);
00058 }

integer do_uio ftnint   number,
char *    ptr,
ftnlen    len
 

Definition at line 62 of file uio.c.

References do_ud(), and do_us().

00064 {
00065         if(f__sequential)
00066                 return(do_us(number,ptr,len));
00067         else    return(do_ud(number,ptr,len));
00068 }

do_us ftnint   number,
char *    ptr,
ftnlen    len
 

Definition at line 8 of file uio.c.

References err, and f__reclen.

Referenced by do_uio().

00010 {
00011         if(f__reading)
00012         {
00013                 f__recpos += (int)(*number * len);
00014                 if(f__recpos>f__reclen)
00015                         err(f__elist->cierr, 110, "do_us");
00016                 if (fread(ptr,(int)len,(int)(*number),f__cf) != *number)
00017                         err(f__elist->ciend, EOF, "do_us");
00018                 return(0);
00019         }
00020         else
00021         {
00022                 f__reclen += *number * len;
00023                 (void) fwrite(ptr,(int)len,(int)(*number),f__cf);
00024                 return(0);
00025         }
00026 }

Variable Documentation

uiolen f__reclen
 

Definition at line 3 of file uio.c.

Referenced by do_us(), e_rsue(), e_wsue(), s_rsue(), and s_wsue().

 

Powered by Plone

This site conforms to the following standards: