Changeset 2782 for trunk/external-alma/atnf/PKSIO/ASTEFXDataset.cc
- Timestamp:
- 03/07/13 18:45:58 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/external-alma/atnf/PKSIO/ASTEFXDataset.cc
r2781 r2782 40 40 // constructor 41 41 ASTEFXDataset::ASTEFXDataset( string name ) 42 : NRODataset( name ) 43 { 44 LogIO os( LogOrigin( "ASTEFXDataset", "ASTEFXDataset()", WHERE ) ) ; 45 46 // check endian 47 open() ; 48 fseek( fp_, 144, SEEK_SET ) ; 49 int tmp ; 50 if( fread( &tmp, 1, sizeof(int), fp_ ) != sizeof(int) ) { 51 os << LogIO::SEVERE << "Error while checking endian of the file. " << LogIO::EXCEPTION ; 52 return ; 53 } 54 if ( ( 0 < tmp ) && ( tmp <= ASTE_ARYMAX_FX ) ) { 55 same_ = true ; 56 os << LogIO::NORMAL << "same endian " << LogIO::POST ; 57 } 58 else { 59 same_ = false ; 60 os << LogIO::NORMAL << "different endian " << LogIO::POST ; 61 } 62 fseek( fp_, 0, SEEK_SET ) ; 63 64 // memory allocation 65 initialize() ; 66 } 42 : ASTEDataset( name ) 43 {} 67 44 68 45 // destructor 69 46 ASTEFXDataset::~ASTEFXDataset() 70 { 71 } 47 {} 72 48 73 // data initialization74 void ASTEFXDataset::initialize()75 {76 RX.resize( ASTE_ARYMAX_FX ) ;77 HPBW.resize( ASTE_ARYMAX_FX ) ;78 EFFA.resize( ASTE_ARYMAX_FX ) ;79 EFFB.resize( ASTE_ARYMAX_FX ) ;80 EFFL.resize( ASTE_ARYMAX_FX ) ;81 EFSS.resize( ASTE_ARYMAX_FX ) ;82 GAIN.resize( ASTE_ARYMAX_FX ) ;83 HORN.resize( ASTE_ARYMAX_FX ) ;84 POLTP.resize( ASTE_ARYMAX_FX ) ;85 POLDR.resize( ASTE_ARYMAX_FX ) ;86 POLAN.resize( ASTE_ARYMAX_FX ) ;87 DFRQ.resize( ASTE_ARYMAX_FX ) ;88 SIDBD.resize( ASTE_ARYMAX_FX ) ;89 REFN.resize( ASTE_ARYMAX_FX ) ;90 IPINT.resize( ASTE_ARYMAX_FX ) ;91 MULTN.resize( ASTE_ARYMAX_FX ) ;92 MLTSCF.resize( ASTE_ARYMAX_FX ) ;93 LAGWIND.resize( ASTE_ARYMAX_FX ) ;94 BEBW.resize( ASTE_ARYMAX_FX ) ;95 BERES.resize( ASTE_ARYMAX_FX ) ;96 CHWID.resize( ASTE_ARYMAX_FX ) ;97 ARRY.resize( ASTE_ARYMAX_FX ) ;98 NFCAL.resize( ASTE_ARYMAX_FX ) ;99 F0CAL.resize( ASTE_ARYMAX_FX ) ;100 FQCAL.resize( ASTE_ARYMAX_FX ) ;101 CHCAL.resize( ASTE_ARYMAX_FX ) ;102 CWCAL.resize( ASTE_ARYMAX_FX ) ;103 DSBFC.resize( ASTE_ARYMAX_FX ) ;104 105 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {106 FQCAL[i].resize( 10 ) ;107 CHCAL[i].resize( 10 ) ;108 CWCAL[i].resize( 10 ) ;109 }110 111 datasize_ += sizeof( char ) * ASTE_ARYMAX_FX * 16 // RX112 + sizeof( double ) * ASTE_ARYMAX_FX * 6 // HPBW, EFFA, EFFB, EFFL, EFSS GAIN113 + sizeof( char ) * ASTE_ARYMAX_FX * 4 // HORN114 + sizeof( char ) * ASTE_ARYMAX_FX * 4 // POLTP115 + sizeof( double ) * ASTE_ARYMAX_FX * 3 // POLDR, POLAN, DFRQ116 + sizeof( char ) * ASTE_ARYMAX_FX * 4 // SIDBID117 + sizeof( int ) * ASTE_ARYMAX_FX * 3 // REFN, IPINT, MULTN118 + sizeof( double ) * ASTE_ARYMAX_FX // MLTSCF119 + sizeof( char ) * ASTE_ARYMAX_FX * 8 // LAGWIND120 + sizeof( double ) * ASTE_ARYMAX_FX * 3 // BEBW, BERES, CHWID121 + sizeof( int ) * ASTE_ARYMAX_FX * 2 // ARRY, NFCAL122 + sizeof( double ) * ASTE_ARYMAX_FX // F0CAL123 + sizeof( double ) * ASTE_ARYMAX_FX * 10 * 3 // FQCAL, CHCAL, CWCAL124 + sizeof( char ) * 116 // CDMY1125 + sizeof( double ) * ASTE_ARYMAX_FX ; // DSBFC126 127 refFreq_.resize( ASTE_ARYMAX_FX, 0.0 ) ;128 }129 130 // fill data header131 int ASTEFXDataset::fillHeader()132 {133 LogIO os( LogOrigin( "ASTEFXDataset", "fillHeader()", WHERE ) ) ;134 135 // open file136 if ( open() ) {137 os << LogIO::SEVERE << "Error opening file " << filename_ << "." << LogIO::EXCEPTION ;138 return -1 ;139 }140 141 // fill142 int status = fillHeader( same_ ) ;143 144 return status ;145 }146 147 int ASTEFXDataset::fillHeader( int sameEndian )148 {149 LogIO os( LogOrigin( "ASTEFXDataset", "fillHeader()", WHERE ) ) ;150 151 string str4( 4, ' ' ) ;152 string str8( 8, ' ' ) ;153 string str16( 16, ' ' ) ;154 string str18( 18, ' ' ) ;155 string str24( 24, ' ' ) ;156 string str40( 40, ' ' ) ;157 string str120( 120, ' ' ) ;158 char c4[4] ;159 char c8[8] ;160 char c16[16] ;161 char c18[18] ;162 char c24[24] ;163 char c40[40] ;164 char c120[120] ;165 // make sure file pointer points a beginning of the file166 fseek( fp_, 0, SEEK_SET ) ;167 168 // read data header169 strcpy( c8, str8.c_str() ) ;170 if ( readHeader( c8, 8 ) == -1 ) {171 os << LogIO::WARN << "Error while reading data LOFIL." << endl ;172 return -1 ;173 }174 LOFIL = string( c8 ) ;175 // DEBUG176 //cout << "LOFIL = " << LOFIL << endl ;177 //178 strcpy( c8, str8.c_str() ) ;179 if ( readHeader( c8, 8 ) == -1 ) {180 os << LogIO::WARN << "Error while reading data VER." << endl ;181 return -1 ;182 }183 VER = string( c8 ) ;184 // DEBUG185 //cout << "VER = " << VER << endl ;186 //187 strcpy( c16, str16.c_str() ) ;188 if ( readHeader( c16, 16 ) == -1 ) {189 os << LogIO::WARN << "Error while reading data GROUP." << endl ;190 return -1 ;191 }192 GROUP = string( c16 ) ;193 // DEBUG194 //cout << "GROUP = " << GROUP << endl ;195 //196 strcpy( c16, str16.c_str() ) ;197 if ( readHeader( c16, 16 ) == -1 ) {198 os << LogIO::WARN << "Error while reading data PROJ." << endl ;199 return -1 ;200 }201 PROJ = string( c16 ) ;202 // DEBUG203 //cout << "PROJ = " << PROJ << endl ;204 //205 strcpy( c24, str24.c_str() ) ;206 if ( readHeader( c24, 24 ) == -1 ) {207 os << LogIO::WARN << "Error while reading data SCHED." << endl ;208 return -1 ;209 }210 SCHED = string( c24 ) ;211 // DEBUG212 //cout << "SCHED = " << SCHED << endl ;213 //214 strcpy( c40, str40.c_str() ) ;215 if ( readHeader( c40, 40 ) == -1 ) {216 os << LogIO::WARN << "Error while reading data OBSVR." << endl ;217 return -1 ;218 }219 OBSVR = string( c40 ) ;220 // DEBUG221 //cout << "OBSVR = " << OBSVR << endl ;222 //223 strcpy( c16, str16.c_str() ) ;224 if ( readHeader( c16, 16 ) == -1 ) {225 os << LogIO::WARN << "Error while reading data LOSTM." << endl ;226 return -1 ;227 }228 LOSTM = string( c16 ) ;229 // DEBUG230 //cout << "LOSTM = " << LOSTM << endl ;231 //232 strcpy( c16, str16.c_str() ) ;233 if ( readHeader( c16, 16 ) == -1 ) {234 os << LogIO::WARN << "Error while reading data LOETM." << endl ;235 return -1 ;236 }237 LOETM = string( c16 ) ;238 // DEBUG239 //cout << "LOETM = " << LOETM << endl ;240 //241 if ( readHeader( ARYNM, sameEndian ) == -1 ) {242 os << LogIO::WARN << "Error while reading data ARYNM." << endl ;243 return -1 ;244 }245 // DEBUG246 //cout << "ARYNM = " << ARYNM << endl ;247 //248 if ( readHeader( NSCAN, sameEndian ) == -1 ) {249 os << LogIO::WARN << "Error while reading data NSCAN." << endl ;250 return -1 ;251 }252 // DEBUG253 //cout << "NSCAN = " << NSCAN << endl ;254 //255 strcpy( c120, str120.c_str() ) ;256 if ( readHeader( c120, 120 ) == -1 ) {257 os << LogIO::WARN << "Error while reading data TITLE." << endl ;258 return -1 ;259 }260 TITLE = string( c120 ) ;261 // DEBUG262 //cout << "TITLE = " << TITLE << endl ;263 //264 strcpy( c16, str16.c_str() ) ;265 if ( readHeader( c16, 16 ) == -1 ) {266 os << LogIO::WARN << "Error while reading data OBJ." << endl ;267 return -1 ;268 }269 OBJ = string( c16 ) ;270 // DEBUG271 //cout << "OBJ = " << OBJ << endl ;272 //273 strcpy( c8, str8.c_str() ) ;274 if ( readHeader( c8, 8 ) == -1 ) {275 os << LogIO::WARN << "Error while reading data EPOCH." << endl ;276 return -1 ;277 }278 EPOCH = string( c8 ) ;279 // DEBUG280 //cout << "EPOCH = " << EPOCH << endl ;281 //282 if ( readHeader( RA0, sameEndian ) == -1 ) {283 os << LogIO::WARN << "Error while reading data RA0." << endl ;284 return -1 ;285 }286 // DEBUG287 //cout << "RA0 = " << RA0 << endl ;288 //289 if ( readHeader( DEC0, sameEndian ) == -1 ) {290 os << LogIO::WARN << "Error while reading data DEC0." << endl ;291 return -1 ;292 }293 // DEBUG294 //cout << "DEC0 = " << DEC0 << endl ;295 //296 if ( readHeader( GLNG0, sameEndian ) == -1 ) {297 os << LogIO::WARN << "Error while reading data GLNG0." << endl ;298 return -1 ;299 }300 // DEBUG301 //cout << "GLNG0 = " << GLNG0 << endl ;302 //303 if ( readHeader( GLAT0, sameEndian ) == -1 ) {304 os << LogIO::WARN << "Error while reading data GLAT0." << endl ;305 return -1 ;306 }307 // DEBUG308 //cout << "GLAT0 = " << GLAT0 << endl ;309 //310 if ( readHeader( NCALB, sameEndian ) == -1 ) {311 os << LogIO::WARN << "Error while reading data NCALB." << endl ;312 return -1 ;313 }314 // DEBUG315 //cout << "NCALB = " << NCALB << endl ;316 //317 if ( readHeader( SCNCD, sameEndian ) == -1 ) {318 os << LogIO::WARN << "Error while reading data SCNCD." << endl ;319 return -1 ;320 }321 // DEBUG322 //cout << "SCNCD = " << SCNCD << endl ;323 //324 strcpy( c120, str120.c_str() ) ;325 if ( readHeader( c120, 120 ) == -1 ) {326 os << LogIO::WARN << "Error while reading data SCMOD." << endl ;327 return -1 ;328 }329 SCMOD = string( c120 ) ;330 // DEBUG331 //cout << "SCMOD = " << SCMOD << endl ;332 //333 if ( readHeader( URVEL, sameEndian ) == -1 ) {334 os << LogIO::WARN << "Error while reading data URVEL." << endl ;335 return -1 ;336 }337 // DEBUG338 //cout << "URVEL = " << URVEL << endl ;339 //340 strcpy( c4, str4.c_str() ) ;341 if ( readHeader( c4, 4 ) == -1 ) {342 os << LogIO::WARN << "Error while reading data VREF." << endl ;343 return -1 ;344 }345 VREF = string( c4 ) ;346 // DEBUG347 //cout << "VREF = " << VREF << endl ;348 //349 strcpy( c4, str4.c_str() ) ;350 if ( readHeader( c4, 4 ) == -1 ) {351 os << LogIO::WARN << "Error while reading data VDEF." << endl ;352 return -1 ;353 }354 VDEF = string( c4 ) ;355 // DEBUG356 //cout << "VDEF = " << VDEF << endl ;357 //358 strcpy( c8, str8.c_str() ) ;359 if ( readHeader( c8, 8 ) == -1 ) {360 os << LogIO::WARN << "Error while reading data SWMOD." << endl ;361 return -1 ;362 }363 SWMOD = string( c8 ) + "::OTF" ;364 // DEBUG365 //cout << "SWMOD = " << SWMOD << endl ;366 //367 if ( readHeader( FRQSW, sameEndian ) == -1 ) {368 os << LogIO::WARN << "Error while reading data FRQSW." << endl ;369 return -1 ;370 }371 // DEBUG372 //cout << "FRQSW = " << FRQSW << endl ;373 //374 if ( readHeader( DBEAM, sameEndian ) == -1 ) {375 os << LogIO::WARN << "Error while reading data DBEAM." << endl ;376 return -1 ;377 }378 // DEBUG379 //cout << "DBEAM = " << DBEAM << endl ;380 //381 if ( readHeader( MLTOF, sameEndian ) == -1 ) {382 os << LogIO::WARN << "Error while reading data MLTOF." << endl ;383 return -1 ;384 }385 // DEBUG386 //cout << "MLTOF = " << MLTOF << endl ;387 //388 if ( readHeader( CMTQ, sameEndian ) == -1 ) {389 os << LogIO::WARN << "Error while reading data CMTQ." << endl ;390 return -1 ;391 }392 // DEBUG393 //cout << "CMTQ = " << CMTQ << endl ;394 //395 if ( readHeader( CMTE, sameEndian ) == -1 ) {396 os << LogIO::WARN << "Error while reading data CMTE." << endl ;397 return -1 ;398 }399 // DEBUG400 //cout << "CMTE = " << CMTE << endl ;401 //402 if ( readHeader( CMTSOM, sameEndian ) == -1 ) {403 os << LogIO::WARN << "Error while reading data CMTSOM." << endl ;404 return -1 ;405 }406 // DEBUG407 //cout << "CMTSOM = " << CMTSOM << endl ;408 //409 if ( readHeader( CMTNODE, sameEndian ) == -1 ) {410 os << LogIO::WARN << "Error while reading data CMTNODE." << endl ;411 return -1 ;412 }413 // DEBUG414 //cout << "CMTNODE = " << CMTNODE << endl ;415 //416 if ( readHeader( CMTI, sameEndian ) == -1 ) {417 os << LogIO::WARN << "Error while reading data CMTI." << endl ;418 return -1 ;419 }420 // DEBUG421 //cout << "CMTI = " << CMTI << endl ;422 //423 strcpy( c24, str24.c_str() ) ;424 if ( readHeader( c24, 24 ) == -1 ) {425 os << LogIO::WARN << "Error while reading data CMTTM." << endl ;426 return -1 ;427 }428 CMTTM = string( c24 ) ;429 // DEBUG430 //cout << "CMTTM = " << CMTTM << endl ;431 //432 if ( readHeader( SBDX, sameEndian ) == -1 ) {433 os << LogIO::WARN << "Error while reading data SBDX." << endl ;434 return -1 ;435 }436 // DEBUG437 //cout << "SBDX = " << SBDX << endl ;438 //439 if ( readHeader( SBDY, sameEndian ) == -1 ) {440 os << LogIO::WARN << "Error while reading data SBDY." << endl ;441 return -1 ;442 }443 // DEBUG444 //cout << "SBDY = " << SBDY << endl ;445 //446 if ( readHeader( SBDZ1, sameEndian ) == -1 ) {447 os << LogIO::WARN << "Error while reading data SBDZ1." << endl ;448 return -1 ;449 }450 // DEBUG451 //cout << "SBDZ1 = " << SBDZ1 << endl ;452 //453 if ( readHeader( SBDZ2, sameEndian ) == -1 ) {454 os << LogIO::WARN << "Error while reading data SBDZ2." << endl ;455 return -1 ;456 }457 // DEBUG458 //cout << "SBDZ2 = " << SBDZ2 << endl ;459 //460 if ( readHeader( DAZP, sameEndian ) == -1 ) {461 os << LogIO::WARN << "Error while reading data DAZP." << endl ;462 return -1 ;463 }464 // DEBUG465 //cout << "DAZP = " << DAZP << endl ;466 //467 if ( readHeader( DELP, sameEndian ) == -1 ) {468 os << LogIO::WARN << "Error while reading data DELP." << endl ;469 return -1 ;470 }471 // DEBUG472 //cout << "DELP = " << DELP << endl ;473 //474 if ( readHeader( CHBIND, sameEndian ) == -1 ) {475 os << LogIO::WARN << "Error while reading data CHBIND." << endl ;476 return -1 ;477 }478 // DEBUG479 //cout << "CHBIND = " << CHBIND << endl ;480 //481 if ( readHeader( NUMCH, sameEndian ) == -1 ) {482 os << LogIO::WARN << "Error while reading data NUMCH." << endl ;483 return -1 ;484 }485 // DEBUG486 //cout << "NUMCH = " << NUMCH << endl ;487 //488 if ( readHeader( CHMIN, sameEndian ) == -1 ) {489 os << LogIO::WARN << "Error while reading data CHMIN." << endl ;490 return -1 ;491 }492 // DEBUG493 //cout << "CHMIN = " << CHMIN << endl ;494 //495 if ( readHeader( CHMAX, sameEndian ) == -1 ) {496 os << LogIO::WARN << "Error while reading data CHMAX." << endl ;497 return -1 ;498 }499 // DEBUG500 //cout << "CHMAX = " << CHMAX << endl ;501 //502 if ( readHeader( ALCTM, sameEndian ) == -1 ) {503 os << LogIO::WARN << "Error while reading data ALCTM." << endl ;504 return -1 ;505 }506 // DEBUG507 //cout << "ALCTM = " << ALCTM << endl ;508 //509 if ( readHeader( IPTIM, sameEndian ) == -1 ) {510 os << LogIO::WARN << "Error while reading data IPTIM." << endl ;511 return -1 ;512 }513 // DEBUG514 //cout << "IPTIM = " << IPTIM << endl ;515 //516 if ( readHeader( PA, sameEndian ) == -1 ) {517 os << LogIO::WARN << "Error while reading data PA." << endl ;518 return -1 ;519 }520 // DEBUG521 //cout << "PA = " << PA << endl ;522 //523 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {524 strcpy( c18, str18.c_str() ) ;525 if ( readHeader( c18, 16 ) == -1 ) {526 os << LogIO::WARN << "Error while reading data RX[" << i << "]." << endl ;527 return -1 ;528 }529 c18[16] = '\0' ;530 RX[i] = string( c18 ) ;531 }532 // DEBUG533 // nro_debug_output( "RX", ASTE_ARYMAX_FX, RX ) ;534 //535 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {536 if ( readHeader( HPBW[i], sameEndian ) == -1 ) {537 os << LogIO::WARN << "Error while reading data HPBW[" << i << "]." << endl ;538 return -1 ;539 }540 }541 // DEBUG542 // nro_debug_output( "HPBW", ASTE_ARYMAX_FX, HPBW ) ;543 //544 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {545 if ( readHeader( EFFA[i], sameEndian ) == -1 ) {546 os << LogIO::WARN << "Error while reading data EFFA[" << i << "]." << endl ;547 return -1 ;548 }549 }550 // DEBUG551 // nro_debug_output( "EFFA", ASTE_ARYMAX_FX, EFFA ) ;552 //553 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {554 if ( readHeader( EFFB[i], sameEndian ) == -1 ) {555 os << LogIO::WARN << "Error while reading data EFFB[" << i << "]." << endl ;556 return -1 ;557 }558 }559 // DEBUG560 // nro_debug_output( "EFFB", ASTE_ARYMAX_FX, EFFB ) ;561 //562 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {563 if ( readHeader( EFFL[i], sameEndian ) == -1 ) {564 os << LogIO::WARN << "Error while reading data EFFL[" << i << "]." << endl ;565 return -1 ;566 }567 }568 // DEBUG569 // nro_debug_output( "EFFL", ASTE_ARYMAX_FX, EFFL ) ;570 //571 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {572 if ( readHeader( EFSS[i], sameEndian ) == -1 ) {573 os << LogIO::WARN << "Error while reading data EFSS[" << i << "]." << endl ;574 return -1 ;575 }576 }577 // DEBUG578 // nro_debug_output( "EFSS", ASTE_ARYMAX_FX, EFSS ) ;579 //580 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {581 if ( readHeader( GAIN[i], sameEndian ) == -1 ) {582 os << LogIO::WARN << "Error while reading data GAIN[" << i << "]." << endl ;583 return -1 ;584 }585 }586 // DEBUG587 // nro_debug_output( "GAIN", ASTE_ARYMAX_FX, GAIN ) ;588 //589 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {590 strcpy( c4, str4.c_str() ) ;591 if ( readHeader( c4, 4 ) == -1 ) {592 os << LogIO::WARN << "Error while reading data HORN[" << i << "]." << endl ;593 return -1 ;594 }595 HORN[i] = string( c4 ) ;596 }597 // DEBUG598 // nro_debug_output( "HORN", ASTE_ARYMAX_FX, HORN ) ;599 //600 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {601 strcpy( c4, str4.c_str() ) ;602 if ( readHeader( c4, 4 ) == -1 ) {603 os << LogIO::WARN << "Error while reading data POLTP[" << i << "]." << endl ;604 return -1 ;605 }606 POLTP[i] = string( c4 ) ;607 }608 // DEBUG609 // nro_debug_output( "POLTP", ASTE_ARYMAX_FX, POLTP ) ;610 //611 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {612 if ( readHeader( POLDR[i], sameEndian ) == -1 ) {613 os << LogIO::WARN << "Error while reading data POLDR[" << i << "]." << endl ;614 return -1 ;615 }616 }617 // DEBUG618 // nro_debug_output( "POLDR", ASTE_ARYMAX_FX, POLDR ) ;619 //620 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {621 if ( readHeader( POLAN[i], sameEndian ) == -1 ) {622 os << LogIO::WARN << "Error while reading data POLAN[" << i << "]." << endl ;623 return -1 ;624 }625 }626 // DEBUG627 // nro_debug_output( "POLAN", ASTE_ARYMAX_FX, POLAN ) ;628 //629 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {630 if ( readHeader( DFRQ[i], sameEndian ) == -1 ) {631 os << LogIO::WARN << "Error while reading data DFRQ[" << i << "]." << endl ;632 return -1 ;633 }634 }635 // DEBUG636 // nro_debug_output( "DFRQ", ASTE_ARYMAX_FX, DFRQ ) ;637 //638 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {639 strcpy( c4, str4.c_str() ) ;640 if ( readHeader( c4, 4 ) == -1 ) {641 os << LogIO::WARN << "Error while reading data SIDBD[" << i << "]." << endl ;642 return -1 ;643 }644 SIDBD[i] = string( c4 ) ;645 }646 // DEBUG647 // nro_debug_output( "SIDBD", ASTE_ARYMAX_FX, SIDBD ) ;648 //649 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {650 if ( readHeader( REFN[i], sameEndian ) == -1 ) {651 os << LogIO::WARN << "Error while reading data REFN[" << i << "]." << endl ;652 return -1 ;653 }654 }655 // DEBUG656 // nro_debug_output( "REFN", ASTE_ARYMAX_FX, REFN ) ;657 //658 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {659 if ( readHeader( IPINT[i], sameEndian ) == -1 ) {660 os << LogIO::WARN << "Error while reading data IPINT[" << i << "]." << endl ;661 return -1 ;662 }663 }664 // DEBUG665 // nro_debug_output( "IPINT", ASTE_ARYMAX_FX, IPINT ) ;666 //667 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {668 if ( readHeader( MULTN[i], sameEndian ) == -1 ) {669 os << LogIO::WARN << "Error while reading data MULTN[" << i << "]." << endl ;670 return -1 ;671 }672 }673 // DEBUG674 // nro_debug_output( "MULTN", ASTE_ARYMAX_FX, MULTN ) ;675 //676 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {677 if ( readHeader( MLTSCF[i], sameEndian ) == -1 ) {678 os << LogIO::WARN << "Error while reading data MLTSCF[" << i << "]." << endl ;679 return -1 ;680 }681 }682 // DEBUG683 // nro_debug_output( "MLTSCF", ASTE_ARYMAX_FX, MLTSCF ) ;684 //685 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {686 strcpy( c8, str8.c_str() ) ;687 if ( readHeader( c8, 8 ) == -1 ) {688 os << LogIO::WARN << "Error while reading data LAGWIND[" << i << "]." << endl ;689 return -1 ;690 }691 LAGWIND[i] = string( c8 ) ;692 }693 // DEBUG694 // nro_debug_output( "LAGWIND", ASTE_ARYMAX_FX, LAGWIND ) ;695 //696 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {697 if ( readHeader( BEBW[i], sameEndian ) == -1 ) {698 os << LogIO::WARN << "Error while reading data BEBW[" << i << "]." << endl ;699 return -1 ;700 }701 }702 // DEBUG703 // nro_debug_output( "BEBW", ASTE_ARYMAX_FX, BEBW ) ;704 //705 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {706 if ( readHeader( BERES[i], sameEndian ) == -1 ) {707 os << LogIO::WARN << "Error while reading data BERES[" << i << "]." << endl ;708 return -1 ;709 }710 }711 // DEBUG712 // nro_debug_output( "BERES", ASTE_ARYMAX_FX, BERES ) ;713 //714 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {715 if ( readHeader( CHWID[i], sameEndian ) == -1 ) {716 os << LogIO::WARN << "Error while reading data CHWID[" << i << "]." << endl ;717 return -1 ;718 }719 }720 // DEBUG721 // nro_debug_output( "CHWID", ASTE_ARYMAX_FX, CHWID ) ;722 //723 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {724 if ( readHeader( ARRY[i], sameEndian ) == -1 ) {725 os << LogIO::WARN << "Error while reading data ARRY[" << i << "]." << endl ;726 return -1 ;727 }728 }729 // DEBUG730 // nro_debug_output( "ARRY", ASTE_ARYMAX_FX, ARRY ) ;731 //732 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {733 if ( readHeader( NFCAL[i], sameEndian ) == -1 ) {734 os << LogIO::WARN << "Error while reading data NFCAL[" << i << "]." << endl ;735 return -1 ;736 }737 }738 // DEBUG739 // nro_debug_output( "NFCAL", ASTE_ARYMAX_FX, NFCAL ) ;740 //741 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {742 if ( readHeader( F0CAL[i], sameEndian ) == -1 ) {743 os << LogIO::WARN << "Error while reading data F0CAL[" << i << "]." << endl ;744 return -1 ;745 }746 }747 // DEBUG748 // nro_debug_output( "F0CAL", ASTE_ARYMAX_FX, F0CAL ) ;749 //750 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {751 for ( int j = 0 ; j < 10 ; j++ ) {752 if ( readHeader( FQCAL[i][j], sameEndian ) == -1 ) {753 os << LogIO::WARN << "Error while reading data FQCAL[" << i << "][" << j << "]." << endl ;754 return -1 ;755 }756 }757 }758 // DEBUG759 // nro_debug_output( "FQCAL", ASTE_ARYMAX_FX, 10, FQCAL ) ;760 //761 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {762 for ( int j = 0 ; j < 10 ; j++ ) {763 if ( readHeader( CHCAL[i][j], sameEndian ) == -1 ) {764 os << LogIO::WARN << "Error while reading data CHCAL[" << i << "][" << j << "]." << endl ;765 return -1 ;766 }767 }768 }769 // DEBUG770 // nro_debug_output( "CHCAL", ASTE_ARYMAX_FX, 10, CHCAL ) ;771 //772 for ( int i= 0 ; i < ASTE_ARYMAX_FX ; i++) {773 for ( int j = 0 ; j < 10 ; j++ ) {774 if ( readHeader( CWCAL[i][j], sameEndian ) == -1 ) {775 os << LogIO::WARN << "Error while reading data CWCAL[" << i << "][" << j << "]." << endl ;776 return -1 ;777 }778 }779 }780 // DEBUG781 // nro_debug_output( "CWCAL", ASTE_ARYMAX_FX, 10, CWCAL ) ;782 //783 if ( readHeader( SCNLEN, sameEndian ) == -1 ) {784 os << LogIO::WARN << "Error while reading data SCNLEN." << endl ;785 return -1 ;786 }787 // DEBUG788 //cout << "SCNLEN = " << SCNLEN << endl ;789 //790 if ( readHeader( SBIND, sameEndian ) == -1 ) {791 os << LogIO::WARN << "Error while reading data SBIND." << endl ;792 return -1 ;793 }794 // DEBUG795 //cout << "SBIND = " << SBIND << endl ;796 //797 if ( readHeader( IBIT, sameEndian ) == -1 ) {798 os << LogIO::WARN << "Error while reading data IBIT." << endl ;799 return -1 ;800 }801 // DEBUG802 //cout << "IBIT = " << IBIT << endl ;803 //804 strcpy( c8, str8.c_str() ) ;805 if ( readHeader( c8, 8 ) == -1 ) {806 os << LogIO::WARN << "Error while reading data SITE." << endl ;807 return -1 ;808 }809 SITE = string( c8 ) ;810 // DEBUG811 //cout << "SITE = " << SITE << endl ;812 //813 strcpy( c120, str120.c_str() ) ;814 if ( readHeader( c120, 116 ) == -1 ) {815 os << LogIO::WARN << "Error while reading data CDMY1." << endl ;816 return -1 ;817 }818 c120[116] = '\0' ;819 CDMY1 = string( c120 ) ;820 // DEBUG821 //cout << "CDMY1 = " << CDMY1 << endl ;822 //823 for ( int i = 0 ; i < ASTE_ARYMAX_FX ; i++ ) {824 if ( readHeader( DSBFC[i], sameEndian ) == -1 ) {825 os << LogIO::WARN << "Error while reading data DSBFC[" << i << "]." << endl ;826 return -1 ;827 }828 }829 // DEBUG830 // nro_debug_output( "DSBFC", ASTE_ARYMAX_FX, DSBFC ) ;831 //832 833 //scanNum_ = NSCAN + 1 ; // includes ZERO scan834 scanLen_ = SCNLEN ;835 dataLen_ = scanLen_ - SCAN_HEADER_SIZE ;836 scanNum_ = getScanNum();837 rowNum_ = scanNum_ * ARYNM ;838 chmax_ = (int) ( dataLen_ * 8 / IBIT ) ;839 record_->LDATA = new char[dataLen_] ;840 841 initArray();842 843 show() ;844 845 return 0 ;846 }
Note: See TracChangeset
for help on using the changeset viewer.