Instrumental passband (or bandpass) More...

#include <Passband.h>

Inheritance diagram for Pulsar::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. More...
 
unsigned nband
 Number of frequency bands. More...
 
std::vector< std::vector< float > > passband
 Average passbands. More...
 
- 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 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.

Referenced by operator=(), and Passband().

◆ npol

unsigned Pulsar::Passband::npol
protected

Number of polarizations.

A full polarimetric representation of the bandpass may be stored.

Referenced by operator=(), and Passband().

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

Referenced by operator=().


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

Generated using doxygen 1.8.17