Ignore:
Timestamp:
08/24/12 10:52:04 (12 years ago)
Author:
ShinnosukeKawakami
Message:

hpc34 to trunk 24th Aug. 2012

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src

  • trunk/src/MSWriter.cpp

    r2585 r2643  
    950950  {
    951951    uInt nrow = potab.nrow() ;
    952     potab.addRow( 1, True ) ;
     952    potab.addRow() ;
    953953
    954954    *poNumPolyRF = dir.ncolumn() - 1 ;
     
    995995  {
    996996    Int idx = -1 ;
    997     uInt nEntry = ddEntry.nrow() ;
    998     Vector<Int> key( 2 ) ;
    999     key[0] = pid ;
    1000     key[1] = sid ;
     997    uInt nItem = 2 ;
     998    uInt len = ddEntry.nelements() ;
     999    uInt nEntry = len / nItem ;
     1000    const Int *dd_p = ddEntry.storage() ;
    10011001    for ( uInt i = 0 ; i < nEntry ; i++ ) {
    1002       if ( allEQ( ddEntry.row(i), key ) ) {
     1002      Int pol = *dd_p ;
     1003      dd_p++ ;
     1004      Int spw = *dd_p ;
     1005      dd_p++ ;
     1006      if ( pid == pol && sid == spw ) {
    10031007        idx = i ;
    10041008        break ;
     
    10161020      idx = nrow ;
    10171021
    1018       ddEntry.resize( nEntry+1, 2, True ) ;
    1019       ddEntry.row(nEntry) = key ;
     1022      ddEntry.resize( len+nItem ) ;
     1023      ddEntry[len] = pid ;
     1024      ddEntry[len+1] = sid ;
    10201025    }
    10211026
     
    10501055      }
    10511056      processedFreqId[fid] = True ;
     1057    }
     1058    else {
     1059      return ;
    10521060    }
    10531061
     
    10851093  {
    10861094    Int idx = -1 ;
    1087     uInt nEntry = feedEntry.nrow() ;
    1088     Vector<Int> key( 2 ) ;
    1089     key[0] = fid ;
    1090     key[1] = sid ;
     1095    uInt nItem = 2 ;
     1096    uInt len = feedEntry.nelements() ;
     1097    uInt nEntry = len / nItem ;
     1098    const Int *fe_p = feedEntry.storage() ;
    10911099    for ( uInt i = 0 ; i < nEntry ; i++ ) {
    1092       if ( allEQ( feedEntry.row(i), key ) ) {
     1100      Int feed = *fe_p ;
     1101      fe_p++ ;
     1102      Int spw = *fe_p ;
     1103      fe_p++ ;
     1104      if ( fid == feed && sid == spw ) {
    10931105        idx = i ;
    10941106        break ;
    10951107      }
    10961108    }
     1109
    10971110
    10981111    if ( idx == -1 ) {
     
    11311144      tr.put( nrow ) ;
    11321145
    1133       feedEntry.resize( nEntry+1, 2, True ) ;
    1134       feedEntry.row( nEntry ) = key ;
     1146      feedEntry.resize( len+nItem ) ;
     1147      feedEntry[len] = fid ;
     1148      feedEntry[len+1] = sid ;
    11351149    }
    11361150  }
     
    14451459
    14461460  Vector<String> stateEntry;
    1447   Matrix<Int> ddEntry;
    1448   Matrix<Int> feedEntry;
     1461  Block<Int> ddEntry;
     1462  Block<Int> feedEntry;
    14491463  vector< Vector<Int> > polEntry;
    14501464  map<uInt,Bool> processedFreqId;
     
    20522066  //double endSec = mathutil::gettimeofday_sec() ;
    20532067  //os_ << "end MSWriter::write() endSec=" << endSec << " (" << endSec-startSec << "sec)" << LogIO::POST ;
     2068
     2069  os_ << "Exported data as MS" << LogIO::POST ;
    20542070
    20552071  return True ;
Note: See TracChangeset for help on using the changeset viewer.