casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SliceStatisticsPosition.h
Go to the documentation of this file.
1 //# Copyright (C) 1994,1995,1996,1997,1998,1999,2000
2 //# Associated Universities, Inc. Washington DC, USA.
3 //#
4 //# This library is free software; you can redistribute it and/or modify it
5 //# under the terms of the GNU Library General Public License as published by
6 //# the Free Software Foundation; either version 2 of the License, or (at your
7 //# option) any later version.
8 //#
9 //# This library is distributed in the hope that it will be useful, but WITHOUT
10 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12 //# License for more details.
13 //#
14 //# You should have received a copy of the GNU Library General Public License
15 //# along with this library; if not, write to the Free Software Foundation,
16 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
17 //#
18 //# Correspondence concerning AIPS++ should be addressed as follows:
19 //# Internet email: aips2-request@nrao.edu.
20 //# Postal address: AIPS++ Project Office
21 //# National Radio Astronomy Observatory
22 //# 520 Edgemont Road
23 //# Charlottesville, VA 22903-2475 USA
24 //#
25 
26 
27 #ifndef SLICESTATISTICSPOSITION_H_
28 #define SLICESTATISTICSPOSITION_H_
29 
31 
32 namespace casa {
33 
35  public:
37  virtual double getLength(std::pair<double,double> worldStart,
38  std::pair<double,double> worldEnd,
39  std::pair<int,int> pixelStart,
40  std::pair<int,int> pixelEnd ) const;
41  virtual void adjustStart( QVector<double>& values, double newStart ) const;
42  virtual double getLength( double value1World, double value2World,
43  double value1Pixel, double value2Pixel ) const ;
44  virtual double getStart( double value1WorldX, double value1WorldY,
45  double value2WorldX, double value2WorldY ) const;
46  virtual double getEnd( double value1WorldX, double value1WorldY,
47  double value2WorldX, double value2WorldY ) const;
48  virtual void storeIncrement( double* incr, QVector<double>& values, int index) const;
49  virtual QString getLengthLabel() const;
50  void setXPosition( bool xPosition );
51  virtual QVector<double> fromResults( casacore::Record* record )const;
52  virtual QVector<double> interpolate( double start, double end,
53  const QVector<double>& values ) const;
54  virtual ~SliceStatisticsPosition();
55  private:
56  bool xPosition;
57  };
58 
59 } /* namespace casa */
60 #endif /* SLICESTATISTICSPOSITION_H_ */
virtual double getStart(double value1WorldX, double value1WorldY, double value2WorldX, double value2WorldY) const
virtual void storeIncrement(double *incr, QVector< double > &values, int index) const
void setXPosition(bool xPosition)
virtual QVector< double > interpolate(double start, double end, const QVector< double > &values) const
const_iterator end() const
virtual QVector< double > fromResults(casacore::Record *record) const
A hierarchical collection of named fields of various types.
Definition: Record.h:180
virtual QString getLengthLabel() const
virtual double getEnd(double value1WorldX, double value1WorldY, double value2WorldX, double value2WorldY) const
Computes the angle and distance for a single line segment in the slice.
virtual double getLength(std::pair< double, double > worldStart, std::pair< double, double > worldEnd, std::pair< int, int > pixelStart, std::pair< int, int > pixelEnd) const
virtual void adjustStart(QVector< double > &values, double newStart) const
SliceStatisticsPosition(SliceStatisticsFactory::AxisXUnits units)