Changeset 754 for trunk/src/SDReader.cc


Ignore:
Timestamp:
11/29/05 14:15:44 (18 years ago)
Author:
mar637
Message:

Bug fix: SDFreqTable did not copy user settings for unit and frame

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/SDReader.cc

    r717 r754  
    5454  cursor_ = 0;
    5555}
    56 SDReader::SDReader(const std::string& filename, 
     56SDReader::SDReader(const std::string& filename,
    5757                   int whichIF, int whichBeam) :
    5858  reader_(0),
     
    7777SDReader::~SDReader() {
    7878  if (reader_) delete reader_;
    79   if (header_) delete header_; 
     79  if (header_) delete header_;
    8080  if (frequencies_) delete frequencies_;
    8181}
     
    9292}
    9393
    94 void SDReader::open(const std::string& filename, 
     94void SDReader::open(const std::string& filename,
    9595                    int whichIF, int whichBeam) {
    9696  if (reader_) delete reader_; reader_ = 0;
     
    151151    // need robust way here - probably read ahead of next timestamp
    152152    pushLog("Header indicates frequency switched observation.\n"
    153                "setting # of IFs = 1 ");
     153               "setting # of IFs = 1 ");
    154154    nIF_ = 1;
    155155  }
     
    206206  frequencies_ = new SDFrequencyTable();
    207207  frequencies_->setRefFrame(header_->freqref);
     208  frequencies_->setBaseRefFrame(header_->freqref);
    208209  frequencies_->setRestFrequencyUnit("Hz");
    209210  frequencies_->setEquinox(header_->equinox);
     
    252253      // Make sure beam/IF numbers are 0-relative - dealing with
    253254      // possible IF or Beam selection
    254       beamNo = beamNo - beamOffset_ - 1;     
     255      beamNo = beamNo - beamOffset_ - 1;
    255256      IFno = IFno - ifOffset_ - 1;
    256257
     
    258259        if (status == -1) {
    259260          // EOF.
    260           if (row > 0 && row < stepsize-1) 
    261             pushLog("incomplete scan data.\n Probably means not all Beams/IFs/Pols within a scan are present.");
    262 
    263           // flush frequency table
     261          if (row > 0 && row < stepsize-1)
     262            pushLog("incomplete scan data.\n Probably means not all Beams/IFs/Pols within a scan are present.");
     263
     264          // flush frequency table
    264265          table_->putSDFreqTable(*frequencies_);
    265266          return status;
     
    277278          sc.interval = interval;
    278279          sc.sourcename = srcName;
    279           sc.fieldname = fieldName;
    280           sc.azimuth = azimuth;
    281           sc.elevation = elevation;
     280          sc.fieldname = fieldName;
     281          sc.azimuth = azimuth;
     282          sc.elevation = elevation;
    282283        }
    283284        // add specific info
     
    285286        Int refPix = header_->nchan/2;       // 0-rel
    286287        uInt freqID = frequencies_->addFrequency(refPix, refFreq, freqInc);
    287         uInt restFreqID = frequencies_->addRestFrequency(restFreq);
     288        uInt restFreqID = frequencies_->addRestFrequency(restFreq);
    288289
    289290        sc.setFrequencyMap(freqID, IFno);
    290291        sc.setRestFrequencyMap(restFreqID, IFno);
    291292
    292         sc.tcal[0] = tcal[0];sc.tcal[1] = tcal[1];
    293         sc.tcaltime = tcalTime;
    294         sc.parangle = parAngle;
    295         sc.refbeam = -1; //nbeams == 1
    296         if (nBeam_ > 1) // circumvent a bug "asap0000" in read which
    297                         // returns a random refbema number on multiple
    298                         // reads
    299           sc.refbeam = refBeam-1;//make it 0-based;
     293        sc.tcal[0] = tcal[0];sc.tcal[1] = tcal[1];
     294        sc.tcaltime = tcalTime;
     295        sc.parangle = parAngle;
     296        sc.refbeam = -1; //nbeams == 1
     297        if (nBeam_ > 1) // circumvent a bug "asap0000" in read which
     298                        // returns a random refbema number on multiple
     299                        // reads
     300          sc.refbeam = refBeam-1;//make it 0-based;
    300301        sc.scanid = scanNo-1;//make it 0-based
    301302        if (haveXPol_) {
Note: See TracChangeset for help on using the changeset viewer.