# Chapter 10  Summary of all FITSIO User-Interface Subroutines

Error Status Routines page ??

            FTVERS( > version)
            FTGERR(status, > errtext)
            FTGMSG( > errmsg)
            FTRPRT (stream, > status)
            FTPMSG(errmsg)
            FTPMRK
            FTCMSG
            FTCMRK

FITS File Open and Close Subroutines: page ??

            FTOPEN(unit,filename,rwmode, > blocksize,status)
            FTDKOPN(unit,filename,rwmode, > blocksize,status)
            FTNOPN(unit,filename,rwmode, > status)
            FTDOPN(unit,filename,rwmode, > status)
            FTTOPN(unit,filename,rwmode, > status)
            FTIOPN(unit,filename,rwmode, > status)
            FTREOPEN(unit, > newunit, status)
            FTINIT(unit,filename,blocksize, > status)
            FTDKINIT(unit,filename,blocksize, > status)
            FTTPLT(unit, filename, tplfilename, > status)
            FTFLUS(unit, > status)
            FTCLOS(unit, > status)
            FTDELT(unit, > status)
            FTGIOU( > iounit, status)
            FTFIOU(iounit, > status)
     CFITS2Unit(fitsfile *ptr)   (C routine)
            CUnit2FITS(int unit)        (C routine)
            FTEXTN(filename, > nhdu, status)
            FTFLNM(unit, > filename, status)
            FTFLMD(unit, > iomode, status)
            FTURLT(unit, > urltype, status)
            FTIURL(filename, > filetype, infile, outfile, extspec, filter,
                   binspec, colspec, status)
            FTRTNM(filename, > rootname, status)
            FTEXIST(filename, > exist, status)

HDU-Level Operations: page ??

            FTMAHD(unit,nhdu, > hdutype,status)
            FTMRHD(unit,nmove, > hdutype,status)
            FTGHDN(unit, > nhdu)
            FTMNHD(unit, hdutype, extname, extver, > status)
            FTGHDT(unit, > hdutype, status)
            FTTHDU(unit, > hdunum, status)
            FTCRHD(unit, > status)
            FTIIMG(unit,bitpix,naxis,naxes, > status)
            FTITAB(unit,rowlen,nrows,tfields,ttype,tbcol,tform,tunit,extname, >
                   status)
            FTIBIN(unit,nrows,tfields,ttype,tform,tunit,extname,varidat > status)
            FTRSIM(unit,bitpix,naxis,naxes,status)
            FTDHDU(unit, > hdutype,status)
            FTCPFL(iunit,ounit,previous, current, following, > status)
            FTCOPY(iunit,ounit,morekeys, > status)
            FTCPHD(inunit, outunit, > status)
            FTCPDT(iunit,ounit, > status)

Subroutines to specify or modify the structure of the CHDU: page ??

            FTRDEF(unit, > status)  (DEPRECATED)
            FTPDEF(unit,bitpix,naxis,naxes,pcount,gcount, > status)  (DEPRECATED)
            FTADEF(unit,rowlen,tfields,tbcol,tform,nrows > status)  (DEPRECATED)
            FTBDEF(unit,tfields,tform,varidat,nrows > status)  (DEPRECATED)
            FTDDEF(unit,bytlen, > status)  (DEPRECATED)
            FTPTHP(unit,theap, > status)

Header Space and Position Subroutines: page ??

            FTHDEF(unit,morekeys, > status)
            FTGHSP(iunit, > keysexist,keysadd,status)
            FTGHPS(iunit, > keysexist,key_no,status)

Read or Write Standard Header Subroutines: page ??

            FTPHPS(unit,bitpix,naxis,naxes, > status)
            FTPHPR(unit,simple,bitpix,naxis,naxes,pcount,gcount,extend, > status)
            FTGHPR(unit,maxdim, > simple,bitpix,naxis,naxes,pcount,gcount,extend,
                   status)
            FTPHTB(unit,rowlen,nrows,tfields,ttype,tbcol,tform,tunit,extname, >
                   status)
            FTGHTB(unit,maxdim, > rowlen,nrows,tfields,ttype,tbcol,tform,tunit,
                   extname,status)
            FTPHBN(unit,nrows,tfields,ttype,tform,tunit,extname,varidat > status)
            FTGHBN(unit,maxdim, > nrows,tfields,ttype,tform,tunit,extname,varidat,
                   status)

Write Keyword Subroutines: page ??

            FTPREC(unit,card, > status)
            FTPCOM(unit,comment, > status)
            FTPHIS(unit,history, > status)
            FTPDAT(unit, > status)
            FTPKY[JKLS](unit,keyword,keyval,comment, > status)
            FTPKY[EDFG](unit,keyword,keyval,decimals,comment, > status)
            FTPKLS(unit,keyword,keyval,comment, > status)
            FTPLSW(unit, > status)
            FTPKYU(unit,keyword,comment, > status)
            FTPKN[JKLS](unit,keyroot,startno,no_keys,keyvals,comments, > status)
            FTPKN[EDFG](unit,keyroot,startno,no_keys,keyvals,decimals,comments, >
                       status)
            FTCPKYinunit, outunit, innum, outnum, keyroot, > status)
            FTPKYT(unit,keyword,intval,dblval,comment, > status)
            FTPKTP(unit, filename, > status)
            FTPUNT(unit,keyword,units, > status)

Insert Keyword Subroutines: page ??

            FTIREC(unit,key_no,card, > status)
            FTIKY[JKLS](unit,keyword,keyval,comment, > status)
            FTIKLS(unit,keyword,keyval,comment, > status)
            FTIKY[EDFG](unit,keyword,keyval,decimals,comment, > status)
            FTIKYU(unit,keyword,comment, > status)

Read Keyword Subroutines: page ??

            FTGREC(unit,key_no, > card,status)
            FTGKYN(unit,key_no, > keyword,value,comment,status)
            FTGCRD(unit,keyword, > card,status)
            FTGNXK(unit,inclist,ninc,exclist,nexc, > card,status)
            FTGKEY(unit,keyword, > value,comment,status)
            FTGKY[EDJKLS](unit,keyword, > keyval,comment,status)
            FTGKSL(unit,keyword, > length,status)
            FTGSKY(unit,keyword,firstchar,maxchar,> keyval,length,comment,status)
            FTGKN[EDJKLS](unit,keyroot,startno,max_keys, > keyvals,nfound,status)
            FTGKYT(unit,keyword, > intval,dblval,comment,status)
            FTGUNT(unit,keyword, > units,status)

Modify Keyword Subroutines: page ??

            FTMREC(unit,key_no,card, > status)
            FTMCRD(unit,keyword,card, > status)
            FTMNAM(unit,oldkey,keyword, > status)
            FTMCOM(unit,keyword,comment, > status)
            FTMKY[JKLS](unit,keyword,keyval,comment, > status)
            FTMKLS(unit,keyword,keyval,comment, > status)
            FTMKY[EDFG](unit,keyword,keyval,decimals,comment, > status)
            FTMKYU(unit,keyword,comment, > status)

Update Keyword Subroutines: page ??

            FTUCRD(unit,keyword,card, > status)
            FTUKY[JKLS](unit,keyword,keyval,comment, > status)
            FTUKLS(unit,keyword,keyval,comment, > status)
            FTUKY[EDFG](unit,keyword,keyval,decimals,comment, > status)
            FTUKYU(unit,keyword,comment, > status)

Delete Keyword Subroutines: page ??

            FTDREC(unit,key_no, > status)
            FTDKEY(unit,keyword, > status)

Define Data Scaling Parameters and Undefined Pixel Flags: page ??

            FTPSCL(unit,bscale,bzero, > status)
            FTTSCL(unit,colnum,tscal,tzero, > status)
            FTPNUL(unit,blank, > status)
            FTSNUL(unit,colnum,snull > status)
            FTTNUL(unit,colnum,tnull > status)

FITS Primary Array or IMAGE Extension I/O Subroutines: page ??

            FTGIDT(unit, > bitpix,status)
            FTGIET(unit, > bitpix,status)
            FTGIDM(unit, > naxis,status)
            FTGISZ(unit, maxdim, > naxes,status)
            FTGIPR(unit, maxdim, > bitpix,naxis,naxes,status)
            FTPPR[BIJKED](unit,group,fpixel,nelements,values, > status)
            FTPPN[BIJKED](unit,group,fpixel,nelements,values,nullval > status)
            FTPPRU(unit,group,fpixel,nelements, > status)
            FTGPV[BIJKED](unit,group,fpixel,nelements,nullval, > values,anyf,status)
            FTGPF[BIJKED](unit,group,fpixel,nelements, > values,flagvals,anyf,status)
            FTPGP[BIJKED](unit,group,fparm,nparm,values, > status)
            FTGGP[BIJKED](unit,group,fparm,nparm, > values,status)
            FTP2D[BIJKED](unit,group,dim1,naxis1,naxis2,image, > status)
            FTP3D[BIJKED](unit,group,dim1,dim2,naxis1,naxis2,naxis3,cube, > status)
            FTG2D[BIJKED](unit,group,nullval,dim1,naxis1,naxis2, > image,anyf,status)
            FTG3D[BIJKED](unit,group,nullval,dim1,dim2,naxis1,naxis2,naxis3, >
                         cube,anyf,status)
            FTPSS[BIJKED](unit,group,naxis,naxes,fpixels,lpixels,array, > status)
            FTGSV[BIJKED](unit,group,naxis,naxes,fpixels,lpixels,incs,nullval, >
                         array,anyf,status)
            FTGSF[BIJKED](unit,group,naxis,naxes,fpixels,lpixels,incs, >
                         array,flagvals,anyf,status)

Table Column Information Subroutines: page ??

            FTGNRW(unit, > nrows, status)
            FTGNCL(unit, > ncols, status)
            FTGCNO(unit,casesen,coltemplate, > colnum,status)
            FTGCNN(unit,casesen,coltemplate, > colnam,colnum,status)
            FTGTCL(unit,colnum, > datacode,repeat,width,status)
            FTEQTY(unit,colnum, > datacode,repeat,width,status)
            FTGCDW(unit,colnum, > dispwidth,status)
            FTGACL(unit,colnum, >
                   ttype,tbcol,tunit,tform,tscal,tzero,snull,tdisp,status)
            FTGBCL(unit,colnum, >
                   ttype,tunit,datatype,repeat,tscal,tzero,tnull,tdisp,status)
            FTPTDM(unit,colnum,naxis,naxes, > status)
            FTGTDM(unit,colnum,maxdim, > naxis,naxes,status)
            FTDTDM(unit,tdimstr,colnum,maxdim, > naxis,naxes, status)
            FTGRSZ(unit, > nrows,status)

Low-Level Table Access Subroutines: page ??

            FTGTBS(unit,frow,startchar,nchars, > string,status)
            FTPTBS(unit,frow,startchar,nchars,string, > status)
            FTGTBB(unit,frow,startchar,nchars, > array,status)
            FTPTBB(unit,frow,startchar,nchars,array, > status)

Edit Rows or Columns page ??

            FTIROW(unit,frow,nrows, > status)
            FTDROW(unit,frow,nrows, > status)
            FTDRRG(unit,rowrange, > status)
            FTDRWS(unit,rowlist,nrows, > status)
            FTICOL(unit,colnum,ttype,tform, > status)
            FTICLS(unit,colnum,ncols,ttype,tform, > status)
            FTMVEC(unit,colnum,newveclen, > status)
            FTDCOL(unit,colnum, > status)
            FTCPCL(inunit,outunit,incolnum,outcolnum,createcol, > status);

Read and Write Column Data Routines page ??

            FTPCL[SLBIJKEDCM](unit,colnum,frow,felem,nelements,values, > status)
            FTPCN[BIJKED](unit,colnum,frow,felem,nelements,values,nullval > status)
            FTPCLX(unit,colnum,frow,fbit,nbit,lray, > status)
            FTPCLU(unit,colnum,frow,felem,nelements, > status)
            FTGCL(unit,colnum,frow,felem,nelements, > values,status)
            FTGCV[SBIJKEDCM](unit,colnum,frow,felem,nelements,nullval, >
                           values,anyf,status)
            FTGCF[SLBIJKEDCM](unit,colnum,frow,felem,nelements, >
                             values,flagvals,anyf,status)
            FTGSV[BIJKED](unit,colnum,naxis,naxes,fpixels,lpixels,incs,nullval, >
                         array,anyf,status)
            FTGSF[BIJKED](unit,colnum,naxis,naxes,fpixels,lpixels,incs, >
                         array,flagvals,anyf,status)
            FTGCX(unit,colnum,frow,fbit,nbit, > lray,status)
            FTGCX[IJD](unit,colnum,frow,nrows,fbit,nbit, > array,status)
            FTGDES(unit,colnum,rownum, > nelements,offset,status)
            FTPDES(unit,colnum,rownum,nelements,offset, > status)

Row Selection and Calculator Routines: page ??

            FTFROW(unit,expr,firstrow, nrows, > n_good_rows, row_status, status)
            FTFFRW(unit, expr, > rownum, status)
            FTSROW(inunit, outunit, expr, > status )
            FTCROW(unit,datatype,expr,firstrow,nelements,nulval, >
                 array,anynul,status)
            FTCALC(inunit, expr, outunit, parName, parInfo, > status)
            FTCALC_RNG(inunit, expr, outunit, parName, parInfo,
                nranges, firstrow, lastrow, > status)
            FTTEXP(unit, expr, > datatype, nelem, naxis, naxes, status)

Celestial Coordinate System Subroutines: page ??

            FTGICS(unit, > xrval,yrval,xrpix,yrpix,xinc,yinc,rot,coordtype,status)
            FTGTCS(unit,xcol,ycol, >
                   xrval,yrval,xrpix,yrpix,xinc,yinc,rot,coordtype,status)
            FTWLDP(xpix,ypix,xrval,yrval,xrpix,yrpix,xinc,yinc,rot,
                              coordtype, > xpos,ypos,status)
            FTXYPX(xpos,ypos,xrval,yrval,xrpix,yrpix,xinc,yinc,rot,
                              coordtype, > xpix,ypix,status)

File Checksum Subroutines: page ??

            FTPCKS(unit, > status)
            FTUCKS(unit, > status)
            FTVCKS(unit, > dataok,hduok,status)
            FTGCKS(unit, > datasum,hdusum,status)
            FTESUM(sum,complement, > checksum)
            FTDSUM(checksum,complement, > sum)

Time and Date Utility Subroutines: page ??

            FTGSDT( > day, month, year, status )
            FTGSTM(> datestr, timeref, status)
            FTDT2S( year, month, day, > datestr, status)
            FTTM2S( year, month, day, hour, minute, second, decimals,
                    > datestr, status)
            FTS2DT(datestr, > year, month, day, status)
            FTS2TM(datestr, > year, month, day, hour, minute, second, status)

General Utility Subroutines: page ??

            FTGHAD(unit, > curaddr,nextaddr)
            FTUPCH(string)
            FTCMPS(str_template,string,casesen, > match,exact)
            FTTKEY(keyword, > status)
            FTTREC(card, > status)
            FTNCHK(unit, > status)
            FTGKNM(unit, > keyword, keylength, status)
            FTMKKY(keyword, value,comment, > card, status)
            FTPSVC(card, > value,comment,status)
            FTKEYN(keyroot,seq_no, > keyword,status)
            FTNKEY(seq_no,keyroot, > keyword,status)
            FTDTYP(value, > dtype,status)
            class = FTGKCL(card)
            FTASFM(tform, > datacode,width,decimals,status)
            FTBNFM(tform, > datacode,repeat,width,status)
            FTGABC(tfields,tform,space, > rowlen,tbcol,status)
            FTGTHD(template, > card,hdtype,status)
            FTRWRG(rowlist, maxrows, maxranges, > numranges, rangemin,
                   rangemax, status)