casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CalIter.h
Go to the documentation of this file.
1 //# CalIter.h: Sequential calibration table iterator
2 //# Copyright (C) 1996,1997,1998,2001,2002,2003
3 //# Associated Universities, Inc. Washington DC, USA.
4 //#
5 //# This library is free software; you can redistribute it and/or modify it
6 //# under the terms of the GNU Library General Public License as published by
7 //# the Free Software Foundation; either version 2 of the License, or (at your
8 //# option) any later version.
9 //#
10 //# This library is distributed in the hope that it will be useful, but WITHOUT
11 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 //# License for more details.
14 //#
15 //# You should have received a copy of the GNU Library General Public License
16 //# along with this library; if not, write to the Free Software Foundation,
17 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18 //#
19 //# Correspondence concerning AIPS++ should be adressed as follows:
20 //# Internet email: aips2-request@nrao.edu.
21 //# Postal address: AIPS++ Project Office
22 //# National Radio Astronomy Observatory
23 //# 520 Edgemont Road
24 //# Charlottesville, VA 22903-2475 USA
25 //#
26 //#
27 //# $Id$
28 
29 #ifndef CALIBRATION_CALITER_H
30 #define CALIBRATION_CALITER_H
31 
33 
34 namespace casa { //# NAMESPACE CASA - BEGIN
35 
36 // <summary>
37 // CalIter: Sequential calibration table iterator
38 // </summary>
39 
40 // <use visibility=export>
41 
42 // <reviewed reviewer="" date="" tests="" demos="">
43 
44 // <prerequisite>
45 // <li> <linkto class="CalTable">CalTable</linkto> module
46 // <li> <linkto class="CalIterBase">CalIterBase</linkto> module
47 // </prerequisite>
48 //
49 // <etymology>
50 // From "calibration table" and "iterator"
51 // </etymology>
52 //
53 // <synopsis>
54 // The CalIter class is a sequential calibration table iterator,
55 // inherited from the abstract base class CalIterBase.
56 // </synopsis>
57 //
58 // <example>
59 // <srcblock>
60 // </srcblock>
61 // </example>
62 //
63 // <motivation>
64 // Encapsulate sequential calibration table iteration.
65 // </motivation>
66 //
67 // <todo asof="01/08/01">
68 // (i) Deal with non-standard columns.
69 // </todo>
70 
71 class CalIter : public CalIterBase
72 {
73  public:
74  // Construct from a calibration table without specifying iteration
75  // indices and intervals. This returns the input calibration table
76  // in its entirety for each iteration, in the original sort order.
77  CalIter (CalTable& calTable);
78 
79  // Construct from a calibration table, set of iteration indices,
80  // iteration order and iteration sort option. This returns the
81  // input calibration table in its entirety for each iteration,
82  // sorted on the specified iteration indices.
83  CalIter (CalTable& calTable, const casacore::Vector<casacore::Int>& iterIndices,
86 
87  // Default destructor
88  virtual ~CalIter();
89 
90  // Iterator control
91  void origin() {};
92  casacore::Bool more() {return true;};
93 
94  // Current iteration sub-table
95  virtual CalTable& subTable();
96 
97  protected:
98  // Prohibit public use of the null constructor, which
99  // does not produce a usable object.
100  CalIter() {};
101 
102  private:
103  // Pointer to calibration table
105 };
106 
107 
108 } //# NAMESPACE CASA - END
109 
110 #endif
111 
112 
113 
114 
115 
virtual ~CalIter()
Default destructor.
Order
Enumerate the sort order:
Definition: Sort.h:260
CalTable: Calibration table access and creation.
Definition: CalTable.h:82
CalIterBase: Base class for calibration table iterators.
Definition: CalIterBase.h:74
void origin()
Iterator control.
Definition: CalIter.h:91
Option
Enumerate the sort options:
Definition: Sort.h:252
CalTable * calTable_p
Pointer to calibration table.
Definition: CalIter.h:100
CalIter()
Prohibit public use of the null constructor, which does not produce a usable object.
Definition: CalIter.h:100
virtual CalTable & subTable()
Current iteration sub-table.
bool Bool
Define the standard types used by Casacore.
Definition: aipstype.h:42
CalIter: Sequential calibration table iterator.
Definition: CalIter.h:71
casacore::Bool more()
Definition: CalIter.h:92