Source
xxxxxxxxxx
//# DParameterRange.h: class to store and retrieve range parameters
//# Copyright (C) 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$
namespace casa { //# NAMESPACE CASA - BEGIN
// <summary>
// A helper class to deal with data ranges to support options
// </summary>
//
// <use visibility=export>
//
// <reviewed reviewer="" date="yyyy/mm/dd" tests="" demos="">
// </reviewed>
//
// <prerequisite>
// <li> DisplayParameter
// </prerequisite>
//
// <etymology>
// </etymology>
//
// <synopsis>
//
// </synopsis>
//
// <example>
// </example>
//
// <motivation>
// Making things easier
// </motivation>
//
// <todo>
// </todo>
//
template <class T> class DParameterRange : public DisplayParameter {
public:
// Constructor taking the name of the parameter, a short
// description, some help text, a minimum value, a maximum value, a
// default value, a current value, and flags indicating whether the
// parameter is editable.
DParameterRange(const casacore::String name, const casacore::String description,
const casacore::String help, const T minimum, const T maximum,
const T resolution, const T defaultvalue, const T value,
const casacore::String context = "", const casacore::Bool editable = true,
const casacore::Bool provideentry = false, const casacore::Bool onrelease=false );
// (Required) default constructor.
DParameterRange();
// (Required) copy constructor.
DParameterRange(const DParameterRange<T> &other);
// Destructor.
virtual ~DParameterRange();
// (Required) copy assignment.
DParameterRange<T> &operator=(const DParameterRange<T> &other);