/usr/include/casacore/images/Images/FITSErrorImage.h is in casacore-dev 2.2.0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 | //# FITSErrorImage.h: Class providing native access to FITS images
//# Copyright (C) 2001,2002
//# 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$
#ifndef IMAGES_FITSERRORIMAGE_H
#define IMAGES_FITSERRORIMAGE_H
//# Includes
#include <casacore/casa/aips.h>
#include <casacore/images/Images/FITSImage.h>
#include <casacore/casa/BasicSL/String.h>
namespace casacore { //# NAMESPACE CASACORE - BEGIN
//# Forward Declarations
template <class T> class Array;
//
class MaskSpecifier;
class IPosition;
class Slicer;
// <summary>
// Class providing native access to FITS Error images.
// </summary>
// <use visibility=export>
// <reviewed reviewer="" date="" tests="tFITSErrorImage.cc">
// </reviewed>
// <prerequisite>
// <li> <linkto class=FITSImage>FITSImage</linkto>
// <li> <linkto class=FITSMask>FITSMask</linkto>
// </prerequisite>
// <etymology>
// </etymology>
// <synopsis>
// </synopsis>
// <example>
// <srcblock>
// </srcblock>
// </example>
// <motivation>
// This provides native access to FITS error images.
// </motivation>
//# <todo asof="2011/08/17">
//# </todo>
class FITSErrorImage: public FITSImage
{
public:
// The enum describes which types of error images exist. The type is fixed
// during object creation and can not be changed at a later time.
enum ErrorType
{
MSE, // the values are "mean squared error" (=variance)
RMSE, // the values are "root mean squared error" (=sigma)
INVMSE, // the values are inverse "means squared error"
INVRMSE, // the values are inverse "root mean squared error"
UNKNOWN, // unknown type
DEFAULT=MSE
};
// Construct a FITSImage from the disk FITS file name and extension and apply mask.
explicit FITSErrorImage(const String& name, uInt whichRep=0, uInt whichHDU=0, FITSErrorImage::ErrorType errtype=MSE);
// Construct a FITSImage from the disk FITS file name and extension and apply mask or not.
FITSErrorImage(const String& name, const MaskSpecifier& mask, uInt whichRep=0, uInt whichHDU=0, FITSErrorImage::ErrorType errtype=MSE);
// Copy constructor (reference semantics)
FITSErrorImage(const FITSErrorImage& other);
// Destructor
virtual ~FITSErrorImage();
// Assignment (reference semantics)
FITSErrorImage& operator=(const FITSErrorImage& other);
// Make a copy of the object with new (reference semantics).
virtual ImageInterface<Float>* cloneII() const;
// Get the image type (returns "FITSErrorImage").
virtual String imageType() const;
// Do the actual get of the data.
// Returns False as the data do not reference another Array
virtual Bool doGetSlice (Array<Float>& buffer, const Slicer& theSlice);
// The FITSImage is not writable, so this throws an exception.
virtual void doPutSlice (const Array<Float>& sourceBuffer,
const IPosition& where,
const IPosition& stride);
// Return the error type.
virtual FITSErrorImage::ErrorType errorType() const
{return errtype_p;};
// Convert an image type to String.
static FITSErrorImage::ErrorType stringToErrorType(String errorTypeStr);
// Convert a String to an image type.
static String errorTypeToString(FITSErrorImage::ErrorType errType);
private:
// Set the correct masking.
void setupMask();
Array<Float> buffer_p;
FITSErrorImage::ErrorType errtype_p;
};
} //# NAMESPACE CASACORE - END
#endif
|