Main Page | Class List | Directories | File List | Class Members | File Members

ObitTimeFilter.h File Reference

ObitTimeFilter time filter class definition. More...

#include "ObitThread.h"
#include "ObitFArray.h"
#include "ObitCArray.h"
#include "ObitFFT.h"
#include "ObitFInterpolate.h"

Go to the source code of this file.

Classes

struct  ObitTimeFilter
 ObitTimeFilter Class structure. More...
struct  ObitTimeFilterClassInfo
 ClassInfo Structure. More...

Defines

#define ObitTimeFilterUnref(in)   ObitUnref (in)
 Macro to unreference (and possibly destroy) an ObitTimeFilter returns a ObitTimeFilter*.
#define ObitTimeFilterRef(in)   ObitRef (in)
 Macro to reference (update reference count) an ObitTimeFilter.
#define ObitTimeFilterIsA(in)   ObitIsA (in, ObitTimeFilterGetClass())
 Macro to determine if an object is the member of this or a derived class.

Typedefs

typedef ObitTimeFilter *(* newObitTimeFilterFP )(gchar *name, gint nTime, gint nFilter)
 Typedef for definition of class pointer structure.
typedef void(* ObitTimeFilter2FreqFP )(ObitTimeFilter *in)
typedef void(* ObitTimeFilter2TimeFP )(ObitTimeFilter *in)
typedef void(* ObitTimeFilterFilterFP )(ObitTimeFilter *in, gint seriesNo, ObitTimeFilterType type, gfloat *parms, ObitErr *err)

Enumerations

enum  obitTimeFilterType { OBIT_TimeFilter_LowPass, OBIT_TimeFilter_HighPass }
 enum for type of ObitTimeFilter filter type. More...

Functions

void ObitTimeFilterClassInit (void)
 Public: Class initializer.
ObitTimeFilternewObitTimeFilter (gchar *name, gint nTime, gint nSeries)
 Public: Constructor.
gconstpointer ObitTimeFilterGetClass (void)
 Public: ClassInfo pointer.
void ObitTimeFilterResize (ObitTimeFilter *in, gint nTime)
 Public: Resize arrays.
void ObitTimeFilter2Freq (ObitTimeFilter *in)
 Public: Compute frequency series.
void ObitTimeFilter2Time (ObitTimeFilter *in)
 Public: Compute Time series.
void ObitTimeFilterFilter (ObitTimeFilter *in, gint seriesNo, ObitTimeFilterType type, gfloat *parms, ObitErr *err)
 Public: Apply Filter to Frequency series.


Detailed Description

ObitTimeFilter time filter class definition.

This class is derived from the Obit class.

This class is for performing TimeFilter on memory resident data. This implem,entation uses the TimeFilterW package.

Creators and Destructors

An ObitTimeFilter can be created using newObitTimeFilter which allows specifying a name for the object, and the type, size and direction of the transform.

A copy of a pointer to an ObitTimeFilter should always be made using the ObitTimeFilterRef function which updates the reference count in the object. Then whenever freeing an ObitTimeFilter or changing a pointer, the function ObitTimeFilterUnref will decrement the reference count and destroy the object when the reference count hits 0. There is no explicit destructor.

Creators and Destructors

An ObitTimeFilter provides storage for one or more time series of floats in both the time and frequency (half complex) domains. The class also contains tools for transforming from one domain to the other and for applying a filter in the frequency domain. Typcal usage sequence is:

Define Documentation

#define ObitTimeFilterIsA in   )     ObitIsA (in, ObitTimeFilterGetClass())
 

Macro to determine if an object is the member of this or a derived class.

Returns TRUE if a member, else FALSE in = object to reference

#define ObitTimeFilterRef in   )     ObitRef (in)
 

Macro to reference (update reference count) an ObitTimeFilter.

returns a ObitTimeFilter*. in = object to reference

#define ObitTimeFilterUnref in   )     ObitUnref (in)
 

Macro to unreference (and possibly destroy) an ObitTimeFilter returns a ObitTimeFilter*.

in = object to unreference


Typedef Documentation

typedef ObitTimeFilter*(* newObitTimeFilterFP)(gchar *name, gint nTime, gint nFilter)
 

Typedef for definition of class pointer structure.

typedef void(* ObitTimeFilter2FreqFP)(ObitTimeFilter *in)
 

typedef void(* ObitTimeFilter2TimeFP)(ObitTimeFilter *in)
 

typedef void(* ObitTimeFilterFilterFP)(ObitTimeFilter *in, gint seriesNo, ObitTimeFilterType type, gfloat *parms, ObitErr *err)
 


Enumeration Type Documentation

enum obitTimeFilterType
 

enum for type of ObitTimeFilter filter type.

This specifies the type of filtering to be performed.

Enumeration values:
OBIT_TimeFilter_LowPass  Low pass filter.
OBIT_TimeFilter_HighPass  High pass filter.


Function Documentation

ObitTimeFilter* newObitTimeFilter gchar *  name,
gint  nTime,
gint  nSeries
 

Public: Constructor.

Initializes class if needed on first call.

Parameters:
name An optional name for the object.
nTime Number of times in arrays to be filtered It is best to add some extra padding (10%) to allow a smooth transition from the end of the sequence back to the beginning. Remember the FFT algorithm assumes the function is periodic.
nSeries Number of time sequences to be filtered
Returns:
the new object.

void ObitTimeFilter2Freq ObitTimeFilter in  ) 
 

Public: Compute frequency series.

A linear interpolation between the last valid point and the first valid point is made to reduce the wraparound edge effects.

Parameters:
in Object with TimeFilter structures.

void ObitTimeFilter2Time ObitTimeFilter in  ) 
 

Public: Compute Time series.

Parameters:
in Object with TimeFilter structures.

void ObitTimeFilterClassInit void   ) 
 

Public: Class initializer.

void ObitTimeFilterFilter ObitTimeFilter in,
gint  seriesNo,
ObitTimeFilterType  type,
gfloat *  parms,
ObitErr err
 

Public: Apply Filter to Frequency series.

Following Filters are supported:

  • OBIT_TimeFilter_LowPass - Zeroes frequencies above a fraction, parms[0], of the highest.
  • OBIT_TimeFilter_HighPass - Zeroes frequencies below a fraction, parms[0], of the highest.
Parameters:
in Object with TimeFilter structures.
seriesNo Which time/frequency series to apply to (0-rel), <0 => all
type Filter type to apply
*parm Parameters for filter, meaning depends on type.
err Error stack

gconstpointer ObitTimeFilterGetClass void   ) 
 

Public: ClassInfo pointer.

Returns:
pointer to the class structure.

void ObitTimeFilterResize ObitTimeFilter in,
gint  nTime
 

Public: Resize arrays.

Parameters:
in ObitTimeFilter to resize.
nTime Number of times in arrays to be filtered It is best to add some extra padding (10%) to allow a smooth transition from the end of the sequence back to the beginning. Remember the FFT algorithm assumes the function is periodic.


Generated on Fri Aug 31 22:13:09 2007 for Obit by  doxygen 1.3.9.1