17#ifndef __Timer_Integration_h
18#define __Timer_Integration_h
23#include "Pulsar/Integration.h"
32 friend class TimerArchive;
38 TimerIntegration (
const TimerIntegration& t_subint);
44 virtual ~TimerIntegration ();
47 virtual void copy (
const Integration* subint,
bool management =
true);
54 virtual unsigned get_nchan ()
const {
return nchan; }
58 virtual unsigned get_npol ()
const {
return npol; }
62 virtual unsigned get_nbin ()
const {
return nbin; }
67 virtual void set_epoch (
const MJD& mjd);
72 virtual void set_duration (
double seconds);
77 virtual void set_folding_period (
double seconds);
80 void load (FILE * fptr,
int wts_and_bpass,
bool big_endian=
true);
83 void unload (FILE * fptr)
const;
86 virtual void resize (
unsigned npol,
unsigned nchan,
unsigned nbin);
105 std::vector<float> wts;
108 std::vector< std::vector<float> > med;
111 std::vector< std::vector<float> > bpass;
115 virtual void set_nbin (
unsigned numbins) { nbin = numbins; }
119 virtual void set_nchan (
unsigned numchan) { nchan = numchan; }
123 virtual void set_npol (
unsigned numpol) { npol = numpol; }
129 void load_extra (FILE* fptr,
bool big_endian);
132 void load_old (FILE* fptr,
bool big_endian);
135 void unpack_Pointing ();
138 void pack_Pointing ()
const;
Array of Profiles integrated over the same time interval.
Definition Integration.h:37
virtual unsigned get_nbin() const =0
Get the number of bins in each profile.
virtual MJD get_epoch() const =0
Get the epoch of the rising edge of bin zero.
virtual unsigned get_nchan() const =0
Get the number of chans.
virtual double get_folding_period() const =0
Get the folding or topocentric pulsar period (in seconds)
virtual double get_duration() const =0
Get the total time integrated (in seconds)
virtual unsigned get_npol() const =0
Get the number of polarization measurements.
virtual Integration * clone() const =0
Return a new copy of self.
Integration()
Default constructor.
Definition Integration.C:158
Any quantity recorded as a function of pulse phase.
Definition Profile.h:40
Defines the PSRCHIVE library.
Definition CalSource.h:17
void TimerProfile_unload(FILE *fptr, const Profile *profile, int poln)
unload a Profile to a timer archive
Definition TimerProfile_unload.C:26
void TimerProfile_load(FILE *fptr, Profile *profile, bool big_endian=true)
load a Profile from a timer archive
Definition TimerProfile_load.C:22