next up previous
Next: OBSOLETE ROUTINES
Previous: Building C Applications

ALPHABETICAL LIST OF C FUNCTIONS   

This section gives a complete list of the functions available via the C interface to the NDF_ library, in the form of ANSI C function prototypes. The name of each function is linked to a description of the corresponding Fortran routine. For general information about the C interface, see Appendix [*].

 void ndfAcget( int indf, const char *comp, int iaxis, char *value, int value_length, int *status );
--Obtain the value of an NDF axis character component

 void ndfAclen( int indf, const char *comp, int iaxis, int *length, int *status );
--Determine the length of an NDF axis character component

 void ndfAcmsg( const char *token, int indf, const char *comp, int iaxis, int *status );
--Assign the value of an NDF axis character component to a message token

 void ndfAcput( const char *value, int indf, const char *comp, int iaxis, int *status );
--Assign a value to an NDF axis character component

 void ndfAcre( int indf, int *status );
--Ensure that an axis coordinate system exists for an NDF

 void ndfAform( int indf, const char *comp, int iaxis, char *form, int form_length, int *status );
--Obtain the storage form of an NDF axis array

 void ndfAmap( int indf, const char *comp, int iaxis, const char *type, const char *mmod, void *pntr[ ], int *el, int *status );
--Obtain mapped access to an NDF axis array

 void ndfAnnul( int *indf, int *status );
--Annul an NDF identifier

 void ndfAnorm( int indf, int iaxis, int *norm, int *status );
--Obtain the logical value of an NDF axis normalisation flag

 void ndfArest( int indf, const char *comp, int iaxis, int *status );
--Reset an NDF axis component to an undefined state

 void ndfAsnrm( int norm, int indf, int iaxis, int *status );
--Set a new value for an NDF axis normalisation flag

 void ndfAssoc( const char *param, const char *mode, int *indf, int *status );
--Associate an existing NDF with an ADAM parameter

 void ndfAstat( int indf, const char *comp, int iaxis, int *state, int *status );
--Determine the state of an NDF axis component (defined or undefined)

 void ndfAstyp( const char *type, int indf, const char *comp, int iaxis, int *status );
--Set a new numeric type for an NDF axis array

 void ndfAtype( int indf, const char *comp, int iaxis, char *type, int type_length, int *status );
--Obtain the numeric type of an NDF axis array

 void ndfAunmp( int indf, const char *comp, int iaxis, int *status );
--Unmap an NDF axis array component

 void ndfBad( int indf, const char *comp, int check, int *bad, int *status );
--Determine if an NDF array component may contain bad pixels

 void ndfBase( int indf1, int *indf2, int *status );
--Obtain an identifier for a base NDF

 void ndfBb( int indf, unsigned char *badbit, int *status );
--Obtain the bad-bits mask value for the quality component of an NDF

 void ndfBegin( void );
--Begin a new NDF context

 void ndfBlock( int indf1, int ndim, const int mxdim[ ], int iblock, int *indf2, int *status );
--Obtain an NDF section containing a block of adjacent pixels

 void ndfBound( int indf, int ndimx, int lbnd[ ], int ubnd[ ], int *ndim, int *status );
--Enquire the pixel-index bounds of an NDF

 void ndfCget( int indf, const char *comp, char *value, int value_length, int *status );
--Obtain the value of an NDF character component

 void ndfChunk( int indf1, int mxpix, int ichunk, int *indf2, int *status );
--Obtain an NDF section containing a chunk of contiguous pixels

 void ndfCinp( const char *param, int indf, const char *comp, int *status );
--Obtain an NDF character component value via the ADAM parameter system

 void ndfClen( int indf, const char *comp, int *length, int *status );
--Determine the length of an NDF character component

 void ndfClone( int indf1, int *indf2, int *status );
--Clone an NDF identifier

 void ndfCmplx( int indf, const char *comp, int *cmplx, int *status );
--Determine whether an NDF array component holds complex values

 void ndfCmsg( const char *token, int indf, const char *comp, int *status );
--Assign the value of an NDF character component to a message token

 void ndfCopy( int indf1, int *place, int *indf2, int *status );
--Copy an NDF to a new location

 void ndfCput( const char *value, int indf, const char *comp, int *status );
--Assign a value to an NDF character component

 void ndfCreat( const char *param, const char *ftype, int ndim, const int lbnd[ ], const int ubnd[ ], int *indf, int *status );
--Create a new simple NDF via the ADAM parameter system

 void ndfCrep( const char *param, const char *ftype, int ndim, const int ubnd[ ], int *indf, int *status );
--Create a new primitive NDF via the ADAM parameter system

 void ndfDelet( int *indf, int *status );
--Delete an NDF

 void ndfDim( int indf, int ndimx, int dim[ ], int *ndim, int *status );
--Enquire the dimension sizes of an NDF

 void ndfEnd( int *status );
--End the current NDF context

 void ndfExist( const char *param, const char *mode, int *indf, int *status );
--See if an existing NDF is associated with an ADAM parameter.

 void ndfFind( const char loc[ DAT__SZLOC ], const char *name, int *indf, int *status );
--Find an NDF in an HDS structure and import it into the NDF_ system

 void ndfForm( int indf, const char *comp, char *form, int form_length, int *status );
--Obtain the storage form of an NDF array component

 void ndfFtype( int indf, const char *comp, char *ftype, int ftype_length, int *status );
--Obtain the full type of an NDF array component

 void ndfGtune( const char *tpar, int *value, int *status );
--Obtain the value of an NDF_ system tuning parameter

 void ndfGtwcs( int indf, AstFrameSet **iwcs, int *status );
--Obtain world coordinate system information from an NDF

 void ndfHappn( const char *appn, int *status );
--Declare a new application name for NDF history recording

 void ndfHcre( int indf, int *status );
--Ensure that a history component exists for an NDF

 void ndfHdef( int indf, const char *appn, int *status );
--Write default history information to an NDF

 void ndfHecho( int nlines, char *const text[ ], int *status );
--Write out lines of history text

 void ndfHend( int *status );
--End NDF history recording for the current application

 void ndfHfind( int indf, const int ymdhm[ 5 ], float sec, int eq, int *irec, int *status );
--Find an NDF history record by date and time

 void ndfHinfo( int indf, const char *item, int irec, char *value, int value_length, int *status );
--Obtain information about an NDF's history component

 void ndfHnrec( int indf, int *nrec, int *status );
--Determine the number of NDF history records present

 void ndfHout( int indf, int irec, void ( *routin )( int, char *const [ ], int * ), int *status );
--Display text from an NDF history record

 void ndfHpurg( int indf, int irec1, int irec2, int *status );
--Delete a range of records from an NDF history component

 void ndfHput( const char *hmode, const char *appn, int repl, int nlines, char *const text[ ], int trans, int wrap, int rjust, int indf, int *status );
--Write history information to an NDF

 void ndfHsmod( const char *hmode, int indf, int *status );
--Set the history update mode for an NDF

 void ndfInit( int argc, char *const argv[ ], int *status );
--Initialise the NDF_ library for use from a C main routine (not available from Fortran)

 void ndfIsacc( int indf, const char *access, int *isacc, int *status );
--Determine whether a specified type of NDF access is available

 void ndfIsbas( int indf, int *isbas, int *status );
--Enquire if an NDF is a base NDF

 void ndfIstmp( int indf, int *istmp, int *status );
--Determine if an NDF is temporary

 void ndfLoc( int indf, const char *mode, char loc[ DAT__SZLOC ], int *status );
--Obtain an HDS locator for an NDF

 void ndfMap( int indf, const char *comp, const char *type, const char *mmod, void *pntr[ ], int *el, int *status );
--Obtain mapped access to an array component of an NDF

 void ndfMapql( int indf, int **pntr, int *el, int *bad, int *status );
--Map the quality component of an NDF as an array of logical values

 void ndfMapz( int indf, const char *comp, const char *type, const char *mmod, void *rpntr[ ], void *ipntr[ ], int *el, int *status );
--Obtain complex mapped access to an array component of an NDF

 void ndfMbad( int badok, int indf1, int indf2, const char *comp, int check, int *bad, int *status );
--Merge the bad-pixel flags of the array components of a pair of NDFs

 void ndfMbadn( int badok, int n, const int ndfs[ ], const char *comp, int check, int *bad, int *status );
--Merge the bad-pixel flags of the array components of a number of NDFs

 void ndfMbnd( const char *option, int *indf1, int *indf2, int *status );
--Match the pixel-index bounds of a pair of NDFs

 void ndfMbndn( const char *option, int n, int ndfs[ ], int *status );
--Match the pixel-index bounds of a number of NDFs

 void ndfMsg( const char *token, int indf );
--Assign the name of an NDF to a message token

 void ndfMtype( const char *typlst, int indf1, int indf2, const char *comp, char *itype, int itype_length, char *dtype, int dtype_length, int *status );
--Match the types of the array components of a pair of NDFs

 void ndfMtypn( const char *typlst, int n, const int ndfs[ ], const char *comp, char *itype, int itype_length, char *dtype, int dtype_length, int *status );
--Match the types of the array components of a number of NDFs

 void ndfNbloc( int indf, int ndim, const int mxdim[ ], int *nblock, int *status );
--Determine the number of blocks of adjacent pixels in an NDF

 void ndfNchnk( int indf, int mxpix, int *nchunk, int *status );
--Determine the number of chunks of contiguous pixels in an NDF

 void ndfNew( const char *ftype, int ndim, const int lbnd[ ], const int ubnd[ ], int *place, int *indf, int *status );
--Create a new simple NDF

 void ndfNewp( const char *ftype, int ndim, const int ubnd[ ], int *place, int *indf, int *status );
--Create a new primitive NDF

 void ndfNoacc( const char *access, int indf, int *status );
--Disable a specified type of access to an NDF

 void ndfOpen( const char loc[ DAT__SZLOC ], const char *name, const char *mode, const char *stat, int *indf, int *place, int *status );
--Open an existing or new NDF

 void ndfPlace( const char loc[ DAT__SZLOC ], const char *name, int *place, int *status );
--Obtain an NDF placeholder

 void ndfProp( int indf1, const char *clist, const char *param, int *indf2, int *status );
--Propagate NDF information to create a new NDF via the ADAM parameter system

 void ndfPtwcs( AstFrameSet *iwcs, int indf, int *status );
--Store world coordinate system information in an NDF

 int ndfQmask( unsigned char qual, unsigned char badbit );
--Combine an NDF quality value with a bad-bits mask to give a logical result

 void ndfQmf( int indf, int *qmf, int *status );
--Obtain the value of an NDF's quality masking flag

 void ndfReset( int indf, const char *comp, int *status );
--Reset an NDF component to an undefined state

 void ndfSame( int indf1, int indf2, int *same, int *isect, int *status );
--Enquire if two NDFs are part of the same base NDF

 void ndfSbad( int bad, int indf, const char *comp, int *status );
--Set the bad-pixel flag for an NDF array component

 void ndfSbb( signed char badbit, int indf, int *status );
--Set a bad-bits mask value for the quality component of an NDF

 void ndfSbnd( int ndim, const int lbnd[ ], const int ubnd[ ], int indf, int *status );
--Set new pixel-index bounds for an NDF

 void ndfScopy( int indf1, const char *clist, int *place, int *indf2, int *status );
--Selectively copy NDF components to a new location

 void ndfSect( int indf1, int ndim, const int lbnd[ ], const int ubnd[ ], int *indf2, int *status );
--Create an NDF section

 void ndfShift( int nshift, const int shift[ ], int indf, int *status );
--Apply pixel-index shifts to an NDF

 void ndfSize( int indf, int *npix, int *status );
--Determine the size of an NDF

 void ndfSqmf( int qmf, int indf, int *status );
--Set a new logical value for an NDF's quality masking flag

 void ndfSsary( int iary1, int indf, int *iary2, int *status );
--Create an array section, using an NDF section as a template

 void ndfState( int indf, const char *comp, int *state, int *status );
--Determine the state of an NDF component (defined or undefined)

 void ndfStype( const char *ftype, int indf, const char *comp, int *status );
--Set a new type for an NDF array component

 void ndfTemp( int *place, int *status );
--Obtain a placeholder for a temporary NDF

 void ndfTune( int value, const char *tpar, int *status );
--Set an NDF_ system tuning parameter

 void ndfType( int indf, const char *comp, char *type, int type_length, int *status );
--Obtain the numeric type of an NDF array component

 void ndfUnmap( int indf, const char *comp, int *status );
--Unmap an NDF or a mapped NDF array

 void ndfValid( int indf, int *valid, int *status );
--Determine whether an NDF identifier is valid

 void ndfXdel( int indf, const char *xname, int *status );
--Delete a specified NDF extension

 void ndfXgt0c( int indf, const char *xname, const char *cmpt, char *value, int value_length, int *status );
--Read a scalar character string from a component within a named NDF extension

 void ndfXgt0d( int indf, const char *xname, const char *cmpt, double *value, int *status );
--Read a scalar double precision value from a component within a named NDF extension

 void ndfXgt0i( int indf, const char *xname, const char *cmpt, int *value, int *status );
--Read a scalar integer value from a component within a named NDF extension

 void ndfXgt0l( int indf, const char *xname, const char *cmpt, int *value, int *status );
--Read a scalar logical value from a component within a named NDF extension

 void ndfXgt0r( int indf, const char *xname, const char *cmpt, float *value, int *status );
--Read a scalar single precision value from a component within a named NDF extension

 void ndfXiary( int indf, const char *xname, const char *cmpt, const char *mode, int *iary, int *status );
--Obtain access to an array stored in an NDF extension

 void ndfXloc( int indf, const char *xname, const char *mode, char loc[ DAT__SZLOC ], int *status );
--Obtain access to a named NDF extension via an HDS locator

 void ndfXname( int indf, int n, char *xname, int xname_length, int *status );
--Obtain the name of the N'th extension in an NDF

 void ndfXnew( int indf, const char *xname, const char *type, int ndim, const int dim[ ], char loc[ DAT__SZLOC ], int *status );
--Create a new extension in an NDF

 void ndfXnumb( int indf, int *nextn, int *status );
--Determine the number of extensions in an NDF

 void ndfXpt0c( const char *value, int indf, const char *xname, const char *cmpt, int *status );
--Write a scalar character string to a component within a named NDF extension

 void ndfXpt0d( double value, int indf, const char *xname, const char *cmpt, int *status );
--Write a scalar double precision value to a component within a named NDF extension

 void ndfXpt0i( int value, int indf, const char *xname, const char *cmpt, int *status );
--Write a scalar integer value to a component within a named NDF extension

 void ndfXpt0l( int value, int indf, const char *xname, const char *cmpt, int *status );
--Write a scalar logical value to a component within a named NDF extension

 void ndfXpt0r( float value, int indf, const char *xname, const char *cmpt, int *status );
--Write a scalar single precision value to a component within a named NDF extension

 void ndfXstat( int indf, const char *xname, int *there, int *status );
--Determine if a named NDF extension exists



next up previous
Next: OBSOLETE ROUTINES
Previous: Building C Applications


Starlink User Note 33
R.F. Warren-Smith
11th January 2000
E-mail:rfws@star.rl.ac.uk

Copyright © 2000 Council for the Central Laboratory of the Research Councils