casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
casa::ImageCollapser< T > Class Template Reference

#include <ImageCollapser.h>

Inheritance diagram for casa::ImageCollapser< T >:
casa::ImageTask< T >

Public Member Functions

 ImageCollapser (const casacore::String &aggString, SPCIIT image, const casacore::Record *const regionRec, const casacore::String &maskInp, const casacore::IPosition &axes, casacore::Bool invertAxesSelection, const casacore::String &outname, casacore::Bool overwrite)
 Top level interface which allows collapsing of images along a single axis. An aggregate method (average, sum, etc) is applied to the collapsed pixels. More...
 
 ImageCollapser (const SPCIIT image, const casacore::IPosition &axes, casacore::Bool invertAxesSelection, const ImageCollapserData::AggregateType aggregateType, const casacore::String &outname, casacore::Bool overwrite)
 
 ~ImageCollapser ()
 
SPIIT collapse () const
 perform the collapse and return the resulting image. More...
 
casacore::String getClass () const
 
- Public Member Functions inherited from casa::ImageTask< T >
virtual ~ImageTask ()
 
void setStretch (const casacore::Bool stretch)
 
void setLogfile (const casacore::String &lf)
 tacitly does nothing if lf is the empty string. More...
 
void setLogfileAppend (const casacore::Bool a)
 
void setRegion (const casacore::Record &region)
 
void setMask (const casacore::String &mask)
 
void setVerbosity (Verbosity verbosity)
 
void addHistory (const std::vector< std::pair< casacore::String, casacore::String > > &msgs) const
 These messages will appear in the product image history upon the call to _prepareOutputImage(). More...
 
void addHistory (const casacore::LogOrigin &origin, const casacore::String &msg) const
 
void addHistory (const casacore::LogOrigin &origin, const std::vector< casacore::String > &msgs) const
 
void addHistory (const casacore::LogOrigin &origin, const casacore::String &taskname, const std::vector< casacore::String > &paramNames, const std::vector< casac::variant > &paramValues) const
 This adds standard history messages regarding the task that was run and input parameters used. More...
 
void suppressHistoryWriting (casacore::Bool b)
 suppress writing the history on _prepareOutputImage() call. More...
 
std::vector< std::pair
< casacore::String,
casacore::String > > 
getHistory ()
 get the history associated with the task. More...
 
void setDropDegen (casacore::Bool d)
 

Protected Member Functions

CasacRegionManager::StokesControl _getStokesControl () const
 
std::vector
< casacore::Coordinate::Type
_getNecessaryCoordinates () const
 Represents the minimum set of coordinates necessary for the task to function. More...
 
casacore::Bool _supportsMultipleRegions () const
 
- Protected Member Functions inherited from casa::ImageTask< T >
 ImageTask (const SPCIIT image, const casacore::String &region, const casacore::Record *const &regionPtr, const casacore::String &box, const casacore::String &chanInp, const casacore::String &stokes, const casacore::String &maskInp, const casacore::String &outname, casacore::Bool overwrite)
 if outname is empty, no image will be written if overwrite is True, if image already exists it will be removed if overwrite is False, if image already exists exception will be thrown More...
 
 ImageTask (const SPCIIT image, const casacore::Record *const &regionPtr, const casacore::String &mask, const casacore::String &outname, casacore::Bool overwrite)
 
virtual std::vector
< OutputDestinationChecker::OutputStruct
_getOutputStruct ()
 
virtual void _construct (casacore::Bool verbose=true)
 does the lion's share of constructing the object, ie checks validity of inputs, etc. More...
 
const SPCIIT _getImage () const
 
const casacore::String_getMask () const
 
const casacore::Record_getRegion () const
 
void _setStokes (const casacore::String &stokes)
 
const casacore::String_getStokes () const
 
const casacore::String_getChans () const
 
const casacore::String_getOutname () const
 
casacore::Bool _isPVImage () const
 Is the attached image a position-velocity (PV) image? More...
 
void _removeExistingOutfileIfNecessary () const
 
void _removeExistingFileIfNecessary (const casacore::String &filename, const casacore::Bool overwrite, casacore::Bool warnOnly=false) const
 if warnOnly is true, log a warning message if file exists and overwrite is true, else throw an exception. More...
 
casacore::String _summaryHeader () const
 
const std::shared_ptr
< casacore::LogIO
_getLog () const
 
virtual casacore::Bool _hasLogfileSupport () const
 by default, derived classes are configured to have no log file support. More...
 
casacore::Bool _getStretch () const
 
Bool _getSuppressHistory () const
 
const std::shared_ptr< LogFile_getLogFile () const
 
casacore::Bool _writeLogfile (const casacore::String &output, const casacore::Bool open=true, const casacore::Bool close=true)
 
casacore::Bool _openLogfile ()
 
void _closeLogfile () const
 
virtual casacore::Bool _supportsMultipleBeams () const
 does this task support images with multiple beams? false means it never does. More...
 
SPIIT _prepareOutputImage (const casacore::ImageInterface< T > &image, const casacore::Array< T > *const values, const casacore::ArrayLattice< casacore::Bool > *const mask=nullptr, const casacore::IPosition *const outShape=nullptr, const casacore::CoordinateSystem *const coordsys=nullptr, const casacore::String *const outname=nullptr, casacore::Bool overwrite=false, casacore::Bool dropDegen=false) const
 If outname != NULL, use the value supplied. More...
 
SPIIT _prepareOutputImage (const casacore::ImageInterface< T > &image, casacore::Bool dropDegen=false) const
 
SPIIT _prepareOutputImage (const casacore::ImageInterface< T > &image, const casacore::String &outname, casacore::Bool overwrite, casacore::Bool warnOnly) const
 if warnOnly is true, only log a warning message if the file exists and overwrite is true, else throw an excepction More...
 
SPIIT _prepareOutputImage (const casacore::ImageInterface< T > &image, const casacore::Lattice< T > &data) const
 data are copied to the output image from the data lattice. More...
 
Verbosity _getVerbosity () const
 
casacore::Bool _getOverwrite () const
 
virtual casacore::Bool _mustHaveSquareDirectionPixels () const
 
casacore::Bool _getDropDegen () const
 
template<class U >
void _doHistory (std::shared_ptr< casacore::ImageInterface< U >> &image) const
 
void _reportOldNewImageShapes (const ImageInterface< T > &out) const
 
void _reportOldNewImageShapes (const IPosition &outShape) const
 

Private Member Functions

 ImageCollapser ()
 disallow default constructor More...
 
void _doFluxUnits (casacore::TempImage< T > &tmpIm, const std::shared_ptr< const casacore::SubImage< T >> subImage) const
 
void _invert ()
 
void _finishConstruction ()
 
void _checkFlux (SPCIIT subImage) const
 
void _doDegenerateAxesCase (casacore::TempImage< T > &tmpIm, SPCIIT subImage) const
 
void _doLowPerf (TempImage< T > &tmpIm, SPCIIT subImage, T npixPerBeam) const
 
void _doHighPerf (SPCIIT image, casacore::TempImage< T > &outImage) const
 necessary to improve performance More...
 
Bool _doMultipleBeams (TempImage< T > &tmpIm, SPCIIT subImage, Bool hasDir, const CoordinateSystem &outCoords) const
 returns true if miscellaneous info was copied More...
 
void _doOtherStats (TempImage< T > &tmpIm, SPCIIT subImage) const
 
LatticeStatsBase::StatisticsTypes _getStatsType () const
 

Static Private Member Functions

static void _zeroNegatives (casacore::Array< T > &arr)
 

Private Attributes

casacore::Bool _invertAxesSelection
 
casacore::IPosition _axes
 
ImageCollapserData::AggregateType _aggType
 

Additional Inherited Members

- Public Types inherited from casa::ImageTask< T >
enum  Verbosity {
  QUIET,
  WHISPER,
  LOW,
  NORMAL,
  HIGH,
  NOISY,
  DEAFENING
}
 Virtual base class for image analysis tasks. More...
 
- Static Protected Member Functions inherited from casa::ImageTask< T >
static void _copyMask (casacore::Lattice< casacore::Bool > &mask, const casacore::ImageInterface< T > &image)
 
static void _copyData (casacore::Lattice< T > &data, const casacore::Lattice< T > &image)
 

Detailed Description

template<class T>
class casa::ImageCollapser< T >

Definition at line 19 of file ImageCollapser.h.

Constructor & Destructor Documentation

template<class T >
casa::ImageCollapser< T >::ImageCollapser ( const casacore::String aggString,
SPCIIT  image,
const casacore::Record *const  regionRec,
const casacore::String maskInp,
const casacore::IPosition axes,
casacore::Bool  invertAxesSelection,
const casacore::String outname,
casacore::Bool  overwrite 
)

Top level interface which allows collapsing of images along a single axis. An aggregate method (average, sum, etc) is applied to the collapsed pixels.

Etymology

Collapses image.

Synopsis

High level interface for collapsing an image along a single axis.

Example

ImageCollapser collapser(...);
collapser.collapse();

if outname is empty, no image will be written if overwrite is True, if image already exists it will be removed if overwrite is False, if image already exists exception will be thrown

template<class T >
casa::ImageCollapser< T >::ImageCollapser ( const SPCIIT  image,
const casacore::IPosition axes,
casacore::Bool  invertAxesSelection,
const ImageCollapserData::AggregateType  aggregateType,
const casacore::String outname,
casacore::Bool  overwrite 
)
template<class T >
casa::ImageCollapser< T >::~ImageCollapser ( )
inline

Definition at line 70 of file ImageCollapser.h.

template<class T >
casa::ImageCollapser< T >::ImageCollapser ( )
private

disallow default constructor

Member Function Documentation

template<class T >
void casa::ImageCollapser< T >::_checkFlux ( SPCIIT  subImage) const
private
template<class T >
void casa::ImageCollapser< T >::_doDegenerateAxesCase ( casacore::TempImage< T > &  tmpIm,
SPCIIT  subImage 
) const
private
template<class T >
void casa::ImageCollapser< T >::_doFluxUnits ( casacore::TempImage< T > &  tmpIm,
const std::shared_ptr< const casacore::SubImage< T >>  subImage 
) const
private
template<class T >
void casa::ImageCollapser< T >::_doHighPerf ( SPCIIT  image,
casacore::TempImage< T > &  outImage 
) const
private

necessary to improve performance

template<class T >
void casa::ImageCollapser< T >::_doLowPerf ( TempImage< T > &  tmpIm,
SPCIIT  subImage,
npixPerBeam 
) const
private
template<class T >
Bool casa::ImageCollapser< T >::_doMultipleBeams ( TempImage< T > &  tmpIm,
SPCIIT  subImage,
Bool  hasDir,
const CoordinateSystem outCoords 
) const
private

returns true if miscellaneous info was copied

template<class T >
void casa::ImageCollapser< T >::_doOtherStats ( TempImage< T > &  tmpIm,
SPCIIT  subImage 
) const
private
template<class T >
void casa::ImageCollapser< T >::_finishConstruction ( )
private
template<class T >
std::vector<casacore::Coordinate::Type> casa::ImageCollapser< T >::_getNecessaryCoordinates ( ) const
inlineprotectedvirtual

Represents the minimum set of coordinates necessary for the task to function.

Implements casa::ImageTask< T >.

Definition at line 82 of file ImageCollapser.h.

template<class T >
LatticeStatsBase::StatisticsTypes casa::ImageCollapser< T >::_getStatsType ( ) const
private
template<class T >
CasacRegionManager::StokesControl casa::ImageCollapser< T >::_getStokesControl ( ) const
inlineprotectedvirtual

Implements casa::ImageTask< T >.

Definition at line 78 of file ImageCollapser.h.

References casa::CasacRegionManager::USE_ALL_STOKES.

template<class T >
void casa::ImageCollapser< T >::_invert ( )
private
template<class T >
casacore::Bool casa::ImageCollapser< T >::_supportsMultipleRegions ( ) const
inlineprotectedvirtual

Reimplemented from casa::ImageTask< T >.

Definition at line 86 of file ImageCollapser.h.

template<class T >
static void casa::ImageCollapser< T >::_zeroNegatives ( casacore::Array< T > &  arr)
staticprivate
template<class T >
SPIIT casa::ImageCollapser< T >::collapse ( ) const

perform the collapse and return the resulting image.

template<class T >
casacore::String casa::ImageCollapser< T >::getClass ( ) const
inlinevirtual

Implements casa::ImageTask< T >.

Definition at line 75 of file ImageCollapser.h.

References casa::name().

Member Data Documentation

template<class T >
ImageCollapserData::AggregateType casa::ImageCollapser< T >::_aggType
private

Definition at line 91 of file ImageCollapser.h.

template<class T >
casacore::IPosition casa::ImageCollapser< T >::_axes
private

Definition at line 90 of file ImageCollapser.h.

template<class T >
casacore::Bool casa::ImageCollapser< T >::_invertAxesSelection
private

Definition at line 89 of file ImageCollapser.h.


The documentation for this class was generated from the following file: