28 #ifndef COMPONENTS_COMPONENTSHAPE_H
29 #define COMPONENTS_COMPONENTSHAPE_H
40 class DirectionCoordinate;
42 class RecordInterface;
44 template <
class T>
class Matrix;
45 template <
class T>
class MeasRef;
46 template <
class T>
class Vector;
const casacore::Quantum< casacore::Double > & refDirectionErrorLong() const
A Measure: astronomical direction.
void setRefDirection(const casacore::MDirection &newRefDir)
std::vector< double > Vector
virtual ~ComponentShape()
casacore::MDirection itsDir
virtual casacore::DComplex visibility(const casacore::Vector< casacore::Double > &uvw, const casacore::Double &frequency) const =0
void copyDirectionInfo(const ComponentShape &that)
virtual ComponentShape * clone() const =0
Shape
The shapes of all the components.
void setRefDirectionError(const casacore::Quantum< casacore::Double > &newRefDirErrLat, const casacore::Quantum< casacore::Double > &newRefDirErrLong)
virtual casacore::Vector< casacore::Double > parameters() const =0
virtual casacore::Bool convertUnit(casacore::String &errorMessage, const casacore::RecordInterface &record)=0
const casacore::Quantum< casacore::Double > & refDirectionErrorLat() const
virtual casacore::Double sample(const casacore::MDirection &direction, const casacore::MVAngle &pixelLatSize, const casacore::MVAngle &pixelLongSize) const =0
virtual casacore::String sizeToString() const =0
virtual casacore::Bool ok() const
static casacore::Bool fromAngQRecord(casacore::Quantum< casacore::Double > &returnValue, casacore::String &errorMessage, const casacore::String &fieldString, const casacore::RecordInterface &record)
casacore::Quantum< casacore::Double > itsDirErrLat
ComponentShape & operator=(const ComponentShape &other)
virtual casacore::Vector< casacore::Double > toPixel(const casacore::DirectionCoordinate &dirCoord) const
virtual void setErrors(const casacore::Vector< casacore::Double > &newErrs)=0
virtual casacore::Bool fromPixel(const casacore::Vector< casacore::Double > ¶meters, const casacore::DirectionCoordinate &dirCoord)
virtual casacore::Bool fromRecord(casacore::String &errorMessage, const casacore::RecordInterface &record)=0
Initialise the class from a Record representation.
virtual const ComponentShape * getPtr() const =0
Base class for component shapes.
Interconvert pixel positions and directions (e.g. RA/DEC).
std::complex< Double > DComplex
bool Bool
Define the standard types used by Casacore.
static casacore::Bool differentRefs(const casacore::MeasRef< casacore::MDirection > &ref1, const casacore::MeasRef< casacore::MDirection > &ref2)
virtual const casacore::String & ident() const
Specify the identification of the record (e.g.
static casacore::Bool badError(const casacore::Quantum< casacore::Double > &quantum)
virtual casacore::Bool toRecord(casacore::String &errorMessage, casacore::RecordInterface &record) const =0
Convert the class to an Record representation.
static ComponentType::Shape getType(casacore::String &errorMessage, const casacore::RecordInterface &record)
virtual ComponentType::Shape type() const =0
virtual void setOptParameters(const casacore::Vector< casacore::Double > &newOptParms)=0
casacore::Quantum< casacore::Double > itsDirErrLong
virtual casacore::Vector< casacore::Double > optParameters() const =0
virtual casacore::uInt nParameters() const =0
const casacore::MDirection & refDirection() const
virtual casacore::Bool isSymmetric() const =0
virtual casacore::Vector< casacore::Double > errors() const =0
String: the storage and methods of handling collections of characters.
Abstract base class for Record classes.
virtual void setParameters(const casacore::Vector< casacore::Double > &newParms)=0
Class to handle angle type conversions and I/O.
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.