casa
$Rev:20696$
|
class for flaging and extend flagging More...
#include <ExtendFlagger.h>
Public Member Functions | |
FlagIDS () | |
FlagIDS & | operator= (const FlagIDS &other) |
void | show () |
Static Public Member Functions | |
static int | compareID (const void *val1, const void *val2) |
Public Attributes | |
String | bl |
uInt | field |
String | time |
String | spw |
String | corr |
String | chan |
class for flaging and extend flagging
Public interface
There will be an "extendflag" T/F parameter and a number of subparameters. This so that individual extensions can be better controlled.
extendflag = T extendcorr = '' # ''=default,'all' (future: 'half') extendchan = '' # ''=default,'all' extendspw = '' # ''=default,'all' extendant = '' # ''=default,'all' extendtime = '' # ''=default,'all' (future: 'scan','field')
In all cases the '' and 'all' options are the ones to implement first. Next, if time allows, implement the ones in parentheses. More esoteric ones are given below and would be after these (and probably need more thought).
NOTE: the extendchan and extendcorr are "in-row" selection (they extend the flags to quantities in the same visibility that is plotted and selected on), while the others are in different rows. The in-row ones will be implemented first (CAS-714), the rest later (CAS-715).
Note that these extensions are combined at the end, thus if you choose 'all' for all of these I think you will flag the entire dataset if you flag any point! So be it. Also, averaging effectively extends the flags to everything included in the average.
Individually:
extendcorr '' flag only current point(s) correlations 'all' extend flag to all correlations, example: if RR selected then flag RR,RL,LR,LL
Future options: 'half' extend flag to all correlations with current one example: if RR selected then flag RR,RL,LR (not LL) NOTE: if RL selected then this rule would nominally flag RR,RL,LL but not LR, should probably default to 'all' in this case?
Possible other options: <correlation> take standard correlation selection string example: extendcorr='RL,LR'
extendchan '' flag only current selected channels 'all' extend flag to all channels
NOTE: the spw that these apply to is given by extendspw (default is current)
Possible other options: <chan> take standard channel selection/range string (the part after : in spw string) example: extendchan='0~4,59~63'
extendspw '' flag channel(s) only in current spw 'all' extend flag to all spw (of current shape if extendchan not 'all')
NOTE: if extendchan='' and extendspw='all', then only spw of the same shape as the current spw will have the specified channel flagged. This is so flagging on "narrow-band" spw will not flag "wide-band" spw by mistake. example: if CH 0 of spw with 64 chans is selected, then CH 0 in all spw of 64 chans will flagged by extension
Possible other options: <spw> take standard spw selection/range string (the part before : in spw string) example: extendspw='0,3~6' extendant '' flag only current point(s) baseline 'all' flag all baselines (fitting other selection/extension) BEWARE - this option could delete excessive amounts of data NOTE: if the user has chosen iteration='antenna' then 'all' should flag only baselines to the current iteration of antenna. Likewise if iteration='baseline', extendant='all' should flag only the current baseline (in this case will act like ''). Otherwise the user would not be iterating.
Possible other options: 'ant1' extend flag to all baselines with the current point(s) ANT1 'ant2' extend flag to all baselines with the current point(s) ANT2 <antenna> take standard antenna selection string example: extendant='EA11,1&3'
extendtime '' flag only current point(s) integration (or average) 'all' flag all integs matching rest of selection in entire dataset - BEWARE - this could delete excessive amounts of data NOTE: if iteration='field' is chosen, then 'all' will flag only integrations in the current field iteration (not all fields)
Future options: 'scan' flag all integs in current scan 'field' if xaxis='time' then flag all fields that would fall in box drawn example: would flag target source between plotted calibrators
Possible other options: <timerange> take a standard timerange string example: extendtime='25:00:00~27:30:00'
Note that if the suggested future extend strings using selection syntax (e.g.extendchan='10~20') is implemented, the extensions could be to data disjoint from what is actually displayed.
GUI Developments:
Eventually, we will want to have an icon on the GUI that will bring up a menu to change these during flagging. This is particularly useful for the in-row selections (extendchan and extendcorr).
ExtendFlagger eflg; eflg.attach(ms); eflg.setdata(); eflg.setmanualflags(); eflg.run()
It has long been on the users wish list to do extended flagging
Definition at line 222 of file ExtendFlagger.h.
casa::FlagIDS::FlagIDS | ( | ) | [inline] |
static int casa::FlagIDS::compareID | ( | const void * | val1, |
const void * | val2 | ||
) | [static] |
void casa::FlagIDS::show | ( | ) | [inline] |
Definition at line 233 of file ExtendFlagger.h.
Referenced by FlagIDS(), operator=(), and show().
Definition at line 238 of file ExtendFlagger.h.
Referenced by FlagIDS(), operator=(), and show().
Definition at line 237 of file ExtendFlagger.h.
Referenced by FlagIDS(), operator=(), and show().
Definition at line 234 of file ExtendFlagger.h.
Referenced by FlagIDS(), operator=(), and show().
Definition at line 236 of file ExtendFlagger.h.
Referenced by FlagIDS(), operator=(), and show().
Definition at line 235 of file ExtendFlagger.h.
Referenced by FlagIDS(), operator=(), and show().