Source
//# SISubterBot.h: This file contains the interface definition SISubIterBot class
//#
//# CASA - Common Astronomy Software Applications (http://casa.nrao.edu/)
//# Copyright (C) Associated Universities, Inc. Washington DC, USA 2011, All rights reserved.
//# Copyright (C) European Southern Observatory, 2011, All rights reserved.
//#
//# This library is free software; you can redistribute it and/or
//# modify it under the terms of the GNU Lesser General Public
//# License as published by the Free software Foundation; either
//# version 2.1 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
//# Lesser General Public License for more details.
//#
//# You should have received a copy of the GNU Lesser General Public
//# License along with this library; if not, write to the Free Software
//# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
//# MA 02111-1307 USA
//# $Id: $
// .casarc interface
// System utilities (for profiling macros)
// Include files for the DBus Service
//#include <casadbus/interfaces/SynthImager.adaptor.h>
namespace casacore{
class Record;
}
namespace casa { //# NAMESPACE CASA - BEGIN
class SIMinorCycleController
{
public:
// 0 1 2 3 4 5 6 7 8 9 10 11 "No Mask" 12 13 14 15 16 17 18
// ["iterDone", "peakRes", "modelFlux", "cycleThresh", "mapperId", "chan", "pol", "cycleStartIters", "startIterDone", "startPeakRes", "startModelFlux", "startPeakResNM", "peakResNM", "masksum", "mpiServer", "peakMem", "runtime", "immod", "stopCode"]
static const casacore::Int nSummaryFields = 19;
// make noncopyable...
SIMinorCycleController( const SIMinorCycleController& ) = delete;
SIMinorCycleController &operator=( const SIMinorCycleController& ) = delete;
SIMinorCycleController();
virtual ~SIMinorCycleController();
/* Method to call to determine if a major cycle is required, true if
- exceeded number maxcycleniter
- exceeded cycle threshold
*/
virtual casacore::Int majorCycleRequired(casacore::Float currentPeakResidual);