/* IO.c */
#include "../Ideq.h"
/*--------------------------------------------------------------------*/
/*
------------------------------------------------------
purpose -- write the contents of the dequeue to a file
in a human readable format
created -- 98feb11, cca
------------------------------------------------------
*/
void
Ideq_writeForHumanEye (
Ideq *dequeue,
FILE *fp
) {
int ii ;
/*
---------------
check the input
---------------
*/
if ( dequeue == NULL || fp == NULL ) {
fprintf(stderr, "\n fatal error in Ideq_writeForHumanEye(%p,%p)"
"\n bad input\n", dequeue, fp) ;
exit(-1) ;
}
fprintf(fp, "\n\n Ideq : maxsize = %d, head = %d, tail = %d\n",
dequeue->maxsize, dequeue->head, dequeue->tail) ;
if ( dequeue->head != -1 && dequeue->tail != -1) {
if ( dequeue->head <= dequeue->tail ) {
for ( ii = dequeue->head ; ii <= dequeue->tail ; ii++ ) {
fprintf(fp, " %d", IV_entry(&dequeue->iv, ii)) ;
}
} else {
for ( ii = dequeue->head ; ii < dequeue->maxsize ; ii++ ) {
fprintf(fp, " %d", IV_entry(&dequeue->iv, ii)) ;
}
for ( ii = 0 ; ii <= dequeue->tail ; ii++ ) {
fprintf(fp, " %d", IV_entry(&dequeue->iv, ii)) ;
}
}
}
return ; }
/*--------------------------------------------------------------------*/
syntax highlighted by Code2HTML, v. 0.9.1