casa
$Rev:20696$
|
#include <Mueller.h>
Public Types | |
enum | MuellerType { AddDiag2, AddDiag, General, Diagonal, Diag2, Scalar } |
Public Member Functions | |
Mueller () | |
Construct. | |
virtual | ~Mueller () |
Dtor. | |
virtual MuellerType | type () const |
Return type id. | |
virtual uInt | typesize () const |
void | setScalarData (Bool scalardata) const |
Set scalardata_ TBD: Handle this better; for now, we need to set this from an external call so we handle single-corr data properly when setting non-corr-dep flags. | |
void | sync (Complex &mat) |
Synchronize with leading element in external array. | |
void | sync (Complex &mat, Bool &ok) |
void | origin () |
Reset to origin. | |
void | operator++ () |
Increment to next vector (according to len) | |
void | operator++ (int) |
void | advance (const Int &step) |
Advance step matrices forward (according to len) | |
virtual void | fromJones (const Jones &jones1, const Jones &jones2) |
Formation from Jones matrix outer product: General version. | |
virtual void | invert () |
In-place invert. | |
virtual void | setMatByOk () |
Set matrix elements according to ok flag (so we don't have to check ok flags atomically in apply) | |
virtual void | apply (VisVector &v) |
In-place multiply onto a VisVector: General version. | |
virtual void | apply (VisVector &v, Bool &vflag) |
virtual void | applyFlag (Bool &vflag) |
Apply only flags according to cal flags. | |
virtual void | apply (VisVector &out, const VisVector &in) |
Multiply onto a vis VisVector, preserving input (copy then in-place apply) | |
Protected Member Functions | |
Mueller (const Mueller &mat) | |
Copy ctor protected. | |
Protected Attributes | |
Complex * | m0_ |
Pointer to origin. | |
Bool * | ok0_ |
Complex * | m_ |
Moving pointer. | |
Complex * | mi_ |
Bool * | ok_ |
Bool * | oki_ |
const Complex | cOne_ |
Complex unity, zero (for use in invert and similar methods) | |
const Complex | cZero_ |
Bool | scalardata_ |
Private Member Functions | |
virtual void | zero () |
Zero the whole Mueller. | |
Private Attributes | |
VisVector | vtmp_ |
VisVector temporary (only relevant for Mueller::General) | |
Friends | |
ostream & | operator<< (ostream &os, const Mueller &mat) |
print it out |
Construct.
virtual casa::Mueller::~Mueller | ( | ) | [inline, virtual] |
casa::Mueller::Mueller | ( | const Mueller & | mat | ) | [protected] |
Copy ctor protected.
void casa::Mueller::advance | ( | const Int & | step | ) | [inline] |
Advance step matrices forward (according to len)
Definition at line 74 of file Mueller.h.
References m_, ok_, and typesize().
virtual void casa::Mueller::apply | ( | VisVector & | v | ) | [virtual] |
In-place multiply onto a VisVector: General version.
Reimplemented in casa::AddMuellerDiag, casa::AddMuellerDiag2, casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
virtual void casa::Mueller::apply | ( | VisVector & | v, |
Bool & | vflag | ||
) | [virtual] |
Reimplemented in casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
virtual void casa::Mueller::apply | ( | VisVector & | out, |
const VisVector & | in | ||
) | [virtual] |
Multiply onto a vis VisVector, preserving input (copy then in-place apply)
virtual void casa::Mueller::applyFlag | ( | Bool & | vflag | ) | [virtual] |
Apply only flags according to cal flags.
Reimplemented in casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
virtual void casa::Mueller::fromJones | ( | const Jones & | jones1, |
const Jones & | jones2 | ||
) | [virtual] |
Formation from Jones matrix outer product: General version.
Reimplemented in casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
virtual void casa::Mueller::invert | ( | ) | [virtual] |
In-place invert.
Reimplemented in casa::AddMuellerDiag, casa::AddMuellerDiag2, casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
void casa::Mueller::operator++ | ( | ) | [inline] |
Increment to next vector (according to len)
Definition at line 70 of file Mueller.h.
References m_, ok_, and typesize().
void casa::Mueller::operator++ | ( | int | ) | [inline] |
Definition at line 71 of file Mueller.h.
References m_, ok_, and typesize().
void casa::Mueller::origin | ( | ) | [inline] |
virtual void casa::Mueller::setMatByOk | ( | ) | [virtual] |
Set matrix elements according to ok flag (so we don't have to check ok flags atomically in apply)
Reimplemented in casa::AddMuellerDiag, casa::AddMuellerDiag2, casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
void casa::Mueller::setScalarData | ( | Bool | scalardata | ) | const [inline] |
Set scalardata_ TBD: Handle this better; for now, we need to set this from an external call so we handle single-corr data properly when setting non-corr-dep flags.
Definition at line 60 of file Mueller.h.
References scalardata_.
void casa::Mueller::sync | ( | Complex & | mat | ) | [inline] |
void casa::Mueller::sync | ( | Complex & | mat, |
Bool & | ok | ||
) | [inline] |
virtual MuellerType casa::Mueller::type | ( | ) | const [inline, virtual] |
Return type id.
Reimplemented in casa::AddMuellerDiag, casa::AddMuellerDiag2, casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
Definition at line 53 of file Mueller.h.
References General.
virtual uInt casa::Mueller::typesize | ( | ) | const [inline, virtual] |
Reimplemented in casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
Definition at line 54 of file Mueller.h.
Referenced by advance(), and operator++().
virtual void casa::Mueller::zero | ( | ) | [private, virtual] |
Zero the whole Mueller.
Reimplemented in casa::MuellerScal, casa::MuellerDiag2, and casa::MuellerDiag.
ostream& operator<< | ( | ostream & | os, |
const Mueller & | mat | ||
) | [friend] |
print it out
const Complex casa::Mueller::cOne_ [protected] |
const Complex casa::Mueller::cZero_ [protected] |
Complex* casa::Mueller::m0_ [protected] |
Complex* casa::Mueller::m_ [protected] |
Moving pointer.
Definition at line 109 of file Mueller.h.
Referenced by advance(), operator++(), and origin().
Complex * casa::Mueller::mi_ [protected] |
Bool* casa::Mueller::ok0_ [protected] |
Bool* casa::Mueller::ok_ [protected] |
Definition at line 110 of file Mueller.h.
Referenced by advance(), operator++(), and origin().
Bool * casa::Mueller::oki_ [protected] |
Bool casa::Mueller::scalardata_ [mutable, protected] |
Definition at line 115 of file Mueller.h.
Referenced by setScalarData().
VisVector casa::Mueller::vtmp_ [private] |
VisVector temporary (only relevant for Mueller::General)