sfdata.c:     if (sf->data_info != (long *)NULL) {
sfdata.c:          dinfo[ROW] = sf->data_info[ROW];
sfdata.c:          dinfo[COL] = sf->data_info[COL];
sfdata.c:          dinfo[REG] = sf->data_info[REG];
sfdata.c:              memcpy(data[i],sf->data[i],sizeof(double) * dinfo[COL]);
sfdata.c:     if ( ((SpecScan *)sf->current->contents)->data_offset == -1 ) {
sfdata.c:     headersize = ((SpecScan *)sf->current->contents)->data_offset
sfdata.c:                - ((SpecScan *)sf->current->contents)->offset;
sfdata.c:     from = sf->scanbuffer + headersize;
sfdata.c:     to   = sf->scanbuffer + ((SpecScan *)sf->current->contents)->size;
sfdata.c:       sf->data_info = ( long * ) malloc ( sizeof(long) * D_INFO);
sfdata.c:       sf->data_info[ROW] = dinfo[ROW];
sfdata.c:       sf->data_info[COL] = dinfo[COL];
sfdata.c:       sf->data_info[REG] = dinfo[REG];
sfdata.c:       sf->data =  ( double **) malloc ( sizeof(double *) * dinfo[ROW]); 
sfdata.c:           sf->data[i] = (double *)malloc (sizeof(double) * dinfo[COL]);
sfdata.c:           memcpy(sf->data[i],data[i],sizeof(double) * dinfo[COL]);
sfdata.c:      if ( sf->no_labels != -1 ) {
sfdata.c:         nb_lab = sf->no_labels;
sfdata.c:         labels = sf->labels;
sfdata.c:     if ( ((SpecScan *)sf->current->contents)->data_offset == -1 ) {
sfdata.c:     headersize = ((SpecScan *)sf->current->contents)->data_offset
sfdata.c:                - ((SpecScan *)sf->current->contents)->offset;
sfdata.c:     from = sf->scanbuffer + headersize;
sfdata.c:     to   = sf->scanbuffer + ((SpecScan *)sf->current->contents)->size;
sfheader.c:     for ( ptr = sf->scanbuffer + cnt; *ptr != ' ' ; ptr++,cnt++);
sfheader.c:     for ( ptr = sf->scanbuffer + cnt; *ptr == ' ' || *ptr == '\t'; ptr++,cnt++);
sfheader.c:     for ( ptr = sf->scanbuffer + cnt; *ptr != '\n' ; ptr++,cnt++);
sfheader.c:     ptr = sf->scanbuffer + start;
sfheader.c:     headbuf   = sf->scanbuffer;
sfheader.c:     endheader = sf->scanbuffer + sf->scansize;
sfheader.c:     headbuf   = sf->filebuffer;
sfheader.c:     endheader = sf->filebuffer + sf->filebuffersize;
sfheader.c:         headbuf   = sf->scanbuffer;
sfheader.c:         endheader = sf->scanbuffer + sf->scanheadersize;
sfheader.c:         if ( sf->filebuffersize == 0 ) {
sfheader.c:         headbuf   = sf->filebuffer;
sfheader.c:         endheader = sf->filebuffer + sf->filebuffersize;
sfindex.c:     scan_list = (long *)malloc( sizeof(long) * (sf->no_scans) );
sfindex.c:     for ( ptr=sf->list.first ; ptr ; ptr=ptr->next ,i++) {
sfindex.c:     indexes =  (long *)malloc(sf->no_scans * sizeof(long));
sfindex.c:     for (ptr = sf->list.first; ptr; ptr=ptr->next ) {
sfindex.c:     ptr = findScanByNo( &(sf->list), number, order );
sfindex.c:     list = (long *)malloc( sizeof(long) * (sf->no_scans) );
sfindex.c:	  for ( ptr=sf->list.first ; ptr ; ptr=ptr->next ) {
sfindex.c:	  for ( ptr=sf->list.first ; ptr ; ptr=ptr->next ) {
sfindex.c:	  for ( ptr=sf->list.first ; ptr ; ptr=ptr->next ) {
sfindex.c:     return( sf->no_scans );
sfindex.c:     list = findScanByIndex( &(sf->list), index );
sfindex.c:     list = findScanByIndex( &(sf->list), index );
sfindex.c:     list = findScanByIndex( &(sf->list), index );
sfindex.c:     lseek(sf->fd,from,SEEK_SET);
sfindex.c:     nbytes = read(sf->fd,buffer,size);
sfinit.c:   sf->fd     = fd;
sfinit.c:   sf->m_time = mystat.st_mtime;
sfinit.c:   sf->sfname = (char *)strdup(name);
sfinit.c:   sf->list.first      = (ObjectList *)NULL;
sfinit.c:   sf->list.last       = (ObjectList *)NULL;
sfinit.c:   sf->no_scans        = 0;
sfinit.c:   sf->current         = (ObjectList *)NULL;
sfinit.c:   sf->scanbuffer      = (char *)NULL;
sfinit.c:   sf->scanheadersize  = 0;
sfinit.c:   sf->filebuffer      = (char *)NULL;
sfinit.c:   sf->filebuffersize  = 0;
sfinit.c:   sf->no_labels       = -1;
sfinit.c:   sf->labels          = (char **)NULL;
sfinit.c:   sf->no_motor_names  = -1;
sfinit.c:   sf->motor_names     = (char **)NULL;
sfinit.c:   sf->no_motor_pos    = -1;
sfinit.c:   sf->motor_pos       = (double *)NULL;
sfinit.c:   sf->data            = (double **)NULL;
sfinit.c:   sf->data_info       = (long *)NULL;
sfinit.c:   sf->cursor = cursor;
sfinit.c:     for( ptr=sf->list.last ; ptr ; ptr=prevptr ) {
sfinit.c:     if( close(sf->fd) ) {
sfinit.c:     free ((char *)sf->sfname);
sfinit.c:    stat(sf->sfname,&mystat);
sfinit.c:    if (sf->m_time != mtime)  {
sfinit.c:       sfResumeRead (sf,&(sf->cursor),error);
sfinit.c:       sfReadFile   (sf,&(sf->cursor),error);
sfinit.c:       sf->m_time = mtime;        
sfinit.c:       /*sfWriteIndex (sf,&(sf->cursor),error);*/
sfinit.c:   fd   = sf->fd;
sfinit.c:              free(sf->sfname);
sfinit.c:  sf->no_scans = cursor->scanno;
sfinit.c:    lseek(sf->fd,cursor->bytecnt,SEEK_SET);
sfinit.c:    namelength = strlen(sf->sfname) + strlen(SF_ISFX) + 1;
sfinit.c:    sprintf(idxname,"%s%s",sf->sfname,SF_ISFX);
sfinit.c:    if (sf->m_time != mtime)  modif = 1;
sfinit.c:        addToList(&(sf->list), (void *)&scan, (long)sizeof(SpecScan));
sfinit.c:    sf->no_scans = i;
sfinit.c:    namelength = strlen(sf->sfname) + strlen(SF_ISFX) + 1;
sfinit.c:    sprintf(idxname,"%s%s",sf->sfname,SF_ISFX);
sfinit.c:        mtime = sf->m_time;
sfinit.c:        for( obj = sf->list.first; obj ; obj = obj->next)
sfinit.c:        ptr = sf->list.last;
sfinit.c:        addToList( &(sf->list), (void *)&scan, (long) sizeof(SpecScan));
sfinit.c:  for ( object = (sf->list).first; object; object=object->next) {
sfinit.c:        lseek(sf->fd,scan->offset,SEEK_SET);
sfinit.c:        read(sf->fd,buffer,size);
sfinit.c:        for ( object2 = (sf->list).first; object2 != object; object2=object2->next) {
sflabel.c:     if (sf->no_labels != -1 ) {
sflabel.c:        no_labels = sf->no_labels;
sflabel.c:         label = (char *) strdup(sf->labels[selection]);
sflabel.c:     if (sf->labels != (char **)NULL ) {
sflabel.c:         labarr = (char **)malloc(sizeof(char *) * sf->no_labels);
sflabel.c:         for ( i=0;i<sf->no_labels;i++)
sflabel.c:             labarr[i] = (char *)strdup(sf->labels[i]);
sflabel.c:         return(sf->no_labels);
sflabel.c:     sf->no_labels = no_labels;
sflabel.c:     sf->labels    = (char **) malloc( sizeof(char *) * no_labels);
sflabel.c:           sf->labels[i] = (char *) strdup(labarr[i]);
sflabel.c:     if (sf->motor_names != (char **)NULL) {
sflabel.c:         motarr = (char **)malloc(sizeof(char *) * sf->no_motor_names);
sflabel.c:         for (i=0;i<sf->no_motor_names;i++) {
sflabel.c:             motarr[i] = (char *) strdup (sf->motor_names[i]);
sflabel.c:         return(sf->no_motor_names);
sflabel.c:   sf->no_motor_names = motct;
sflabel.c:   sf->motor_names = (char **)malloc(sizeof(char *) * motct);
sflabel.c:        sf->motor_names[i] = (char *)strdup(motarr[i]);
sflabel.c:     if ( sf->no_motor_names != -1 ) {
sflabel.c:        nb_mot = sf->no_motor_names;
sflabel.c:         motor = (char *)strdup(sf->motor_names[selection]);
sflabel.c:     if (sf->motor_pos != (double *)NULL) {
sflabel.c:         posarr = (double *)malloc(sizeof(double) * sf->no_motor_pos);
sflabel.c:         for (i=0;i<sf->no_motor_pos;i++) {
sflabel.c:             posarr[i] = sf->motor_pos[i];
sflabel.c:         return(sf->no_motor_pos);
sflabel.c:      sf->no_motor_pos = motct;
sflabel.c:      sf->motor_pos    = (double *)malloc(sizeof(double) * motct);
sflabel.c:      memcpy(sf->motor_pos,pos,motct * sizeof(double));
sflabel.c:     if (sf->no_motor_pos != -1 ) {
sflabel.c:       nb_mot = sf->no_motor_pos;
sflabel.c:         retpos = sf->motor_pos[selection];
sflabel.c:     if ( sf->no_motor_names != -1 ) {
sflabel.c:        nb_mot = sf->no_motor_names;
sflabel.c:        motors = sf->motor_names;
sfmca.c:     return( ((SpecScan *)sf->current->contents)->mcaspectra );
sfmca.c:     headersize = ((SpecScan *)sf->current->contents)->data_offset
sfmca.c:                - ((SpecScan *)sf->current->contents)->offset;
sfmca.c:     from = sf->scanbuffer + headersize;
sfmca.c:     to   = sf->scanbuffer + ((SpecScan *)sf->current->contents)->size;
sftest.c:   printf(" <SfOpen>: \"%12s\"\n",sf->sfname);
sftools.c:     list = findScanByIndex(&(sf->list),index);
sftools.c:     if (sf->scanbuffer != ( char * ) NULL) free(sf->scanbuffer);
sftools.c:     sf->scanbuffer = ( char *) malloc(scan->size);
sftools.c:     if (sf->scanbuffer == (char *)NULL) {
sftools.c:     lseek(sf->fd,scan->offset,SEEK_SET);
sftools.c:     nbytes = read(sf->fd,sf->scanbuffer,scan->size);
sftools.c:     if ( sf->scanbuffer[0] != '#' || sf->scanbuffer[1] != 'S') {
sftools.c:     sf->scanheadersize = scan->data_offset - scan->offset;
sftools.c:        if (sf->filebuffer != ( char * ) NULL) free(sf->filebuffer);
sftools.c:        flist        = findFirstInFile(&(sf->list),scan->file_header);
sftools.c:            sf->filebuffer = ( char *) malloc(fileheadsize);
sftools.c:            if (sf->filebuffer == (char *)NULL) {
sftools.c:            lseek(sf->fd,start,SEEK_SET);
sftools.c:            read(sf->fd,sf->filebuffer,fileheadsize);
sftools.c:            sf->filebuffersize = fileheadsize;
sftools.c:     sf->scansize = scan->size;
sftools.c:     sf->current  = list;
sftools.c:     if (sf->current) {
sftools.c:     return ( ((SpecScan *)sf->current->contents)->file_header ==
sftools.c:     if ( sf->current == (ObjectList *)NULL) return(0);
sftools.c:     return ( ((SpecScan *)sf->current->contents)->index == index ); 
sftools.c:    if (sf->motor_pos != (double *)NULL) {
sftools.c:         free(sf->motor_pos);
sftools.c:         sf->motor_pos    = (double *)NULL;
sftools.c:         sf->no_motor_pos = -1;
sftools.c:    if (sf->motor_names != (char **)NULL) {
sftools.c:         freeArrNZ((void ***)&(sf->motor_names),sf->no_motor_names);
sftools.c:         sf->motor_names    = (char **)NULL;
sftools.c:         sf->no_motor_names = -1;
sftools.c:    if (sf->labels != (char **)NULL) {
sftools.c:         freeArrNZ((void ***)&(sf->labels),sf->no_labels);
sftools.c:         sf->labels    = (char **)NULL;
sftools.c:         sf->no_labels = -1;
sftools.c:    if (sf->data_info != (long *)NULL) {
sftools.c:         freeArrNZ((void ***)&(sf->data),sf->data_info[ROW]);
sftools.c:         free(sf->data_info);
sftools.c:         sf->data      = (double **)NULL;
sftools.c:         sf->data_info = (long *)NULL;
sftools.c:      printf("<Showing Info>  - specfile: %s\n",sf->sfname);
sftools.c:      printf("    - no_scans: %ld\n",sf->no_scans);
sftools.c:      printf("    - current:  %ld\n",((SpecScan*)sf->current->contents)->scan_no);
sftools.c:      printf("    - no_scans: %ld\n",sf->cursor.scanno);
sftools.c:      printf("    - bytecnt:  %ld\n",sf->cursor.bytecnt);
sftools.c:     printf("<Showing Info>  - specfile: %s / idx %ld\n",sf->sfname,index);
sftools.c:     scan = (SpecScan *) sf->current->contents;     
sfwrite.c:     if ( index > sfo->sf->no_scans || index < 1 ) {
sfwrite.c:     if ( begin < 1 || end > sfo->sf->no_scans ) {
sfwrite.c:     if ( sfo->sf->no_scans > 0 ) {
sfwrite.c:      for ( i=1 ; i<=sfo->sf->no_scans ; i++ ) {
sfwrite.c:     if ( begin < 1 || end > sfo->sf->no_scans ) {
sfwrite.c:   file_header = ((SpecScan *)sf->current->contents)->size;
sfwrite.c:        printf("Writing %d bytes\n",sf->filebuffersize);
sfwrite.c:        write(output, (void *) sf->filebuffer, sf->filebuffersize);
sfwrite.c:   size = ((SpecScan *)sf->current->contents)->size;
sfwrite.c:   if ( write(output,(void *) sf->scanbuffer,size) == -1 ) {
