Source
xxxxxxxxxx
virtual void visibility(casacore::Vector<casacore::DComplex>& scale, const casacore::Matrix<casacore::Double>& uvw,
//# PointShape.h:
//# Copyright (C) 1998,1999,2000,2001
//# Associated Universities, Inc. Washington DC, USA.
//#
//# This library is free software; you can redistribute it and/or modify it
//# under the terms of the GNU Library General Public License as published by
//# the Free Software Foundation; either version 2 of the License, or (at your
//# option) any later version.
//#
//# This library is distributed in the hope that it will be useful, but WITHOUT
//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
//# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
//# License for more details.
//#
//# You should have received a copy of the GNU Library General Public License
//# along with this library; if not, write to the Free Software Foundation,
//# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
//#
//# Correspondence concerning AIPS++ should be addressed as follows:
//# Internet email: aips2-request@nrao.edu.
//# Postal address: AIPS++ Project Office
//# National Radio Astronomy Observatory
//# 520 Edgemont Road
//# Charlottesville, VA 22903-2475 USA
//#
//#
//# $Id: PointShape.h 21130 2011-10-18 07:39:05Z gervandiepen $
namespace casacore{
class MVAngle;
class MDirection;
class RecordInterface;
class String;
}
namespace casa { //# NAMESPACE CASA - BEGIN
// <summary>A shape where emission comes from only one direction</summary>
// <use visibility=export>
// <reviewed reviewer="" date="yyyy/mm/dd" tests="tPointShape" demos="dPointShape">
// </reviewed>
// <prerequisite>
// <li> <linkto class=ComponentShape>ComponentShape</linkto>
// </prerequisite>
// <synopsis>
// This class represents the shape of components where the emission comes from
// only one point in the sky.
// This class like the other component shapes becomes more useful when used
// through the <linkto class=SkyComponent>SkyComponent</linkto> class, which
// incorporates the flux and spectral variation of the emission, or through the
// <linkto class=ComponentList>ComponentList</linkto> class, which handles
// groups of SkyComponent objects.
// For a point shape all the emission comes only from the reference direction
// which is specified in celestial co-ordinates, using a
// <linkto class=casacore::MDirection>MDirection</linkto> object. The direction can be
// specified both in the constructor or with the <src>setRefDirection</src>
// function.
// The <src>sample</src> member functions are used to determine the proportion
// of flux the component at any point on the sky. For a point component this is
// either zero or one depending on whether the specified pixel contains the
// point source or not.
// The <src>visibility</src> functions return the Fourier transform of the
// component at a specified spatial frequency. For a point shape the Fourier
// transform is a constant value. Hence these functions return one, regardless
// of the input parameters.
// This class also contains functions (<src>toRecord</src> &
// <src>fromRecord</src>) which perform the conversion between Records and
// PointShape objects. These functions define how a PointShape object is
// represented in glish. The format of the record that is generated and