casacore
Loading...
Searching...
No Matches
ConstrainedRangeQuantileComputer.h
Go to the documentation of this file.
1// # Copyright (C) 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: casa-feedback@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 SCIMATH_CONSTRAINEDRANGEQUANTILECOMPUTER_H
27#define SCIMATH_CONSTRAINEDRANGEQUANTILECOMPUTER_H
28
29#include <casacore/scimath/StatsFramework/ClassicalQuantileComputer.h>
30
31#include <casacore/casa/aips.h>
32
33namespace casacore {
34
35// Basic concrete QuantileComputer class for data constrained to be
36// in a specified range. Some derived classes of ConstrainedRangeStatistics
37// use it. It should never be explicitly instantiated by an API developer.
38// See the class documentation of StatisticsAlgorithm for details on
39// QuantileComputer classes.
40
41template <class AccumType, class DataIterator, class MaskIterator = const Bool*,
42 class WeightsIterator = DataIterator>
44 public:
46
48
49 // copy semantics
51
53
54 // copy semantics
56
57 // clone this object by returning a pointer to a copy
59
60 // Caller is responsible for passing correct values of mynpts, mymin, and
61 // mymax; no checking is done for correctness in this method.
62 virtual AccumType getMedian(uInt64 mynpts, AccumType mymin, AccumType mymax,
63 uInt binningThreshholdSizeBytes, Bool persistSortedArray, uInt nBins);
64
65 // get the median of the absolute deviation about the median of the data.
66 virtual AccumType getMedianAbsDevMed(uInt64 mynpts, AccumType mymin, AccumType mymax,
67 uInt binningThreshholdSizeBytes, Bool persistSortedArray,
68 uInt nBins);
69
70 void setRange(const std::pair<AccumType, AccumType>& r) { _range = r; }
71
72 protected:
73 // <group>
74 virtual void _findBins(std::vector<BinCountArray>& binCounts,
75 std::vector<std::shared_ptr<AccumType>>& sameVal,
76 std::vector<Bool>& allSame, const DataIterator& dataBegin, uInt64 nr,
77 uInt dataStride, const std::vector<StatsHistogram<AccumType>>& binDesc,
78 const std::vector<AccumType>& maxLimit) const;
79
80 virtual void _findBins(std::vector<BinCountArray>& binCounts,
81 std::vector<std::shared_ptr<AccumType>>& sameVal,
82 std::vector<Bool>& allSame, const DataIterator& dataBegin, uInt64 nr,
83 uInt dataStride, const DataRanges& ranges, Bool isInclude,
84 const std::vector<StatsHistogram<AccumType>>& binDesc,
85 const std::vector<AccumType>& maxLimit) const;
86
87 virtual void _findBins(std::vector<BinCountArray>& binCounts,
88 std::vector<std::shared_ptr<AccumType>>& sameVal,
89 std::vector<Bool>& allSame, const DataIterator& dataBegin, uInt64 nr,
90 uInt dataStride, const MaskIterator& maskBegin, uInt maskStride,
91 const std::vector<StatsHistogram<AccumType>>& binDesc,
92 const std::vector<AccumType>& maxLimit) const;
93
94 virtual void _findBins(std::vector<BinCountArray>& binCounts,
95 std::vector<std::shared_ptr<AccumType>>& sameVal,
96 std::vector<Bool>& allSame, const DataIterator& dataBegin, uInt64 nr,
97 uInt dataStride, const MaskIterator& maskBegin, uInt maskStride,
98 const DataRanges& ranges, Bool isInclude,
99 const std::vector<StatsHistogram<AccumType>>& binDesc,
100 const std::vector<AccumType>& maxLimit) const;
101
102 virtual void _findBins(std::vector<BinCountArray>& binCounts,
103 std::vector<std::shared_ptr<AccumType>>& sameVal,
104 std::vector<Bool>& allSame, const DataIterator& dataBegin,
105 const WeightsIterator& weightsBegin, uInt64 nr, uInt dataStride,
106 const std::vector<StatsHistogram<AccumType>>& binDesc,
107 const std::vector<AccumType>& maxLimit) const;
108
109 virtual void _findBins(std::vector<BinCountArray>& binCounts,
110 std::vector<std::shared_ptr<AccumType>>& sameVal,
111 std::vector<Bool>& allSame, const DataIterator& dataBegin,
112 const WeightsIterator& weightsBegin, uInt64 nr, uInt dataStride,
113 const DataRanges& ranges, Bool isInclude,
114 const std::vector<StatsHistogram<AccumType>>& binDesc,
115 const std::vector<AccumType>& maxLimit) const;
116
117 virtual void _findBins(std::vector<BinCountArray>& binCounts,
118 std::vector<std::shared_ptr<AccumType>>& sameVal,
119 std::vector<Bool>& allSame, const DataIterator& dataBegin,
120 const WeightsIterator& weightsBegin, uInt64 nr, uInt dataStride,
121 const MaskIterator& maskBegin, uInt maskStride, const DataRanges& ranges,
122 Bool isInclude, const std::vector<StatsHistogram<AccumType>>& binDesc,
123 const std::vector<AccumType>& maxLimit) const;
124
125 virtual void _findBins(std::vector<BinCountArray>& binCounts,
126 std::vector<std::shared_ptr<AccumType>>& sameVal,
127 std::vector<Bool>& allSame, const DataIterator& dataBegin,
128 const WeightsIterator& weightBegin, uInt64 nr, uInt dataStride,
129 const MaskIterator& maskBegin, uInt maskStride,
130 const std::vector<StatsHistogram<AccumType>>& binDesc,
131 const std::vector<AccumType>& maxLimit) const;
132 // </group>
133
134 //<group>
135 // populate an unsorted array with valid data. If <src>includeLimits</src>
136 // is defined, then restrict values that are entered in the array to those
137 // limits (inclusive of the minimum, exclusive of the maximum).
138 // <src>maxCount</src> and <src>currentCount</src> are used only if
139 // <src>includeLimits</src> is defined. In this case, the method will return
140 // when currentCount == maxCount, thus avoiding scanning remaining data
141 // unnecessarily.
142
143 // no weights, no mask, no ranges
144 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
145 uInt dataStride) const;
146
147 // ranges
148 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
149 uInt dataStride, const DataRanges& ranges, Bool isInclude) const;
150
151 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
152 uInt dataStride, const MaskIterator& maskBegin,
153 uInt maskStride) const;
154
155 // mask and ranges
156 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
157 uInt dataStride, const MaskIterator& maskBegin, uInt maskStride,
158 const DataRanges& ranges, Bool isInclude) const;
159
160 // weights
161 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin,
162 const WeightsIterator& weightsBegin, uInt64 nr,
163 uInt dataStride) const;
164
165 // weights and ranges
166 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin,
167 const WeightsIterator& weightsBegin, uInt64 nr, uInt dataStride,
168 const DataRanges& ranges, Bool isInclude) const;
169
170 // weights and mask
171 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin,
172 const WeightsIterator& weightBegin, uInt64 nr, uInt dataStride,
173 const MaskIterator& maskBegin, uInt maskStride) const;
174
175 // weights, mask, ranges
176 virtual void _populateArray(DataArray& ary, const DataIterator& dataBegin,
177 const WeightsIterator& weightBegin, uInt64 nr, uInt dataStride,
178 const MaskIterator& maskBegin, uInt maskStride,
179 const DataRanges& ranges, Bool isInclude) const;
180
181 // no weights, no mask, no ranges
182 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
183 const DataIterator& dataBegin, uInt64 nr, uInt dataStride,
184 const IncludeLimits& includeLimits, uInt64 maxCount) const;
185
186 // ranges
187 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
188 const DataIterator& dataBegin, uInt64 nr, uInt dataStride,
189 const DataRanges& ranges, Bool isInclude,
190 const IncludeLimits& includeLimits, uInt64 maxCount) const;
191
192 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
193 const DataIterator& dataBegin, uInt64 nr, uInt dataStride,
194 const MaskIterator& maskBegin, uInt maskStride,
195 const IncludeLimits& includeLimits, uInt64 maxCount) const;
196
197 // mask and ranges
198 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
199 const DataIterator& dataBegin, uInt64 nr, uInt dataStride,
200 const MaskIterator& maskBegin, uInt maskStride,
201 const DataRanges& ranges, Bool isInclude,
202 const IncludeLimits& includeLimits, uInt64 maxCount) const;
203
204 // weights
205 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
206 const DataIterator& dataBegin, const WeightsIterator& weightsBegin,
207 uInt64 nr, uInt dataStride, const IncludeLimits& includeLimits,
208 uInt64 maxCount) const;
209
210 // weights and ranges
211 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
212 const DataIterator& dataBegin, const WeightsIterator& weightsBegin,
213 uInt64 nr, uInt dataStride, const DataRanges& ranges, Bool isInclude,
214 const IncludeLimits& includeLimits, uInt64 maxCount) const;
215
216 // weights and mask
217 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
218 const DataIterator& dataBegin, const WeightsIterator& weightBegin,
219 uInt64 nr, uInt dataStride, const MaskIterator& maskBegin,
220 uInt maskStride, const IncludeLimits& includeLimits,
221 uInt64 maxCount) const;
222
223 // weights, mask, ranges
224 virtual void _populateArrays(std::vector<DataArray>& arys, uInt64& currentCount,
225 const DataIterator& dataBegin, const WeightsIterator& weightBegin,
226 uInt64 nr, uInt dataStride, const MaskIterator& maskBegin,
227 uInt maskStride, const DataRanges& ranges, Bool isInclude,
228 const IncludeLimits& includeLimits, uInt64 maxCount) const;
229 // </group>
230
231 // <group>
232 // no weights, no mask, no ranges
233 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
234 uInt dataStride, uInt maxElements) const;
235
236 // ranges
237 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
238 uInt dataStride, const DataRanges& ranges, Bool isInclude,
239 uInt maxElements) const;
240
241 // mask
242 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
243 uInt dataStride, const MaskIterator& maskBegin, uInt maskStride,
244 uInt maxElements) const;
245
246 // mask and ranges
247 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin, uInt64 nr,
248 uInt dataStride, const MaskIterator& maskBegin, uInt maskStride,
249 const DataRanges& ranges, Bool isInclude, uInt maxElements) const;
250
251 // weights
252 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin,
253 const WeightsIterator& weightBegin, uInt64 nr, uInt dataStride,
254 uInt maxElements) const;
255
256 // weights and ranges
257 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin,
258 const WeightsIterator& weightsBegin, uInt64 nr, uInt dataStride,
259 const DataRanges& ranges, Bool isInclude, uInt maxElements) const;
260
261 // weights and mask
262 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin,
263 const WeightsIterator& weightBegin, uInt64 nr, uInt dataStride,
264 const MaskIterator& maskBegin, uInt maskStride,
265 uInt maxElements) const;
266
267 // weights, mask, ranges
268 virtual Bool _populateTestArray(DataArray& ary, const DataIterator& dataBegin,
269 const WeightsIterator& weightBegin, uInt64 nr, uInt dataStride,
270 const MaskIterator& maskBegin, uInt maskStride,
271 const DataRanges& ranges, Bool isInclude, uInt maxElements) const;
272 // </group>
273
274 private:
276 // for use in macros of often repeatedly run methods
277 AccumType _myMedian{0};
278 std::pair<AccumType, AccumType> _range{};
279};
280
281} // namespace casacore
282
283#ifndef CASACORE_NO_AUTO_TEMPLATES
284#include <casacore/scimath/StatsFramework/ConstrainedRangeQuantileComputer.tcc>
285#endif
286
287#endif
#define DataRanges
#define DataArray
Commonly used types in statistics framework.
#define IncludeLimits
virtual StatisticsAlgorithmQuantileComputer< CASA_STATP > * clone() const
clone this object by returning a pointer to a copy
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const IncludeLimits &includeLimits, uInt64 maxCount) const
weights and ranges
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, uInt maxElements) const
weights
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const IncludeLimits &includeLimits, uInt64 maxCount) const
no weights, no mask, no ranges
AccumType _myMedian
for use in macros of often repeatedly run methods
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const IncludeLimits &includeLimits, uInt64 maxCount) const
weights and mask
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const IncludeLimits &includeLimits, uInt64 maxCount) const
weights
virtual AccumType getMedianAbsDevMed(uInt64 mynpts, AccumType mymin, AccumType mymax, uInt binningThreshholdSizeBytes, Bool persistSortedArray, uInt nBins)
get the median of the absolute deviation about the median of the data.
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
mask and ranges
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
ranges
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, uInt maxElements) const
no weights, no mask, no ranges
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
ranges
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, uInt maxElements) const
weights and mask
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
mask and ranges
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const IncludeLimits &includeLimits, uInt64 maxCount) const
weights, mask, ranges
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
weights and ranges
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
weights, mask, ranges
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const IncludeLimits &includeLimits, uInt64 maxCount) const
mask and ranges
ConstrainedRangeQuantileComputer & operator=(const ConstrainedRangeQuantileComputer &other)
copy semantics
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride) const
weights and mask
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride) const
weights
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, uInt maxElements) const
mask
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride) const
populate an unsorted array with valid data.
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
ConstrainedRangeQuantileComputer(const ConstrainedRangeQuantileComputer &csq)
copy semantics
ConstrainedRangeQuantileComputer(StatisticsDataset< CASA_STATP > *dataset)
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual AccumType getMedian(uInt64 mynpts, AccumType mymin, AccumType mymax, uInt binningThreshholdSizeBytes, Bool persistSortedArray, uInt nBins)
Caller is responsible for passing correct values of mynpts, mymin, and mymax; no checking is done for...
void setRange(const std::pair< AccumType, AccumType > &r)
virtual void _findBins(std::vector< BinCountArray > &binCounts, std::vector< std::shared_ptr< AccumType > > &sameVal, std::vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const std::vector< StatsHistogram< AccumType > > &binDesc, const std::vector< AccumType > &maxLimit) const
virtual void _populateArray(DataArray &ary, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride) const
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const IncludeLimits &includeLimits, uInt64 maxCount) const
virtual void _populateArrays(std::vector< DataArray > &arys, uInt64 &currentCount, const DataIterator &dataBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const IncludeLimits &includeLimits, uInt64 maxCount) const
ranges
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, uInt64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
weights and ranges
virtual Bool _populateTestArray(DataArray &ary, const DataIterator &dataBegin, const WeightsIterator &weightBegin, uInt64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
weights, mask, ranges
This is the virtual base class from which concrete QuantileComputer classes are derived.
Representation of a statistics dataset used in statistics framework calculatations.
Represents an unfilled histogram with equal width bins for binning used for quantile computations.
For temporary backward namespace compatibility, use casa as alias for casacore.
Definition mainpage.dox:28
const Bool False
Definition aipstype.h:42
unsigned int uInt
Definition aipstype.h:49
bool Bool
Define the standard types used by Casacore.
Definition aipstype.h:40
unsigned long long uInt64
Definition aipsxtype.h:37