casacore
Public Types | Public Member Functions | Static Public Attributes | List of all members
casacore::MarshButterworthBandpass< T > Class Template Reference

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

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. More...
 
Vector< ArgType > arg_p
 Aid for non-contiguous argument storage. More...
 
Bool parset_p
 Indicate parameter written. More...
 
Bool locked_p
 Indicate that parameters are expected to be locked from changing. More...
 

Detailed Description

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

A Butterworth function class that supports serialization

Intended use:

Public interface

Prerequisite

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

Definition at line 87 of file MarshButterworthBandpass.h.

Member Enumeration Documentation

◆ 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 96 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 109 of file MarshButterworthBandpass.h.

◆ 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 113 of file MarshButterworthBandpass.h.

◆ 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.


◆ 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 128 of file MarshButterworthBandpass.h.

◆ MarshButterworthBandpass() [5/5]

template<class T >
casacore::MarshButterworthBandpass< T >::MarshButterworthBandpass ( const MarshButterworthBandpass< T > &  other)
inline

Definition at line 130 of file MarshButterworthBandpass.h.

◆ ~MarshButterworthBandpass()

template<class T >
virtual casacore::MarshButterworthBandpass< T >::~MarshButterworthBandpass ( )
inlinevirtual

Destructor.

Definition at line 152 of file MarshButterworthBandpass.h.

Member Function Documentation

◆ clone()

template<class T >
virtual Function<T>* casacore::MarshButterworthBandpass< T >::clone ( ) const
inlinevirtual

Create a copy of this object.

The caller is responsible for deleting the pointer.

Reimplemented from casacore::SimButterworthBandpass< T >.

Definition at line 159 of file MarshButterworthBandpass.h.

◆ 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 136 of file MarshButterworthBandpass.h.

References 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

◆ 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.

Member Data Documentation

◆ FUNCFIELDS

template<class T >
const String casacore::MarshButterworthBandpass< T >::FUNCFIELDS[]
static

Definition at line 92 of file MarshButterworthBandpass.h.

◆ FUNCTYPE

template<class T >
const String casacore::MarshButterworthBandpass< T >::FUNCTYPE
static

Definition at line 91 of file MarshButterworthBandpass.h.


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