library_utils.c File Reference

Utility functions. More...

#include "ccp4_sysdep.h"
#include <time.h>
#include <math.h>
#include "ccp4_utils.h"
#include "ccp4_errno.h"
#include <pwd.h>

Defines

#define CCP4_ERRNO(y)   (CCP4_ERR_UTILS | (y))
#define CCP4_NAN   0xfffa5a5a
#define CCP4_NAN   0x80000000
#define CCP4_NAN   0x00008000
#define MDFBIG   -1.0E10

Functions

int ccp4_utils_translate_mode_float (float *out, const void *buffer, int dim, int mode)
size_t ccp4_utils_flength (char *s, int len)
void ccp4_utils_print (const char *message)
int ccp4_utils_setenv (char *str)
int ccp4_utils_outbuf (void)
int ccp4_utils_noinpbuf (void)
union float_uint_uchar ccp4_nan ()
int ccp4_utils_isnan (const union float_uint_uchar *realnum)
void ccp4_utils_bml (int ncols, union float_uint_uchar cols[])
void ccp4_utils_wrg (int ncols, union float_uint_uchar cols[], float wminmax[])
void ccp4_utils_hgetlimits (int *IValueNotDet, float *ValueNotDet)
int ccp4_utils_mkdir (const char *path, const char *cmode)
int ccp4_utils_chmod (const char *path, const char *cmode)
void * ccp4_utils_malloc (size_t size)
void * ccp4_utils_realloc (void *ptr, size_t size)
void * ccp4_utils_calloc (size_t nelem, size_t elsize)
char * ccp4_utils_username (void)
char * ccp4_utils_basename (char *filename)
char * ccp4_utils_pathname (char *filename)
char * ccp4_utils_extension (char *filename)
char * ccp4_utils_joinfilenames (char *dir, char *file)
void ccp4_utils_idate (int iarray[3])
char * ccp4_utils_date (char *date)
void ccp4_utils_itime (int iarray[3])
char * ccp4_utils_time (char *time)
float ccp4_utils_etime (float tarray[2])


Detailed Description

Utility functions.

Author:
Charles Ballard

Function Documentation

union float_uint_uchar ccp4_nan (  )  [write]

Return floating point representation of NaN

References float_uint_uchar::i.

Referenced by ccp4_lrreff(), and MtzAddColumn().

char* ccp4_utils_basename ( char *  filename  ) 

Extracts the basename from a full file name. Separators for directories and extensions are OS-specific.

Parameters:
filename full file name string.
Returns:
pointer to basename

References ccp4_utils_malloc().

Referenced by ccp4fyp(), and ccp4setenv().

void ccp4_utils_bml ( int  ncols,
union float_uint_uchar  cols[] 
)

Check for BIOMOL absence flag.

References float_uint_uchar::f, and float_uint_uchar::i.

void* ccp4_utils_calloc ( size_t  nelem,
size_t  elsize 
)

Wrapper for the calloc function, which adds some error trapping.

Referenced by MtzCallocHist().

int ccp4_utils_chmod ( const char *  path,
const char *  cmode 
)

Change protection mode on a file.

Returns:
1 if successful.

char* ccp4_utils_date ( char *  date  ) 

Return day, month and year printed in a string.

Parameters:
date string to receive the date information. The string must have size >= 11.
Returns:
pointer to date string.

References ccp4_utils_idate().

Referenced by ccp4_banner().

float ccp4_utils_etime ( float  tarray[2]  ) 

Function to obtain User and System times.

Parameters:
tarray Array containing User and System times.
Returns:
Sum of User and System times.

Referenced by ccp4ProgramTime().

char* ccp4_utils_extension ( char *  filename  ) 

Extracts the extension from a full file name. Separators for directories and extensions are OS-specific.

Parameters:
filename full file name string.
Returns:
pointer to extension

References ccp4_utils_malloc().

Referenced by ccp4setenv().

size_t ccp4_utils_flength ( char *  s,
int  len 
)

Gets the length of a Fortran string with trailing blanks removed.

Returns:
length of string

void ccp4_utils_hgetlimits ( int *  IValueNotDet,
float *  ValueNotDet 
)

Define numbers representing integer max and floating point max.

void ccp4_utils_idate ( int  iarray[3]  ) 

Return an integer array containing the day, month and year.

Returns:

Referenced by ccp4_utils_date().

int ccp4_utils_isnan ( const union float_uint_uchar realnum  ) 

Check if a number is NaN

Returns:
true or false

References ccp4_fatal(), and float_uint_uchar::i.

Referenced by ccp4_ismnf().

void ccp4_utils_itime ( int  iarray[3]  ) 

Function to obtain current time.

Parameters:
iarray Array containing hours, minutes and seconds.
Returns:
void.

Referenced by ccp4_utils_time(), and MtzMalloc().

char* ccp4_utils_joinfilenames ( char *  dir,
char *  file 
)

Joins a leading directory with a filename. Separators for directories and extensions are OS-specific.

Parameters:
dir directory path.
file file name string.
Returns:
pointer to joined directory-filename path.

References ccp4_utils_malloc().

Referenced by ccp4fyp().

void* ccp4_utils_malloc ( size_t  size  ) 

int ccp4_utils_mkdir ( const char *  path,
const char *  cmode 
)

Make a directory in the computer filesystem.

Returns:
1 if successful.

int ccp4_utils_noinpbuf ( void   ) 

Turn off buffering of input stream.

int ccp4_utils_outbuf ( void   ) 

Alter buffering behaviour of stdout.

char* ccp4_utils_pathname ( char *  filename  ) 

Extracts the pathname from a full file name. Separators for directories and extensions are OS-specific.

Parameters:
filename full file name string.
Returns:
pointer to pathname with trailing separator.

References ccp4_utils_malloc().

Referenced by ccp4fyp(), and ccp4setenv().

void ccp4_utils_print ( const char *  message  ) 

Print message on stdout.

void* ccp4_utils_realloc ( void *  ptr,
size_t  size 
)

Wrapper for the realloc function, which adds some error trapping.

Referenced by ccp4fyp(), and ccp4setenv().

int ccp4_utils_setenv ( char *  str  ) 

Set variable in the environment

References ccp4_errno, and ccp4_utils_malloc().

Referenced by ccpputenv().

char* ccp4_utils_time ( char *  time  ) 

Alternative to ccp4_utils_itime with time as character string.

Parameters:
time Character string of form HH:MM:SS
Returns:
pointer to character string.

References ccp4_utils_itime().

Referenced by ccp4_banner().

int ccp4_utils_translate_mode_float ( float *  out,
const void *  buffer,
int  dim,
int  mode 
)

Returns:

char* ccp4_utils_username ( void   ) 

Return the user's login name. Note that getlogin only works for processes attached to a terminal (and hence won't work from the GUI). In these instances use getpwuid instead.

Returns:
pointer to character string containing login name.

Referenced by ccp4_banner().


Generated on Wed Oct 29 21:05:09 2008 for gpp4 by  doxygen 1.5.6