Loading...
Searching...
No Matches
casacore::MarshButterworthBandpass< T > Class Template Reference
scimath package (libcasa_scimath) » Functionals_module

More...

`#include <MarshButterworthBandpass.h>`

## Public Types

enum | FieldNames { BPASS , ORDER , PEAK , NFieldNames }
| definitions of the fields stored in a serialized Record. More...
Public Types inherited from casacore::SimButterworthBandpass< T >
enum | { CENTER , MINCUTOFF , MAXCUTOFF , PEAK }
| Enumeration of the function parameters. More...
Public Types inherited from casacore::Function1D< T, U >
typedef const T * | FunctionArg
Public Types inherited from casacore::Function< T, T >
typedef FunctionTraits< T >::ArgType | ArgType
typedef const ArgType * | FunctionArg

## Public Member Functions

| MarshButterworthBandpass ()
| create a zero-th order (all-pass) Butterworth bandpass.
| MarshButterworthBandpass (uInt minord, uInt maxord, T mincut=T(-1), T maxcut=T(1), T center=T(0), T peak=T(1))
| create a Butterworth bandpass function.
| MarshButterworthBandpass (const Record &gr) throw (InvalidSerializationError)
| create a fully specified Butterworth polynomial from parameters stored in a Record.
| MarshButterworthBandpass (const SimButterworthBandpass< T > &other)
| create a deep copy of another Butterworth polynomial
| MarshButterworthBandpass (const MarshButterworthBandpass< T > &other)
MarshButterworthBandpass< T > & | operator= (const MarshButterworthBandpass< T > &other)
| make a (deep) copy of another Butterworth polynomial
MarshButterworthBandpass< T > & | operator= (const SimButterworthBandpass< T > &other)
virtual | ~MarshButterworthBandpass ()
| Destructor.
virtual void | store (Record &gr) const
| store the state of this Function into a Record
virtual Function< T > * | clone () const
| Create a copy of this object.
Public Member Functions inherited from casacore::SimButterworthBandpass< T >
| SimButterworthBandpass ()
| create a zero-th order (all-pass) Butterworth bandpass function.
| SimButterworthBandpass (const uInt minord, const uInt maxord, const T &mincut=T(-1), const T &maxcut=T(1), const T &center=T(0), const T &peak=T(1))
| create a Butterworth bandpass function.
| SimButterworthBandpass (const RecordInterface &gr, T mincut=T(-1), T maxcut=T(1), T center=T(0), T peak=T(1))
| create a fully specified Butterworth bandpass in which the low and high pass orders are stored in a Record
| SimButterworthBandpass (const SimButterworthBandpass &other)
| create a copy of another Butterworth bandpass function
SimButterworthBandpass< T > & | operator= (const SimButterworthBandpass< T > &other)
| copy(deep) another Butterworth function
virtual | ~SimButterworthBandpass ()
| Destructor.
virtual T | eval (const typename FunctionTraits< T >::ArgType *x) const
| Evaluate the bandpass at "x".
void | setCenter (const T &x)
| set the center of the bandpass.
const T & | getCenter () const
| return the center of the bandpass.
void | setMinCutoff (const T &x)
| set the characteristic minimum (high-pass) cutoff value.
void | setMaxCutoff (const T &x)
| set the characteristic maximum (low-pass) cutoff value.
void | setMinOrder (uInt order)
| set the order of the Butterworth function for the minimum (high-pass) portion of the bandpass
void | setMaxOrder (uInt order)
| set the order of the Butterworth function for the maximum (low-pass) portion of the bandpass
const T & | getMinCutoff () const
| return the characteristic minimum (high-pass) cutoff value.
const T & | getMaxCutoff () const
| return the characteristic maximum (low-pass) cutoff value.
uInt | getMinOrder () const
| return the order of the Butterworth function for the minimum (high-pass) portion of the bandpass
uInt | getMaxOrder () const
| return the order of the Butterworth function for the maximum (low-pass) portion of the bandpass
void | setPeak (T val)
| set the scale of the function by setting its peak value.
const T & | getPeak () const
| return the scale of the function
virtual void | setMode (const RecordInterface &mode)
| get/set the function mode.
virtual void | getMode (RecordInterface &mode) const
virtual Bool | hasMode () const
| return True if the implementing function supports a mode.
Public Member Functions inherited from casacore::Function1D< T, U >
| Function1D ()
| Constructors.
| Function1D (const uInt n)
| Function1D (const Vector< T > &in)
| Function1D (const FunctionParam< T > &other)
template<class W, class X>
| Function1D (const Function1D< W, X > &other)
virtual | ~Function1D ()
| Destructor.
virtual uInt | ndim () const
| Returns the number of dimensions of function.
Public Member Functions inherited from casacore::Function< T, T >
| Function ()
| Constructors.
virtual | ~Function ()
| Destructor.
uInt | nparameters () const
| Returns the number of parameters.
virtual T | eval (FunctionArg x) const=0
| Evaluate the function object.
T & | operator[] (const uInt n)
| Manipulate the nth parameter (0-based) with no index check.
virtual T | operator() () const
| Evaluate this function object at xor at x, y.
virtual const String & | name () const
| Specify the name associated with the function (default will be unknown).
Bool & | mask (const uInt n)
| Manipulate the mask associated with the nth parameter (e.g.
const FunctionParam< T > & | parameters () const
| Return the parameter interface.
const Vector< ArgType > & | argp () const
| Get arg_p and parset_p.
Bool | parsetp () const
void | lockParam ()
| Compiler cannot always find the correct 'const' version of parameter access.
void | unlockParam ()
ostream & | print (ostream &os) const
| Print the function (i.e.
virtual Function< typename FunctionTraits< T >::DiffType > * | cloneAD () const
virtual Function< typename FunctionTraits< T >::BaseType > * | cloneNonAD () const
Public Member Functions inherited from casacore::Functional< FunctionTraits< T >::ArgType, T >
virtual | ~Functional ()
| Destructor.
virtual T | operator() (const FunctionTraits< T >::ArgType &x) const=0
| Map a Domain x into a Range y value.
Public Member Functions inherited from casacore::Functional< Vector< FunctionTraits< T >::ArgType >, T >
virtual | ~Functional ()
| Destructor.
virtual T | operator() (const Vector< FunctionTraits< T >::ArgType > &x) const=0
| Map a Domain x into a Range y value.
Public Member Functions inherited from casacore::FunctionMarshallable
| FunctionMarshallable (const String &functype)
| create a FunctionMarshallable.
| FunctionMarshallable (const FunctionMarshallable &other)
virtual | ~FunctionMarshallable ()
virtual FunctionMarshallable & | operator= (const FunctionMarshallable &other)
const String & | getFuncType () const
| return the name representing the Function type that will be placed in the functype field of Record passed to store().
void | loadFuncType (Record &gr) const
| load functype field into the given Record

## Static Public Attributes

static const String | FUNCTYPE
static const String | FUNCFIELDS []

## Additional Inherited Members

Protected Attributes inherited from casacore::Function< T, T >
FunctionParam< T > | param_p
| The parameters and masks.
Vector< ArgType > | arg_p
| Aid for non-contiguous argument storage.
Bool | parset_p
| Indicate parameter written.
Bool | locked_p
| Indicate that parameters are expected to be locked from changing.

## Detailed Description

template<class T>
class casacore::MarshButterworthBandpass< T >

A Butterworth function class that supports serialization

### Intended use:

Public interface

### Prerequisite

- Function

### Etymology

"Marsh" is short for "Marshallable" which means that the class can be serialized into a form that can be transmitted to another execution context. "ButterBandpass" refers to its parent class: SimButterworthBandpass.

### Synopsis

This class is a specialization of SimButterworthBandpass class that supports serialization. That is, it allows one to write the state of the SimButterworthBandpass function object into a Record. This record can then be transmitted to another execution context where it can be "reconstituted" as a new object with identical state as this one. This documentation focusses on this serialization functionality (also known as "marshalling"); for details about the general features of this Butterworth function, see the SimButterworthBandpass
class.

### Example

### Motivation

Making SimButterworthBandpass Marshallable provides a convenient way of configuring the simulator tool from.

### Thrown Exceptions

- Assertion in debug mode if attempt is made to address incorrect coefficients

Definition at line 84 of file MarshButterworthBandpass.h.

## Member Enumeration Documentation

## FieldNames

template<class T>

enum casacore::MarshButterworthBandpass::FieldNames

definitions of the fields stored in a serialized Record.

The actual string names are stored in FUNCFIELDS

Enumerator
BPASS | the minimum cutoff, center, and maximum cutoff values
ORDER | the orders of the transitions between pass and no-pass
PEAK | the peak value
NFieldNames | the number of supported fields

Definition at line 93 of file MarshButterworthBandpass.h.

## Constructor & Destructor Documentation

## MarshButterworthBandpass() [1/5]

template<class T>

casacore::MarshButterworthBandpass< T >::MarshButterworthBandpass | ( |  | ) |

inline

create a zero-th order (all-pass) Butterworth bandpass.

Definition at line 106 of file MarshButterworthBandpass.h.

References casacore::FunctionMarshallable::FunctionMarshallable(), FUNCTYPE, and casacore::SimButterworthBandpass< T >::SimButterworthBandpass().

Referenced by clone(), MarshButterworthBandpass(), operator=(), and operator=().

## MarshButterworthBandpass() [2/5]

template<class T>

casacore::MarshButterworthBandpass< T >::MarshButterworthBandpass | ( | uInt | minord,
|  | uInt | maxord,
|  | T | mincut = T(-1),
|  | T | maxcut = T(1),
|  | T | center = T(0),
|  | T | peak = T(1) )

inline

create a Butterworth bandpass function.

Definition at line 110 of file MarshButterworthBandpass.h.

References casacore::FunctionMarshallable::FunctionMarshallable(), FUNCTYPE, and casacore::SimButterworthBandpass< T >::SimButterworthBandpass().

## MarshButterworthBandpass() [3/5]

template<class T>

casacore::MarshButterworthBandpass< T >::MarshButterworthBandpass | ( | const Record & | gr | ) |
throw | ( | InvalidSerializationError ) |  |  |

explicit

create a fully specified Butterworth polynomial from parameters stored in a Record.

References casacore::Record().

## MarshButterworthBandpass() [4/5]

template<class T>

casacore::MarshButterworthBandpass< T >::MarshButterworthBandpass | ( | const SimButterworthBandpass< T > & | other | ) |

inline

create a deep copy of another Butterworth polynomial

Definition at line 125 of file MarshButterworthBandpass.h.

References casacore::FunctionMarshallable::FunctionMarshallable(), FUNCTYPE, and casacore::SimButterworthBandpass< T >::SimButterworthBandpass().

## MarshButterworthBandpass() [5/5]

template<class T>

casacore::MarshButterworthBandpass< T >::MarshButterworthBandpass | ( | const MarshButterworthBandpass< T > & | other | ) |

inline

Definition at line 127 of file MarshButterworthBandpass.h.

References casacore::FunctionMarshallable::FunctionMarshallable(), MarshButterworthBandpass(), and casacore::SimButterworthBandpass< T >::SimButterworthBandpass().

## ~MarshButterworthBandpass()

template<class T>

virtual casacore::MarshButterworthBandpass< T >::~MarshButterworthBandpass | ( |  | ) |

inline virtual

Destructor.

Definition at line 149 of file MarshButterworthBandpass.h.

## Member Function Documentation

## clone()

template<class T>

virtual Function< T > * casacore::MarshButterworthBandpass< T >::clone | ( |  | ) | const

inline virtual

Create a copy of this object.

The caller is responsible for deleting the pointer.

Reimplemented from casacore::SimButterworthBandpass< T >.

Definition at line 156 of file MarshButterworthBandpass.h.

References MarshButterworthBandpass().

## operator=() [1/2]

template<class T>

MarshButterworthBandpass< T > & casacore::MarshButterworthBandpass< T >::operator= | ( | const MarshButterworthBandpass< T > & | other | ) |

inline

make a (deep) copy of another Butterworth polynomial

Definition at line 133 of file MarshButterworthBandpass.h.

References MarshButterworthBandpass(), casacore::FunctionMarshallable::operator=(), and casacore::SimButterworthBandpass< T >::operator=().

## operator=() [2/2]

template<class T>

MarshButterworthBandpass< T > & casacore::MarshButterworthBandpass< T >::operator= | ( | const SimButterworthBandpass< T > & | other | ) |

inline

Definition at line 140 of file MarshButterworthBandpass.h.

References MarshButterworthBandpass(), casacore::SimButterworthBandpass< T >::operator=(), and casacore::SimButterworthBandpass< T >::SimButterworthBandpass().

## store()

template<class T>

virtual void casacore::MarshButterworthBandpass< T >::store | ( | Record & | gr | ) | const

virtual

store the state of this Function into a Record

Implements casacore::FunctionMarshallable.

References casacore::Record().

## Member Data Documentation

## FUNCFIELDS

template<class T>

const String casacore::MarshButterworthBandpass< T >::FUNCFIELDS[]

static

Definition at line 89 of file MarshButterworthBandpass.h.

## FUNCTYPE

template<class T>

const String casacore::MarshButterworthBandpass< T >::FUNCTYPE

static

Definition at line 88 of file MarshButterworthBandpass.h.

Referenced by MarshButterworthBandpass(), MarshButterworthBandpass(), and MarshButterworthBandpass().

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

- scimath/Functionals/MarshButterworthBandpass.h