Instrumental passband (or bandpass) More...

#include <Passband.h>

Inheritance diagram for Passband:
Pulsar::Archive::Extension Reference::Able Reference::HeapTracked

Public Member Functions

 Passband ()
 Default constructor.
 Passband (const Passband &extension)
 Copy constructor.
const Passbandoperator= (const Passband &extension)
 Operator =.
 ~Passband ()
 Destructor.
Passbandclone () const
 Clone method.
TextInterface::Parserget_interface ()
 Return a text interfaces that can be used to access this instance.
std::string get_short_name () const
 Return an abbreviated name that can be typed relatively quickly.
unsigned get_nchan () const
 Get the number of frequency channels in each passband.
unsigned get_npol () const
 Get the number of polarizations.
unsigned get_nband () const
 Get the number of bands.
bool has_data () const
 Return true if nchan * npol * nband != 0.
void resize (unsigned nchan, unsigned npol, unsigned nband=1)
 Set the number of channels, polarizations, and bands.
const std::vector< float > & get_passband (unsigned ipol, unsigned iband=0) const
 Get the specified passband.
void set_passband (const std::vector< float > &, unsigned ipol, unsigned iband=0)
 Set the specified passband.
void set_passband (const float *data, unsigned ipol, unsigned iband=0)
 Set the specified passband.
void zero ()
 Set all passband datum (not dimensions) to zero.
Public Member Functions inherited from Pulsar::Archive::Extension
 Extension (const char *name)
 Construct with a name.
virtual ~Extension ()
 Destructor.
std::string get_extension_name () const
 Return the name of the Extension.
virtual void resize (unsigned nsubint, unsigned npol=0, unsigned nchan=0, unsigned nbin=0)
 Resize the Extension.
virtual void frequency_append (Archive *to, const Archive *from)
 Append data along frequency dimension, if applicable.
Public Member Functions inherited from Reference::Able
 Able (const Able &)
Ableoperator= (const Able &)
unsigned get_reference_count () const
Public Member Functions inherited from Reference::HeapTracked
 HeapTracked (const HeapTracked &)
HeapTrackedoperator= (const HeapTracked &)
bool __is_on_heap () const

Protected Member Functions

void range_check (unsigned ipol, unsigned iband, const char *method) const
 Throw an exception if ipol or iband are out of range.
Protected Member Functions inherited from Reference::Able
Handle__reference (bool active) const
void __dereference (bool auto_delete=true) const

Protected Attributes

unsigned nchan
 Number of frequency channels.
unsigned npol
 Number of polarizations.
unsigned nband
 Number of frequency bands.
std::vector< std::vector< float > > passband
 Average passbands.
Protected Attributes inherited from Pulsar::Archive::Extension
std::string extension_name
 Extension name - useful when debugging.

Additional Inherited Members

Static Public Member Functions inherited from Pulsar::Archive::Extension
static Extensionfactory (const std::string &name)
 Derived type factory.
Static Public Member Functions inherited from Reference::Able
static size_t get_instance_count ()
Static Public Member Functions inherited from Reference::HeapTracked
static void * operator new (size_t size, void *ptr=0)
static void operator delete (void *location, void *ptr)
static void operator delete (void *location)
static size_t get_heap_queue_size ()

Detailed Description

Instrumental passband (or bandpass)

This Extension stores the instrumental bandpass in a Pulsar::Archive.

Member Function Documentation

◆ clone()

Passband * Pulsar::Passband::clone ( ) const
inlinevirtual

Clone method.

Implements Pulsar::Archive::Extension.

◆ get_interface()

TextInterface::Parser * Pulsar::Passband::get_interface ( void )
virtual

Return a text interfaces that can be used to access this instance.

Reimplemented from Pulsar::Archive::Extension.

◆ get_short_name()

std::string Pulsar::Passband::get_short_name ( ) const
inlinevirtual

Return an abbreviated name that can be typed relatively quickly.

Reimplemented from Pulsar::Archive::Extension.

◆ has_data()

bool Pulsar::Passband::has_data ( ) const
virtual

Return true if nchan * npol * nband != 0.

Reimplemented from Pulsar::Archive::Extension.

Member Data Documentation

◆ nband

unsigned Pulsar::Passband::nband
protected

Number of frequency bands.

The number of frequency bands may be other than one when an Archive contains data from multiple bands.

◆ npol

unsigned Pulsar::Passband::npol
protected

Number of polarizations.

A full polarimetric representation of the bandpass may be stored.

◆ passband

std::vector< std::vector<float> > Pulsar::Passband::passband
protected

Average passbands.

The passbands are organized in ipol major order, I think. band0,pol0 band0,pol2 ... bandN,polM band1,pol0 ...


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

Generated using doxygen 1.14.0