Mat_Rewind man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

MAT_REWIND(3)		 BSD Library Functions Manual		 MAT_REWIND(3)

NAME
     Mat_Rewind — Rewind an open .mat file to the beginning

SYNOPSIS
     #include <matio.h>

     int
     Mat_Rewind(mat_t *matfp);

DESCRIPTION
     Rewinds an open .mat file so that Mat_VarReadNext(3) or
     Mat_VarReadNextInfo(3) reads the first variable in the file.

RETURN VALUES
     The function returns 0 on success, or -1 on failure.

EXAMPLES
     The following example shows a list of variables in the MAT file, and
     prompts the user for the index of the variale to read. If the index is
     valid, the file is reset to the beginning, and variables read until the
     selected index is reached.

     #include <stdlib.h>
     #include <stdio.h>
     #include "matio.h"

     int
     main(int argc,char **argv)
     {
	 mat_t	  *matfp;
	 matvar_t *matvar;
	 int	   idx, num_variables;

	 matfp = Mat_Open(argv[1],MAT_ACC_RDONLY);
	 if ( NULL == matfp ) {
	     fprintf(stderr,"Error opening MAT file %s0,argv[1]);
	     return EXIT_FAILURE;
	 }

	 idx = 0;
	 while ( NULL != (matvar = Mat_VarReadNextInfo(matfp)) ) {
	     idx++;
	     printf("%3d. %s0,idx,matvar->name);
	     Mat_VarFree(matvar);
	 }
	 num_variables = idx;
	 if ( num_variables > 0 ) {
	     printf("Which variable would you like to read? ");
	     if ( 0 == fscanf(stdin,"%d",&idx) ) {
		 printf("Invalid variable selection!0);
	     } else if ( idx < 1 || idx > num_variables ) {
		 fprintf(stderr,"That is an invalid variable index!0);
	     } else {
		 int k;
		 Mat_Rewind(matfp);
		 for ( k = 1; k < idx; k++ ) {
		     matvar = Mat_VarReadNextInfo(matfp);
		     Mat_VarFree(matvar);
		 }
		 matvar = Mat_VarReadNext(matfp);
		 Mat_VarPrint(matvar,1);
		 Mat_VarFree(matvar);
	     }
	 }

	 Mat_Close(matfp);
	 return EXIT_SUCCESS;
     }

SEE ALSO
     Mat_Open(3), Mat_Close(3), Mat_VarReadNext(3), Mat_VarReadNextInfo(3)

BSD				April 21, 2011				   BSD
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net