Changeset 2842


Ignore:
Timestamp:
08/26/13 18:04:21 (11 years ago)
Author:
Takeshi Nakazato
Message:

New Development: No

JIRA Issue: Yes CAS-5545

Ready for Test: Yes

Interface Changes: No

What Interface Changed: Please list interface changes

Test Programs: test_sdsave[sdsave_flagging]

Put in Release Notes: No

Module(s): sd

Description: Describe your changes here...

Changed a behavior of MSWriter according to CAS-5545.

  • All the FLAG_ROW's are always set to False.
  • If FLAGROW is non-zero in a certain Scantable row, all the FLAG values in the corresponding location in MS/MAIN (FLAG in the corresponding polarization component) have to be set to True.


File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/MSWriter.cpp

    r2841 r2842  
    274274  void postFlagRow()
    275275  {
    276     *flagRowRF = anyEQ( flagRow, True ) ;
     276    // CAS-5545 FLAG_ROW must always be set False
     277    //*flagRowRF = anyEQ( flagRow, True ) ;
     278    *flagRowRF = False;
    277279  }
    278280  inline void accumulateFlag( uInt &id, Vector<Bool> &fl )
     
    347349  virtual void postFlag()
    348350  {
     351    // CAS-5545 FLAG must all be set True if FLAG_ROW is True
     352    for (uInt ipol = 0; ipol < npol; ++ipol) {
     353      if (flagRow[ipol]) {
     354        flag(IPosition(2, ipol, 0), IPosition(2, ipol, nchan-1)) = True;
     355      }
     356    }
     357   
    349358    if ( npol == 2 ) {
    350359      flagRF.define( flag( IPosition( 2, 0, 0 ), IPosition( 2, npol-1, nchan-1 ) ) ) ;
     
    386395  virtual void postFlag()
    387396  {
     397    // CAS-5545 FLAG must all be set True if FLAG_ROW is True
     398    for (uInt ipol = 0; ipol < npol; ++ipol) {
     399      if (flagRow[ipol]) {
     400        flag(IPosition(2, ipol, 0), IPosition(2, ipol, nchan-1)) = True;
     401      }
     402    }
     403   
    388404    if ( npol == 4 ) {
    389405      Vector<Bool> tmp = flag.row( 3 ) ;
Note: See TracChangeset for help on using the changeset viewer.