Changeset 1499 in Sophya for trunk/SophyaExt/FitsIOServer/fitsfile.cc
- Timestamp:
- May 17, 2001, 6:26:45 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaExt/FitsIOServer/fitsfile.cc
r1418 r1499 680 680 int ncol; 681 681 long nels=1; 682 int ligneAsolue = NoLine+1; 682 683 for (ncol=0; ncol<nbcols_; ncol++) 683 684 { 685 int repetition =repeat_[ncol]; 686 int ligneALire = ligneAsolue/repetition; 687 int premierElement = ligneAsolue-ligneALire*repetition; 688 if (premierElement != 0 ) 689 { 690 ligneALire++; 691 } 692 else premierElement = repetition; 693 684 694 switch (types_[ncol]) 685 695 { 686 696 case FitsDataType_double : 687 fits_read_col(fptr_,TDOUBLE,ncol+1,NoLine+1,1,1,&dnull,&ddata[dcount++],&anull,&status); 697 { 698 fits_read_col(fptr_,TDOUBLE,ncol+1,ligneALire,premierElement,1,&dnull,&ddata[dcount++],&anull,&status); 688 699 break; 689 case FitsDataType_float : 690 fits_read_col(fptr_,TFLOAT,ncol+1,NoLine+1,1,1,&fnull,&fdata[fcount++],&anull,&status); 700 } 701 case FitsDataType_float : 702 fits_read_col(fptr_,TFLOAT,ncol+1,ligneALire,premierElement,1,&fnull,&fdata[fcount++],&anull,&status); 691 703 break; 692 704 case FitsDataType_int : 693 fits_read_col(fptr_,TINT,ncol+1, NoLine+1,1,1,&inull,&idata[icount++],705 fits_read_col(fptr_,TINT,ncol+1,ligneALire,premierElement,1,&inull,&idata[icount++], 694 706 &anull,&status); 695 707 break; 708 case FitsDataType_long : 709 fits_read_col(fptr_,TLONG,ncol+1,ligneALire,premierElement,1,&inull,&idata[icount++], &anull,&status); 710 case FitsDataType_byte : 711 { 712 unsigned char uschar = 0; 713 fits_read_col(fptr_,TBYTE,ncol+1,ligneALire,premierElement,1,&inull,&uschar, &anull,&status); 714 idata[icount++] = (int)uschar; 715 } 716 break; 696 717 case FitsDataType_char : 697 fits_read_col(fptr_,TSTRING,ncol+1, NoLine+1,1,1,cnull,&cdata[ccount++],&anull,&status);718 fits_read_col(fptr_,TSTRING,ncol+1,ligneALire,premierElement,1,cnull,&cdata[ccount++],&anull,&status); 698 719 break; 699 720 } … … 1586 1607 cout << " WARNING : types don't match (PutColToFits) : on fits file= " << code << " to be written= DOUBLE " << endl; 1587 1608 } 1609 // cout << " 10 elements de colonne " << endl; 1610 // for (int toto=0; toto < 10; toto++) cout << donnees[toto] << endl; 1588 1611 fits_write_col(fptr_,TDOUBLE,nocol+1,1,1,nentries, donnees ,&status); 1589 1612 if( status ) printerror( status,"erreur ecriture du fichier fits" );
Note:
See TracChangeset
for help on using the changeset viewer.