casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
casa::VisModelData Class Reference

Object to provide MODEL_DATA visibilities on demand. More...

#include <VisModelData.h>

List of all members.

Public Member Functions

 VisModelData ()
 empty constructor
virtual ~VisModelData ()
 From a FTMachine Record VisModelData(const Record& ftmachinerec, const Vector<Int>& validfieldids, const Vector<Int>& msIds);.
void addFlatModel (const Vector< Double > &value, const Vector< Int > &validfieldids, const Vector< Int > &msIds)
 Add Image/FTMachine to generate visibilities for void addFTMachine(const Record& recordFTMachine, const Vector<Int>& validfieldids, const Vector<Int>& msIds); Add componentlist to generate visibilities for void addCompFTMachine(const ComponentList& cl, const Vector<Int>& validfieldids, const Vector<Int>& msIds); For simple model a special case for speed.
void addModel (const Record &rec, const Vector< Int > &msids, const VisBuffer &vb)
 add componentlists or ftmachines
Bool getModelVis (VisBuffer &vb)
 put the model data for this VisBuffer in the modelVisCube
Int hasModel (Int msid, Int field, Int spw)
 check if an addFT or addCompFT is necessary Bool hasFT(Int msid, Int fieldid); Bool hasCL(Int msid, Int fieldid); returns a -1 if there is no model for this combination of ms,field,spw...but has not been // checked yet if there is one returns a -2 if it has been tested before but does have it.

Static Public Member Functions

static void putModel (const MeasurementSet &thems, const RecordInterface &rec, const Vector< Int > &validfields, const Vector< Int > &spws, const Vector< Int > &starts, const Vector< Int > &nchan, const Vector< Int > &incr, Bool iscomponentlist=True, Bool incremental=False)
 this is a helper function that writes the model record to the ms
static void clearModel (const MeasurementSet &thems)
 helper function to clear the keywordSet of the ms of the model for the fields in that ms
static void clearModel (const MeasurementSet &thems, const String field, const String spws=String(""))
 ...with field selection and optionally spw
static void listModel (const MeasurementSet &thems)
 List the fields.
static FTMachineNEW_FT (const Record &ftrec)

Private Member Functions

void initializeToVis ()
Vector< CountedPtr
< ComponentList > > 
getCL (const Int msId, const Int fieldId, Int spw)
Vector< CountedPtr< FTMachine > > getFT (const Int msId, const Int fieldId, Int spw)

Static Private Member Functions

static Bool addToRec (Record &therec, const Vector< Int > &spws)
static Bool removeSpwFromMachineRec (RecordInterface &ftclrec, const Vector< Int > &spws)
static Bool removeFTFromRec (Record &therec, const String &keyval)
static Bool removeSpw (Record &therec, const Vector< Int > &spws)

Private Attributes

Block< Vector< CountedPtr
< ComponentList > > > 
clholder_p
Block< Vector< CountedPtr
< FTMachine > > > 
ftholder_p
Block< Vector< Double > > flatholder_p
CountedPtr< ComponentFTMachinecft_p
Cube< Intftindex_p
Cube< Intclindex_p

Detailed Description

Object to provide MODEL_DATA visibilities on demand.

Prerequisite

and ComponentFTMachine

Etymology

Synopsis

Example

Motivation

Definition at line 74 of file VisModelData.h.


Constructor & Destructor Documentation

empty constructor

virtual casa::VisModelData::~VisModelData ( ) [virtual]

From a FTMachine Record VisModelData(const Record& ftmachinerec, const Vector<Int>& validfieldids, const Vector<Int>& msIds);.


Member Function Documentation

void casa::VisModelData::addFlatModel ( const Vector< Double > &  value,
const Vector< Int > &  validfieldids,
const Vector< Int > &  msIds 
)

Add Image/FTMachine to generate visibilities for void addFTMachine(const Record& recordFTMachine, const Vector<Int>& validfieldids, const Vector<Int>& msIds); Add componentlist to generate visibilities for void addCompFTMachine(const ComponentList& cl, const Vector<Int>& validfieldids, const Vector<Int>& msIds); For simple model a special case for speed.

void casa::VisModelData::addModel ( const Record rec,
const Vector< Int > &  msids,
const VisBuffer vb 
)

add componentlists or ftmachines

static Bool casa::VisModelData::addToRec ( Record therec,
const Vector< Int > &  spws 
) [static, private]
static void casa::VisModelData::clearModel ( const MeasurementSet thems) [static]

helper function to clear the keywordSet of the ms of the model for the fields in that ms

static void casa::VisModelData::clearModel ( const MeasurementSet thems,
const String  field,
const String  spws = String("") 
) [static]

...with field selection and optionally spw

Vector<CountedPtr<ComponentList> > casa::VisModelData::getCL ( const Int  msId,
const Int  fieldId,
Int  spw 
) [private]
Vector<CountedPtr<FTMachine> > casa::VisModelData::getFT ( const Int  msId,
const Int  fieldId,
Int  spw 
) [private]

put the model data for this VisBuffer in the modelVisCube

Int casa::VisModelData::hasModel ( Int  msid,
Int  field,
Int  spw 
)

check if an addFT or addCompFT is necessary Bool hasFT(Int msid, Int fieldid); Bool hasCL(Int msid, Int fieldid); returns a -1 if there is no model for this combination of ms,field,spw...but has not been // checked yet if there is one returns a -2 if it has been tested before but does have it.

returns a 1 if it has a model stored

static void casa::VisModelData::listModel ( const MeasurementSet thems) [static]

List the fields.

static FTMachine* casa::VisModelData::NEW_FT ( const Record ftrec) [static]
static void casa::VisModelData::putModel ( const MeasurementSet thems,
const RecordInterface rec,
const Vector< Int > &  validfields,
const Vector< Int > &  spws,
const Vector< Int > &  starts,
const Vector< Int > &  nchan,
const Vector< Int > &  incr,
Bool  iscomponentlist = True,
Bool  incremental = False 
) [static]

this is a helper function that writes the model record to the ms

static Bool casa::VisModelData::removeFTFromRec ( Record therec,
const String keyval 
) [static, private]
static Bool casa::VisModelData::removeSpw ( Record therec,
const Vector< Int > &  spws 
) [static, private]
static Bool casa::VisModelData::removeSpwFromMachineRec ( RecordInterface ftclrec,
const Vector< Int > &  spws 
) [static, private]

Member Data Documentation

Definition at line 129 of file VisModelData.h.

Definition at line 126 of file VisModelData.h.

Definition at line 131 of file VisModelData.h.

Definition at line 128 of file VisModelData.h.

Definition at line 127 of file VisModelData.h.

Definition at line 130 of file VisModelData.h.


The documentation for this class was generated from the following file: