In file MultiPipe/MultiPipe.hh:

class MultiPipe : public Pipe

Compoud filter class

Inheritance:


Public Fields

typedef std::vector <Pipe*> PipeConfig
Pipe array type

Public Methods

MultiPipe (void)
Default constructor
MultiPipe (const MultiPipe& p)
Copy constructor
~MultiPipe (void)
Destructor
MultiPipe* clone (void) const
Clone a MultiPipe.
void clear (void)
Clear all filters in the MultiPipe.
MultiPipe& operator= (const MultiPipe& p)
Assignment operator
Pipe* addPipe (const Pipe& p)
Add a filter.
Pipe* addPipe (Pipe* p)
Add a filter.
const PipeConfig& pipe () const
Return filter array.
TSeries apply (const TSeries& ts)
Filter a time series.
void dataCheck (const TSeries& ts) const
Check data is valid for filtering.
bool inUse (void) const
Test whether filter is in use.
Time getStartTime (void) const
Get start time of epoch.
Time getCurrentTime (void) const
Get current time.
double getGain (void) const
Get gain.
Interval getTimeDelay (void) const
Get time delay.
void reset ()
Reset
void setGain (double gain)
Set gain.
size_type size (void) const
Reset

Protected Methods

bool xfer (fComplex& coeff, double f) const throw()
Get a transfer coefficent of a Filter.

Inherited from Pipe:

Public Methods

virtual TSeries operator)(const TSeries& in)
FilterIO& operator)(const FilterIO& in)
virtual bool isDataValid(const TSeries& in) const
KeyChain& getInputKeys(void) const
KeyChain& getOutputKeys(void) const
virtual bool Xfer(fComplex& coeff, double f) const
virtual bool Xfer(fComplex* tf, const float* freqs, int points) const
virtual bool Xfer(FSeries& Fs, float Fmin = 0.0, float Fmax = 1000.0, float dF = 1.0) const

Inherited from FilterBase:

Public Methods

virtual bool rootGetStartTime(Time& t) const throw()
virtual bool rootGetCurrentTime(Time& t) const throw()

Documentation

MultiPipe is an arbitrary compound filter composed of one or more Pipe segments.
typedef std::vector <Pipe*> PipeConfig
Pipe array type

MultiPipe(void)
Construct an empty MultiPipe.

MultiPipe(const MultiPipe& p)
Construct a MultiPipe identical to an existing argument.

~MultiPipe(void)
Destroy a MultiPipe.

MultiPipe* clone(void) const
Create a copy of the MultiPipe.

void clear(void)
Remove all filters from the pipe vector and reset the gain to 1.

MultiPipe& operator= (const MultiPipe& p)
Assignment operator

Pipe* addPipe(const Pipe& p)
Add a filter to the MultiPipe.

Pipe* addPipe(Pipe* p)
Add a filter to the MultiPipe.

const PipeConfig& pipe() const
Return the filter array.

TSeries apply(const TSeries& ts)
Apply the compound filter to a time series. Each filter is applied to the time series in the order that it was added to the MultiPipe.
Returns:
Filtered time series.
Parameters:
ts - Input time series.

void dataCheck(const TSeries& ts) const
Check that the specified time series is valid input for the compound filter. An exception is thrown if the MultiPipe can not be applied to the specified data.
Parameters:
ts - Time series to be checked for validity.

bool inUse(void) const
Test whether the compound filter is in use. The compound filter is considered to be in use if any of the component filters is in use.
Returns:
True if compound filter is in use.

Time getStartTime(void) const
Get start time of the data segment currently in progress.
Returns:
Start time.

Time getCurrentTime(void) const
Get the Time of the next expected sample to be processed.
Returns:
Current time.

double getGain(void) const
Get the additional gain.
Returns:
gain.

Interval getTimeDelay(void) const
Get the delay time of the combined filters.
Returns:
Interval delay.

void reset()
Reset all filters.

void setGain(double gain)
Set the additional gain.
Returns:
void
Parameters:
Gain. -

size_type size(void) const
Reset all filters.

bool xfer(fComplex& coeff, double f) const throw()
The transfer coefficient of the filter at the specified frequency is calculated and returned as a complex number.
Returns:
true if successful
Parameters:
coeff - a complex number representing the Filter response at the specified frequency (return)
f - Frequency at which to sample the transfer function.


This class has no child classes.
Author:
John G. Zweizig
Version:
1.2; Last modified June 24, 2007

alphabetic index hierarchy of classes


Please send questions and comments to zweizig_j@ligo.caltech.edu


generated by doc++