source: trunk/external-alma/atnf/PKSIO/NROOTFDataset.cc@ 2782

Last change on this file since 2782 was 2782, checked in by Takeshi Nakazato, 12 years ago

New Development: No

JIRA Issue: No

Ready for Test: Yes

Interface Changes: No

What Interface Changed: Please list interface changes

Test Programs: List test programs

Put in Release Notes: Yes/No

Module(s): Module Names change impacts.

Description: Describe your changes here...

Refactoring NRO filler.


File size: 22.2 KB
RevLine 
[1757]1//#---------------------------------------------------------------------------
2//# NROOTFDataset.cc: Class for NRO 45m OTF dataset.
3//#---------------------------------------------------------------------------
4//# Copyright (C) 2000-2006
5//# Associated Universities, Inc. Washington DC, USA.
6//#
7//# This library is free software; you can redistribute it and/or modify it
8//# under the terms of the GNU Library General Public License as published by
9//# the Free Software Foundation; either version 2 of the License, or (at your
10//# option) any later version.
11//#
12//# This library is distributed in the hope that it will be useful, but WITHOUT
13//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14//# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
15//# License for more details.
16//#
17//# You should have received a copy of the GNU Library General Public License
18//# along with this library; if not, write to the Free Software Foundation,
19//# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
20//#
21//# Correspondence concerning AIPS++ should be addressed as follows:
22//# Internet email: aips2-request@nrao.edu.
23//# Postal address: AIPS++ Project Office
24//# National Radio Astronomy Observatory
25//# 520 Edgemont Road
26//# Charlottesville, VA 22903-2475 USA
27//#
28//# $Id$
29//#---------------------------------------------------------------------------
30//# Original: 2009/02/27, Takeshi Nakazato, NAOJ
31//#---------------------------------------------------------------------------
32
33#include <atnf/PKSIO/NROOTFDataset.h>
34
35#include <iostream>
36#include <cstring>
37
38using namespace std ;
39
40// constructor
41NROOTFDataset::NROOTFDataset( string name )
42 : NRODataset( name )
[2782]43{}
[1757]44
45// destructor
46NROOTFDataset::~NROOTFDataset()
[2782]47{}
[1757]48
49// data initialization
50void NROOTFDataset::initialize()
51{
[2782]52 int arymax = arrayMax() ;
[1757]53
[2782]54 // it must be called
55 NRODataset::initialize() ;
56
57 // additional initialization
58 datasize_ += sizeof( char ) * arymax * 16 // RX
59 + sizeof( double ) * arymax * 6 // HPBW, EFFA, EFFB, EFFL, EFSS GAIN
60 + sizeof( char ) * arymax * 4 // HORN
61 + sizeof( char ) * arymax * 4 // POLTP
62 + sizeof( double ) * arymax * 3 // POLDR, POLAN, DFRQ
63 + sizeof( char ) * arymax * 4 // SIDBID
64 + sizeof( int ) * arymax * 3 // REFN, IPINT, MULTN
65 + sizeof( double ) * arymax // MLTSCF
66 + sizeof( char ) * arymax * 8 // LAGWIND
67 + sizeof( double ) * arymax * 3 // BEBW, BERES, CHWID
68 + sizeof( int ) * arymax * 2 // ARRY, NFCAL
69 + sizeof( double ) * arymax // F0CAL
70 + sizeof( double ) * arymax * 10 * 3 // FQCAL, CHCAL, CWCAL
[1757]71 + sizeof( char ) * 180 ; // CDMY1
[1868]72
[2782]73 for ( int i = 0 ; i < NRO_ARYMAX ; i++ ) {
74 DSBFC[i] = 1.0 ;
[1757]75 }
76}
77
78int NROOTFDataset::fillHeader( int sameEndian )
79{
80 LogIO os( LogOrigin( "NROOTFDataset", "fillHeader()", WHERE ) ) ;
81
[2782]82 int arymax = arrayMax() ;
83
[1757]84 string str4( 4, ' ' ) ;
85 string str8( 8, ' ' ) ;
86 string str16( 16, ' ' ) ;
87 string str18( 18, ' ' ) ;
88 string str24( 24, ' ' ) ;
89 string str40( 40, ' ' ) ;
90 string str120( 120, ' ' ) ;
91 string str256( 256, ' ' ) ;
92 char c4[4] ;
93 char c8[8] ;
94 char c16[16] ;
95 char c18[18] ;
96 char c24[24] ;
97 char c40[40] ;
98 char c120[120] ;
99 char c256[256] ;
100 // make sure file pointer points a beginning of the file
101 fseek( fp_, 0, SEEK_SET ) ;
102
103 // read data header
104 strcpy( c8, str8.c_str() ) ;
105 if ( readHeader( c8, 8 ) == -1 ) {
106 os << LogIO::WARN << "Error while reading data LOFIL." << LogIO::POST ;
107 return -1 ;
108 }
109 LOFIL = string( c8 ) ;
110 // DEBUG
111 //cout << "LOFIL = " << LOFIL << endl ;
112 //
113 strcpy( c8, str8.c_str() ) ;
114 if ( readHeader( c8, 8 ) == -1 ) {
115 os << LogIO::WARN << "Error while reading data VER." << LogIO::POST ;
116 return -1 ;
117 }
118 VER = string( c8 ) ;
119 // DEBUG
120 //cout << "VER = " << VER << endl ;
121 //
122 strcpy( c16, str16.c_str() ) ;
123 if ( readHeader( c16, 16 ) == -1 ) {
124 os << LogIO::WARN << "Error while reading data GROUP." << LogIO::POST ;
125 return -1 ;
126 }
127 GROUP = string( c16 ) ;
128 // DEBUG
129 //cout << "GROUP = " << GROUP << endl ;
130 //
131 strcpy( c16, str16.c_str() ) ;
132 if ( readHeader( c16, 16 ) == -1 ) {
133 os << LogIO::WARN << "Error while reading data PROJ." << LogIO::POST ;
134 return -1 ;
135 }
136 PROJ = string( c16 ) ;
137 // DEBUG
138 //cout << "PROJ = " << PROJ << endl ;
139 //
140 strcpy( c24, str24.c_str() ) ;
141 if ( readHeader( c24, 24 ) == -1 ) {
142 os << LogIO::WARN << "Error while reading data SCHED." << LogIO::POST ;
143 return -1 ;
144 }
145 SCHED = string( c24 ) ;
146 // DEBUG
147 //cout << "SCHED = " << SCHED << endl ;
148 //
149 strcpy( c40, str40.c_str() ) ;
150 if ( readHeader( c40, 40 ) == -1 ) {
151 os << LogIO::WARN << "Error while reading data OBSVR." << LogIO::POST ;
152 return -1 ;
153 }
154 OBSVR = string( c40 ) ;
155 // DEBUG
156 //cout << "OBSVR = " << OBSVR << endl ;
157 //
158 strcpy( c16, str16.c_str() ) ;
159 if ( readHeader( c16, 16 ) == -1 ) {
160 os << LogIO::WARN << "Error while reading data LOSTM." << LogIO::POST ;
161 return -1 ;
162 }
163 LOSTM = string( c16 ) ;
164 // DEBUG
165 //cout << "LOSTM = " << LOSTM << endl ;
166 //
167 strcpy( c16, str16.c_str() ) ;
168 if ( readHeader( c16, 16 ) == -1 ) {
169 os << LogIO::WARN << "Error while reading data LOETM." << LogIO::POST ;
170 return -1 ;
171 }
172 LOETM = string( c16 ) ;
173 // DEBUG
174 //cout << "LOETM = " << LOETM << endl ;
175 //
176 if ( readHeader( ARYNM, sameEndian ) == -1 ) {
177 os << LogIO::WARN << "Error while reading data ARYNM." << LogIO::POST ;
178 return -1 ;
179 }
180 // DEBUG
181 //cout << "ARYNM = " << ARYNM << endl ;
182 //
183 if ( readHeader( NSCAN, sameEndian ) == -1 ) {
184 os << LogIO::WARN << "Error while reading data NSCAN." << LogIO::POST ;
185 return -1 ;
186 }
187 // DEBUG
188 //cout << "NSCAN = " << NSCAN << endl ;
189 //
190 strcpy( c120, str120.c_str() ) ;
191 if ( readHeader( c120, 120 ) == -1 ) {
192 os << LogIO::WARN << "Error while reading data TITLE." << LogIO::POST ;
193 return -1 ;
194 }
195 TITLE = string( c120 ) ;
196 // DEBUG
197 //cout << "TITLE = " << TITLE << endl ;
198 //
199 strcpy( c16, str16.c_str() ) ;
200 if ( readHeader( c16, 16 ) == -1 ) {
201 os << LogIO::WARN << "Error while reading data OBJ." << LogIO::POST ;
202 return -1 ;
203 }
204 OBJ = string( c16 ) ;
205 // DEBUG
206 //cout << "OBJ = " << OBJ << endl ;
207 //
208 strcpy( c8, str8.c_str() ) ;
209 if ( readHeader( c8, 8 ) == -1 ) {
210 os << LogIO::WARN << "Error while reading data EPOCH." << LogIO::POST ;
211 return -1 ;
212 }
213 EPOCH = string( c8 ) ;
214 // DEBUG
215 //cout << "EPOCH = " << EPOCH << endl ;
216 //
217 if ( readHeader( RA0, sameEndian ) == -1 ) {
218 os << LogIO::WARN << "Error while reading data RA0." << LogIO::POST ;
219 return -1 ;
220 }
221 // DEBUG
222 //cout << "RA0 = " << RA0 << endl ;
223 //
224 if ( readHeader( DEC0, sameEndian ) == -1 ) {
225 os << LogIO::WARN << "Error while reading data DEC0." << LogIO::POST ;
226 return -1 ;
227 }
228 // DEBUG
229 //cout << "DEC0 = " << DEC0 << endl ;
230 //
231 if ( readHeader( GLNG0, sameEndian ) == -1 ) {
232 os << LogIO::WARN << "Error while reading data GLNG0." << LogIO::POST ;
233 return -1 ;
234 }
235 // DEBUG
236 //cout << "GLNG0 = " << GLNG0 << endl ;
237 //
238 if ( readHeader( GLAT0, sameEndian ) == -1 ) {
239 os << LogIO::WARN << "Error while reading data GLAT0." << LogIO::POST ;
240 return -1 ;
241 }
242 // DEBUG
243 //cout << "GLAT0 = " << GLAT0 << endl ;
244 //
245 if ( readHeader( NCALB, sameEndian ) == -1 ) {
246 os << LogIO::WARN << "Error while reading data NCALB." << LogIO::POST ;
247 return -1 ;
248 }
249 // DEBUG
250 //cout << "NCALB = " << NCALB << endl ;
251 //
252 if ( readHeader( SCNCD, sameEndian ) == -1 ) {
253 os << LogIO::WARN << "Error while reading data SCNCD." << LogIO::POST ;
254 return -1 ;
255 }
256 // DEBUG
257 //cout << "SCNCD = " << SCNCD << endl ;
258 //
259 strcpy( c120, str120.c_str() ) ;
260 if ( readHeader( c120, 120 ) == -1 ) {
261 os << LogIO::WARN << "Error while reading data SCMOD." << LogIO::POST ;
262 return -1 ;
263 }
264 SCMOD = string( c120 ) ;
265 // DEBUG
266 //cout << "SCMOD = " << SCMOD << endl ;
267 //
268 if ( readHeader( URVEL, sameEndian ) == -1 ) {
269 os << LogIO::WARN << "Error while reading data URVEL." << LogIO::POST ;
270 return -1 ;
271 }
272 // DEBUG
273 //cout << "URVEL = " << URVEL << endl ;
274 //
275 strcpy( c4, str4.c_str() ) ;
276 if ( readHeader( c4, 4 ) == -1 ) {
277 os << LogIO::WARN << "Error while reading data VREF." << LogIO::POST ;
278 return -1 ;
279 }
280 VREF = string( c4 ) ;
281 // DEBUG
282 //cout << "VREF = " << VREF << endl ;
283 //
284 strcpy( c4, str4.c_str() ) ;
285 if ( readHeader( c4, 4 ) == -1 ) {
286 os << LogIO::WARN << "Error while reading data VDEF." << LogIO::POST ;
287 return -1 ;
288 }
289 VDEF = string( c4 ) ;
290 // DEBUG
291 //cout << "VDEF = " << VDEF << endl ;
292 //
293 strcpy( c8, str8.c_str() ) ;
294 if ( readHeader( c8, 8 ) == -1 ) {
295 os << LogIO::WARN << "Error while reading data SWMOD." << LogIO::POST ;
296 return -1 ;
297 }
298 SWMOD = string( c8 ) + "::OTF" ;
299 // DEBUG
300 //cout << "SWMOD = " << SWMOD << endl ;
301 //
302 if ( readHeader( FRQSW, sameEndian ) == -1 ) {
303 os << LogIO::WARN << "Error while reading data FRQSW." << LogIO::POST ;
304 return -1 ;
305 }
306 // DEBUG
307 //cout << "FRQSW = " << FRQSW << endl ;
308 //
309 if ( readHeader( DBEAM, sameEndian ) == -1 ) {
310 os << LogIO::WARN << "Error while reading data DBEAM." << LogIO::POST ;
311 return -1 ;
312 }
313 // DEBUG
314 //cout << "DBEAM = " << DBEAM << endl ;
315 //
316 if ( readHeader( MLTOF, sameEndian ) == -1 ) {
317 os << LogIO::WARN << "Error while reading data MLTOF." << LogIO::POST ;
318 return -1 ;
319 }
320 // DEBUG
321 //cout << "MLTOF = " << MLTOF << endl ;
322 //
323 if ( readHeader( CMTQ, sameEndian ) == -1 ) {
324 os << LogIO::WARN << "Error while reading data CMTQ." << LogIO::POST ;
325 return -1 ;
326 }
327 // DEBUG
328 //cout << "CMTQ = " << CMTQ << endl ;
329 //
330 if ( readHeader( CMTE, sameEndian ) == -1 ) {
331 os << LogIO::WARN << "Error while reading data CMTE." << LogIO::POST ;
332 return -1 ;
333 }
334 // DEBUG
335 //cout << "CMTE = " << CMTE << endl ;
336 //
337 if ( readHeader( CMTSOM, sameEndian ) == -1 ) {
338 os << LogIO::WARN << "Error while reading data CMTSOM." << LogIO::POST ;
339 return -1 ;
340 }
341 // DEBUG
342 //cout << "CMTSOM = " << CMTSOM << endl ;
343 //
344 if ( readHeader( CMTNODE, sameEndian ) == -1 ) {
345 os << LogIO::WARN << "Error while reading data CMTNODE." << LogIO::POST ;
346 return -1 ;
347 }
348 // DEBUG
349 //cout << "CMTNODE = " << CMTNODE << endl ;
350 //
351 if ( readHeader( CMTI, sameEndian ) == -1 ) {
352 os << LogIO::WARN << "Error while reading data CMTI." << LogIO::POST ;
353 return -1 ;
354 }
355 // DEBUG
356 //cout << "CMTI = " << CMTI << endl ;
357 //
358 strcpy( c24, str24.c_str() ) ;
359 if ( readHeader( c24, 24 ) == -1 ) {
360 os << LogIO::WARN << "Error while reading data CMTTM." << LogIO::POST ;
361 return -1 ;
362 }
363 CMTTM = string( c24 ) ;
364 // DEBUG
365 //cout << "CMTTM = " << CMTTM << endl ;
366 //
367 if ( readHeader( SBDX, sameEndian ) == -1 ) {
368 os << LogIO::WARN << "Error while reading data SBDX." << LogIO::POST ;
369 return -1 ;
370 }
371 // DEBUG
372 //cout << "SBDX = " << SBDX << endl ;
373 //
374 if ( readHeader( SBDY, sameEndian ) == -1 ) {
375 os << LogIO::WARN << "Error while reading data SBDY." << LogIO::POST ;
376 return -1 ;
377 }
378 // DEBUG
379 //cout << "SBDY = " << SBDY << endl ;
380 //
381 if ( readHeader( SBDZ1, sameEndian ) == -1 ) {
382 os << LogIO::WARN << "Error while reading data SBDZ1." << LogIO::POST ;
383 return -1 ;
384 }
385 // DEBUG
386 //cout << "SBDZ1 = " << SBDZ1 << endl ;
387 //
388 if ( readHeader( SBDZ2, sameEndian ) == -1 ) {
389 os << LogIO::WARN << "Error while reading data SBDZ2." << LogIO::POST ;
390 return -1 ;
391 }
392 // DEBUG
393 //cout << "SBDZ2 = " << SBDZ2 << endl ;
394 //
395 if ( readHeader( DAZP, sameEndian ) == -1 ) {
396 os << LogIO::WARN << "Error while reading data DAZP." << LogIO::POST ;
397 return -1 ;
398 }
399 // DEBUG
400 //cout << "DAZP = " << DAZP << endl ;
401 //
402 if ( readHeader( DELP, sameEndian ) == -1 ) {
403 os << LogIO::WARN << "Error while reading data DELP." << LogIO::POST ;
404 return -1 ;
405 }
406 // DEBUG
407 //cout << "DELP = " << DELP << endl ;
408 //
409 if ( readHeader( CHBIND, sameEndian ) == -1 ) {
410 os << LogIO::WARN << "Error while reading data CHBIND." << LogIO::POST ;
411 return -1 ;
412 }
413 // DEBUG
414 //cout << "CHBIND = " << CHBIND << endl ;
415 //
416 if ( readHeader( NUMCH, sameEndian ) == -1 ) {
417 os << LogIO::WARN << "Error while reading data NUMCH." << LogIO::POST ;
418 return -1 ;
419 }
420 // DEBUG
421 //cout << "NUMCH = " << NUMCH << endl ;
422 //
423 if ( readHeader( CHMIN, sameEndian ) == -1 ) {
424 os << LogIO::WARN << "Error while reading data CHMIN." << LogIO::POST ;
425 return -1 ;
426 }
427 // DEBUG
428 //cout << "CHMIN = " << CHMIN << endl ;
429 //
430 if ( readHeader( CHMAX, sameEndian ) == -1 ) {
431 os << LogIO::WARN << "Error while reading data CHMAX." << LogIO::POST ;
432 return -1 ;
433 }
434 // DEBUG
435 //cout << "CHMAX = " << CHMAX << endl ;
436 //
437 if ( readHeader( ALCTM, sameEndian ) == -1 ) {
438 os << LogIO::WARN << "Error while reading data ALCTM." << LogIO::POST ;
439 return -1 ;
440 }
441 // DEBUG
442 //cout << "ALCTM = " << ALCTM << endl ;
443 //
444 if ( readHeader( IPTIM, sameEndian ) == -1 ) {
445 os << LogIO::WARN << "Error while reading data IPTIM." << LogIO::POST ;
446 return -1 ;
447 }
448 // DEBUG
449 //cout << "IPTIM = " << IPTIM << endl ;
450 //
451 if ( readHeader( PA, sameEndian ) == -1 ) {
452 os << LogIO::WARN << "Error while reading data PA." << LogIO::POST ;
453 return -1 ;
454 }
455 // DEBUG
456 //cout << "PA = " << PA << endl ;
457 //
[2782]458 for ( int i = 0 ; i < arymax ; i++ ) {
[1757]459 strcpy( c18, str18.c_str() ) ;
460 if ( readHeader( c18, 16 ) == -1 ) {
461 os << LogIO::WARN << "Error while reading data RX[" << i << "]." << LogIO::POST ;
462 return -1 ;
463 }
464 c18[16] = '\0' ;
465 RX[i] = string( c18 ) ;
466 }
[2436]467 // DEBUG
[2782]468// nro_debug_output( "RX", arymax, RX ) ;
[2436]469 //
[2782]470 for ( int i = 0 ; i < arymax ; i++ ) {
[1757]471 if ( readHeader( HPBW[i], sameEndian ) == -1 ) {
472 os << LogIO::WARN << "Error while reading data HPBW[" << i << "]." << LogIO::POST ;
473 return -1 ;
474 }
475 }
[2436]476 // DEBUG
[2782]477// nro_debug_output( "HPBW", arymax, HPBW ) ;
[2436]478 //
[2782]479 for ( int i = 0 ; i < arymax ; i++ ) {
[1757]480 if ( readHeader( EFFA[i], sameEndian ) == -1 ) {
481 os << LogIO::WARN << "Error while reading data EFFA[" << i << "]." << LogIO::POST ;
482 return -1 ;
483 }
484 }
[2436]485 // DEBUG
[2782]486// nro_debug_output( "EFFA", arymax, EFFA ) ;
[2436]487 //
[2782]488 for ( int i = 0 ; i < arymax ; i++ ) {
[1757]489 if ( readHeader( EFFB[i], sameEndian ) == -1 ) {
490 os << LogIO::WARN << "Error while reading data EFFB[" << i << "]." << LogIO::POST ;
491 return -1 ;
492 }
493 }
[2436]494 // DEBUG
[2782]495// nro_debug_output( "EFFB", arymax, EFFB ) ;
[2436]496 //
[2782]497 for ( int i = 0 ; i < arymax ; i++ ) {
[1757]498 if ( readHeader( EFFL[i], sameEndian ) == -1 ) {
499 os << LogIO::WARN << "Error while reading data EFFL[" << i << "]." << LogIO::POST ;
500 return -1 ;
501 }
502 }
[2436]503 // DEBUG
[2782]504// nro_debug_output( "EFFL", arymax, EFFL ) ;
[2436]505 //
[2782]506 for ( int i = 0 ; i < arymax ; i++ ) {
[1757]507 if ( readHeader( EFSS[i], sameEndian ) == -1 ) {
508 os << LogIO::WARN << "Error while reading data EFSS[" << i << "]." << LogIO::POST ;
509 return -1 ;
510 }
511 }
[2436]512 // DEBUG
[2782]513// nro_debug_output( "EFSS", arymax, EFSS ) ;
[2436]514 //
[2782]515 for ( int i = 0 ; i < arymax ; i++) {
[1757]516 if ( readHeader( GAIN[i], sameEndian ) == -1 ) {
517 os << LogIO::WARN << "Error while reading data GAIN[" << i << "]." << LogIO::POST ;
518 return -1 ;
519 }
520 }
[2436]521 // DEBUG
[2782]522// nro_debug_output( "GAIN", arymax, GAIN ) ;
[2436]523 //
[2782]524 for ( int i = 0 ; i < arymax ; i++) {
[1757]525 strcpy( c4, str4.c_str() ) ;
526 if ( readHeader( c4, 4 ) == -1 ) {
527 os << LogIO::WARN << "Error while reading data HORN[" << i << "]." << LogIO::POST ;
528 return -1 ;
529 }
530 HORN[i] = string( c4 ) ;
531 }
[2436]532 // DEBUG
[2782]533// nro_debug_output( "HORN", arymax, HORN ) ;
[2436]534 //
[2782]535 for ( int i = 0 ; i < arymax ; i++) {
[1757]536 strcpy( c4, str4.c_str() ) ;
537 if ( readHeader( c4, 4 ) == -1 ) {
538 os << LogIO::WARN << "Error while reading data POLTP[" << i << "]." << LogIO::POST ;
539 return -1 ;
540 }
541 POLTP[i] = string( c4 ) ;
542 }
[2436]543 // DEBUG
[2782]544// nro_debug_output( "POLTP", arymax, POLTP ) ;
[2436]545 //
[2782]546 for ( int i = 0 ; i < arymax ; i++) {
[1757]547 if ( readHeader( POLDR[i], sameEndian ) == -1 ) {
548 os << LogIO::WARN << "Error while reading data POLDR[" << i << "]." << LogIO::POST ;
549 return -1 ;
550 }
551 }
[2436]552 // DEBUG
[2782]553// nro_debug_output( "POLDR", arymax, POLDR ) ;
[2436]554 //
[2782]555 for ( int i = 0 ; i < arymax ; i++) {
[1757]556 if ( readHeader( POLAN[i], sameEndian ) == -1 ) {
557 os << LogIO::WARN << "Error while reading data POLAN[" << i << "]." << LogIO::POST ;
558 return -1 ;
559 }
560 }
[2436]561 // DEBUG
[2782]562// nro_debug_output( "POLAN", arymax, POLAN ) ;
[2436]563 //
[2782]564 for ( int i = 0 ; i < arymax ; i++) {
[1757]565 if ( readHeader( DFRQ[i], sameEndian ) == -1 ) {
566 os << LogIO::WARN << "Error while reading data DFRQ[" << i << "]." << LogIO::POST ;
567 return -1 ;
568 }
569 }
[2436]570 // DEBUG
[2782]571// nro_debug_output( "DFRQ", arymax, DFRQ ) ;
[2436]572 //
[2782]573 for ( int i = 0 ; i < arymax ; i++) {
[1757]574 strcpy( c4, str4.c_str() ) ;
575 if ( readHeader( c4, 4 ) == -1 ) {
576 os << LogIO::WARN << "Error while reading data SIDBD[" << i << "]." << LogIO::POST ;
577 return -1 ;
578 }
579 SIDBD[i] = string( c4 ) ;
580 }
[2436]581 // DEBUG
[2782]582// nro_debug_output( "SIDBD", arymax, SIDBD ) ;
[2436]583 //
[2782]584 for ( int i = 0 ; i < arymax ; i++) {
[1757]585 if ( readHeader( REFN[i], sameEndian ) == -1 ) {
586 os << LogIO::WARN << "Error while reading data REFN[" << i << "]." << LogIO::POST ;
587 return -1 ;
588 }
589 }
[2436]590 // DEBUG
[2782]591// nro_debug_output( "REFN", arymax, REFN ) ;
[2436]592 //
[2782]593 for ( int i = 0 ; i < arymax ; i++) {
[1757]594 if ( readHeader( IPINT[i], sameEndian ) == -1 ) {
595 os << LogIO::WARN << "Error while reading data IPINT[" << i << "]." << LogIO::POST ;
596 return -1 ;
597 }
598 }
[2436]599 // DEBUG
[2782]600// nro_debug_output( "IPINT", arymax, IPINT ) ;
[2436]601 //
[2782]602 for ( int i = 0 ; i < arymax ; i++) {
[1757]603 if ( readHeader( MULTN[i], sameEndian ) == -1 ) {
604 os << LogIO::WARN << "Error while reading data MULTN[" << i << "]." << LogIO::POST ;
605 return -1 ;
606 }
607 }
[2436]608 // DEBUG
[2782]609// nro_debug_output( "MULTN", arymax, MULTN ) ;
[2436]610 //
[2782]611 for ( int i = 0 ; i < arymax ; i++) {
[1757]612 if ( readHeader( MLTSCF[i], sameEndian ) == -1 ) {
613 os << LogIO::WARN << "Error while reading data MLTSCF[" << i << "]." << LogIO::POST ;
614 return -1 ;
615 }
616 }
[2436]617 // DEBUG
[2782]618// nro_debug_output( "MLTSCF", arymax, MLTSCF ) ;
[2436]619 //
[2782]620 for ( int i = 0 ; i < arymax ; i++) {
[1757]621 strcpy( c8, str8.c_str() ) ;
622 if ( readHeader( c8, 8 ) == -1 ) {
623 os << LogIO::WARN << "Error while reading data LAGWIND[" << i << "]." << LogIO::POST ;
624 return -1 ;
625 }
626 LAGWIND[i] = string( c8 ) ;
627 }
[2436]628 // DEBUG
[2782]629// nro_debug_output( "LAGWIND", arymax, LAGWIND ) ;
[2436]630 //
[2782]631 for ( int i = 0 ; i < arymax ; i++) {
[1757]632 if ( readHeader( BEBW[i], sameEndian ) == -1 ) {
633 os << LogIO::WARN << "Error while reading data BEBW[" << i << "]." << LogIO::POST ;
634 return -1 ;
635 }
636 }
[2436]637 // DEBUG
[2782]638// nro_debug_output( "BEBW", arymax, BEBW ) ;
[2436]639 //
[2782]640 for ( int i = 0 ; i < arymax ; i++) {
[1757]641 if ( readHeader( BERES[i], sameEndian ) == -1 ) {
642 os << LogIO::WARN << "Error while reading data BERES[" << i << "]." << LogIO::POST ;
643 return -1 ;
644 }
645 }
[2436]646 // DEBUG
[2782]647// nro_debug_output( "BERES", arymax, BERES ) ;
[2436]648 //
[2782]649 for ( int i = 0 ; i < arymax ; i++) {
[1757]650 if ( readHeader( CHWID[i], sameEndian ) == -1 ) {
651 os << LogIO::WARN << "Error while reading data CHWID[" << i << "]." << LogIO::POST ;
652 return -1 ;
653 }
654 }
[2436]655 // DEBUG
[2782]656// nro_debug_output( "CHWID", arymax, CHWID ) ;
[2436]657 //
[2782]658 for ( int i = 0 ; i < arymax ; i++) {
[1757]659 if ( readHeader( ARRY[i], sameEndian ) == -1 ) {
660 os << LogIO::WARN << "Error while reading data ARRY[" << i << "]." << LogIO::POST ;
661 return -1 ;
662 }
663 }
[2436]664 // DEBUG
[2782]665// nro_debug_output( "ARRY", arymax, ARRY ) ;
[2436]666 //
[2782]667 for ( int i = 0 ; i < arymax ; i++) {
[1757]668 if ( readHeader( NFCAL[i], sameEndian ) == -1 ) {
669 os << LogIO::WARN << "Error while reading data NFCAL[" << i << "]." << LogIO::POST ;
670 return -1 ;
671 }
672 }
[2436]673 // DEBUG
[2782]674// nro_debug_output( "NFCAL", arymax, NFCAL ) ;
[2436]675 //
[2782]676 for ( int i = 0 ; i < arymax ; i++) {
[1757]677 if ( readHeader( F0CAL[i], sameEndian ) == -1 ) {
678 os << LogIO::WARN << "Error while reading data F0CAL[" << i << "]." << LogIO::POST ;
679 return -1 ;
680 }
681 }
[2436]682 // DEBUG
[2782]683// nro_debug_output( "F0CAL", arymax, F0CAL ) ;
[2436]684 //
[2782]685 for ( int i = 0 ; i < arymax ; i++) {
[1757]686 for ( int j = 0 ; j < 10 ; j++ ) {
687 if ( readHeader( FQCAL[i][j], sameEndian ) == -1 ) {
688 os << LogIO::WARN << "Error while reading data FQCAL[" << i << "][" << j << "]." << LogIO::POST ;
689 return -1 ;
690 }
691 }
692 }
[2436]693 // DEBUG
[2782]694// nro_debug_output( "FQCAL", arymax, 10, FQCAL ) ;
[2436]695 //
[2782]696 for ( int i = 0 ; i < arymax ; i++) {
[1757]697 for ( int j = 0 ; j < 10 ; j++ ) {
698 if ( readHeader( CHCAL[i][j], sameEndian ) == -1 ) {
699 os << LogIO::WARN << "Error while reading data CHCAL[" << i << "][" << j << "]." << LogIO::POST ;
700 return -1 ;
701 }
702 }
703 }
[2436]704 // DEBUG
[2782]705// nro_debug_output( "CHCAL", arymax, 10, CHCAL ) ;
[2436]706 //
[2782]707 for ( int i = 0 ; i < arymax ; i++) {
[1757]708 for ( int j = 0 ; j < 10 ; j++ ) {
709 if ( readHeader( CWCAL[i][j], sameEndian ) == -1 ) {
710 os << LogIO::WARN << "Error while reading data CWCAL[" << i << "][" << j << "]." << LogIO::POST ;
711 return -1 ;
712 }
713 }
714 }
[2436]715 // DEBUG
[2782]716// nro_debug_output( "CWCAL", arymax, 10, CWCAL ) ;
[2436]717 //
[1757]718 if ( readHeader( SCNLEN, sameEndian ) == -1 ) {
719 os << LogIO::WARN << "Error while reading data SCNLEN." << LogIO::POST ;
720 return -1 ;
721 }
722 // DEBUG
723 //cout << "SCNLEN = " << SCNLEN << endl ;
724 //
725 if ( readHeader( SBIND, sameEndian ) == -1 ) {
726 os << LogIO::WARN << "Error while reading data SBIND." << LogIO::POST ;
727 return -1 ;
728 }
729 // DEBUG
730 //cout << "SBIND = " << SBIND << endl ;
731 //
732 if ( readHeader( IBIT, sameEndian ) == -1 ) {
733 os << LogIO::WARN << "Error while reading data IBIT." << LogIO::POST ;
734 return -1 ;
735 }
736 // DEBUG
737 //cout << "IBIT = " << IBIT << endl ;
738 //
739 strcpy( c8, str8.c_str() ) ;
740 if ( readHeader( c8, 8 ) == -1 ) {
741 os << LogIO::WARN << "Error while reading data SITE." << LogIO::POST ;
742 return -1 ;
743 }
744 SITE = string( c8 ) ;
745 // DEBUG
746 //cout << "SITE = " << SITE << endl ;
747 //
748 strcpy( c256, str256.c_str() ) ;
749 if ( readHeader( c256, 180 ) == -1 ) {
750 os << LogIO::WARN << "Error while reading data CDMY1." << LogIO::POST ;
751 return -1 ;
752 }
753 c256[180] = '\0' ;
754 CDMY1 = string( c256 ) ;
755 // DEBUG
756 //cout << "CDMY1 = " << CDMY1 << endl ;
757 //
758
759 return 0 ;
760}
761
Note: See TracBrowser for help on using the repository browser.