Loading...
Searching...
No Matches
casacore::LELSpectralIndex< T > Class Template Reference
lattices package (libcasa_lattices) » LEL_module » LEL_module_internal_classes

More...

`#include <LELSpectralIndex.h>`

## Public Member Functions

| LELSpectralIndex (const Block< LatticeExprNode > &expr)
| Constructor takes operation and expressions to be operated upon.
| ~LELSpectralIndex ()
| Destructor.
virtual void | eval (LELArray< T > &result, const Slicer &section) const
| Recursively evaluate the expression.
virtual LELScalar< T > | getScalar () const
| Get the result of a scalar subexpression.
virtual Bool | prepareScalarExpr ()
| Do further preparations (e.g.
virtual String | className () const
| Get class name.
virtual Bool | lock (FileLocker::LockType, uInt nattempts)
| Handle locking/syncing of a lattice in a lattice expression.
virtual void | unlock ()
virtual Bool | hasLock (FileLocker::LockType) const
virtual void | resync ()
Public Member Functions inherited from casacore::LELInterface< T >
virtual | ~LELInterface ()
| Virtual destructor.
virtual void | evalRef (LELArrayRef< T > &result, const Slicer &section) const
LELArray< T > | getArray () const
| Get the result of an array subexpression.
Bool | isScalar () const
| Is the result of evaluating this expression a scalar ?
const IPosition & | shape () const
| Get the shape of the expression result.
const LELAttribute & | getAttribute () const
| Get expression attribute.

## Private Attributes

Int | itsFreqAxis
Block< Double > | itsLogFreq
LatticeExprNode | arg0_p
LatticeExprNode | arg1_p

## Additional Inherited Members

Static Public Member Functions inherited from casacore::LELInterface< T >
static Bool | replaceScalarExpr (std::shared_ptr< LELInterface< T > > &expr)
| If the given expression is a valid scalar, replace it by its result.
Protected Member Functions inherited from casacore::LELInterface< T >
void | setAttr (const LELAttribute &attrib)
| Set the expression attributes of this object.

## Detailed Description

template<class T>
class casacore::LELSpectralIndex< T >

This LEL class handles calculation of the spectral index.

### Intended use:

Internal

### Review Status

Date Reviewed:
  yyyy/mm/dd

### Prerequisite

- Lattice
- LatticeExpr
- LatticeExprNode
- LELInterface
- LELFunctionEnums

### Synopsis

This LEL letter class is derived from LELInterface. It is used to construct LEL objects that calculate the sepectral index from 2 other LEL expression (usually images). It operates on real types (Float,Double)

### Motivation

This is a separate class (instead of being part of a LELFunction class), because the calculation of the spectral index requires extra variables (the frequencies) and some more complicated code.

Definition at line 70 of file LELSpectralIndex.h.

## Constructor & Destructor Documentation

## LELSpectralIndex()

template<class T>

casacore::LELSpectralIndex< T >::LELSpectralIndex | ( | const Block< LatticeExprNode > & | expr | ) |

Constructor takes operation and expressions to be operated upon.

## ~LELSpectralIndex()

template<class T>

casacore::LELSpectralIndex< T >::~LELSpectralIndex | ( |  | ) |

Destructor.

## Member Function Documentation

## className()

template<class T>

virtual String casacore::LELSpectralIndex< T >::className | ( |  | ) | const

virtual

Get class name.

Implements casacore::LELInterface< T >.

## eval()

template<class T>

virtual void casacore::LELSpectralIndex< T >::eval | ( | LELArray< T > & | result,
|  | const Slicer & | section ) const

virtual

Recursively evaluate the expression.

Implements casacore::LELInterface< T >.

## getScalar()

template<class T>

virtual LELScalar< T > casacore::LELSpectralIndex< T >::getScalar | ( |  | ) | const

virtual

Get the result of a scalar subexpression.

Throws an exception as it is not possible.

Implements casacore::LELInterface< T >.

## hasLock()

template<class T>

virtual Bool casacore::LELSpectralIndex< T >::hasLock | ( | FileLocker::LockType |  | ) | const

virtual

Reimplemented from casacore::LELInterface< T >.

## lock()

template<class T>

virtual Bool casacore::LELSpectralIndex< T >::lock | ( | FileLocker::LockType | ,
|  | uInt | nattempts )

virtual

Handle locking/syncing of a lattice in a lattice expression.

Reimplemented from casacore::LELInterface< T >.

## prepareScalarExpr()

template<class T>

virtual Bool casacore::LELSpectralIndex< T >::prepareScalarExpr | ( |  | ) |

virtual

Do further preparations (e.g.

optimization) on the expression. Returns False.

Implements casacore::LELInterface< T >.

## resync()

template<class T>

virtual void casacore::LELSpectralIndex< T >::resync | ( |  | ) |

virtual

Reimplemented from casacore::LELInterface< T >.

## unlock()

template<class T>

virtual void casacore::LELSpectralIndex< T >::unlock | ( |  | ) |

virtual

Reimplemented from casacore::LELInterface< T >.

## Member Data Documentation

## arg0_p

template<class T>

LatticeExprNode casacore::LELSpectralIndex< T >::arg0_p

private

Definition at line 109 of file LELSpectralIndex.h.

## arg1_p

template<class T>

LatticeExprNode casacore::LELSpectralIndex< T >::arg1_p

private

Definition at line 110 of file LELSpectralIndex.h.

## itsFreqAxis

template<class T>

Int casacore::LELSpectralIndex< T >::itsFreqAxis

private

Definition at line 107 of file LELSpectralIndex.h.

## itsLogFreq

template<class T>

Block<Double> casacore::LELSpectralIndex< T >::itsLogFreq

private

Definition at line 108 of file LELSpectralIndex.h.

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

- lattices/LEL/LELSpectralIndex.h