casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AnnVector.h
Go to the documentation of this file.
1 //# Copyright (C) 1998,1999,2000,2001
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 #ifndef ANNOTATIONS_ANNVECTOR_H
27 #define ANNOTATIONS_ANNVECTOR_H
28 
30 
31 #include <casa/Arrays/Vector.h>
33 
34 namespace casa {
35 
36 // <summary>Represents a vector annotation which has a start and ending point.</summary>
37 
38 // <use visibility=export>
39 
40 // <reviewed reviewer="" date="yyyy/mm/dd">
41 // </reviewed>
42 
43 // <synopsis>
44 
45 // Represents an ascii vector annotation
46 // </synopsis>
47 
48 class AnnVector: public AnnotationBase {
49 public:
50 
51  AnnVector(
52  const casacore::Quantity& xStart,
53  const casacore::Quantity& yStart,
54  const casacore::Quantity& xEnd,
55  const casacore::Quantity& yEnd,
56  const casacore::String& dirRefFrameString,
57  const casacore::CoordinateSystem& csys,
58  const casacore::Quantity& beginFreq,
59  const casacore::Quantity& endFreq,
60  const casacore::String& freqRefFrame,
61  const casacore::String& dopplerString,
62  const casacore::Quantity& restfreq,
64  );
65 
66  AnnVector(
67  const casacore::Quantity& xStart,
68  const casacore::Quantity& yStart,
69  const casacore::Quantity& xEnd,
70  const casacore::Quantity& yEnd,
71  const casacore::CoordinateSystem& csys,
73  );
74 
75 
76  // implicit copy constructor and destructor are fine
77 
78  AnnVector& operator=(const AnnVector& other);
79 
80  // get the end point directions, transformed to
81  // the input coordinate system if necessary.
82  // The first element will be the starting point,
83  // the second the ending point.
85 
86  virtual std::ostream& print(std::ostream &os) const;
87 
88 private:
90 
91  void _init(
92  const casacore::Quantity& xBegin, const casacore::Quantity& yBegin,
93  const casacore::Quantity& xEnd, const casacore::Quantity& yEnd
94  );
95 };
96 
97 }
98 
99 #endif
A 1-D Specialization of the Array class.
Base class for annotations.
virtual std::ostream & print(std::ostream &os) const
Represents a vector annotation which has a start and ending point.
Definition: AnnVector.h:48
casacore::Vector< casacore::MDirection > getEndPoints() const
get the end point directions, transformed to the input coordinate system if necessary.
AnnVector(const casacore::Quantity &xStart, const casacore::Quantity &yStart, const casacore::Quantity &xEnd, const casacore::Quantity &yEnd, const casacore::String &dirRefFrameString, const casacore::CoordinateSystem &csys, const casacore::Quantity &beginFreq, const casacore::Quantity &endFreq, const casacore::String &freqRefFrame, const casacore::String &dopplerString, const casacore::Quantity &restfreq, const casacore::Vector< casacore::Stokes::StokesTypes > &stokes)
String: the storage and methods of handling collections of characters.
Definition: String.h:223
AnnVector & operator=(const AnnVector &other)
implicit copy constructor and destructor are fine
Interconvert pixel and world coordinates.
AnnotationBase::Direction _inputPoints
Definition: AnnVector.h:89