00001 //# Copyright (C) 1998,1999,2000,2001,2003 00002 //# Associated Universities, Inc. Washington DC, USA. 00003 //# 00004 //# This program is free software; you can redistribute it and/or modify it 00005 //# under the terms of the GNU General Public License as published by the Free 00006 //# Software Foundation; either version 2 of the License, or (at your option) 00007 //# any later version. 00008 //# 00009 //# This program is distributed in the hope that it will be useful, but WITHOUT 00010 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00011 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 00012 //# more details. 00013 //# 00014 //# You should have received a copy of the GNU General Public License along 00015 //# with this program; if not, write to the Free Software Foundation, Inc., 00016 //# 675 Massachusetts Ave, Cambridge, MA 02139, USA. 00017 //# 00018 //# Correspondence concerning AIPS++ should be addressed as follows: 00019 //# Internet email: aips2-request@nrao.edu. 00020 //# Postal address: AIPS++ Project Office 00021 //# National Radio Astronomy Observatory 00022 //# 520 Edgemont Road 00023 //# Charlottesville, VA 22903-2475 USA 00024 //# 00025 00026 #ifndef IMAGEANALYSIS_COMPONENTLISTDECONVOLVER_H 00027 #define IMAGEANALYSIS_COMPONENTLISTDECONVOLVER_H 00028 00029 #include <imageanalysis/ImageTypedefs.h> 00030 00031 #include <casa/namespace.h> 00032 00033 namespace casa { 00034 00035 class ComponentList; 00036 00037 template <class T> class ComponentListDeconvolver { 00038 // <summary> 00039 // Top level interface for deconvolving a component list 00040 // </summary> 00041 00042 // <reviewed reviewer="" date="" tests="" demos=""> 00043 // </reviewed> 00044 00045 // <prerequisite> 00046 // </prerequisite> 00047 00048 // <etymology> 00049 // </etymology> 00050 00051 // <synopsis> 00052 // </synopsis> 00053 00054 // <example> 00055 // <srcblock> 00056 // </srcblock> 00057 // </example> 00058 00059 public: 00060 00061 ComponentListDeconvolver() = delete; 00062 00063 ComponentListDeconvolver(SPCIIT image); 00064 00065 // destructor 00066 ~ComponentListDeconvolver(); 00067 00068 ComponentList deconvolve( 00069 const ComponentList& compList, Int channel, Int polarization 00070 ) const; 00071 00072 private: 00073 SPCIIT _image; 00074 00075 }; 00076 } 00077 00078 #ifndef AIPS_NO_TEMPLATE_SRC 00079 #include <imageanalysis/ImageAnalysis/ComponentListDeconvolver.tcc> 00080 #endif 00081 00082 #endif