pdv_KtZ_Archive.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2018 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/Base/Formats/pdv_KtZ_/Pulsar/pdv_KtZ_Archive.h
10
11#ifndef __pdv_KtZ_Archive_h
12#define __pdv_KtZ_Archive_h
13
14#include "Pulsar/BasicArchive.h"
15#include "Pulsar/Agent.h"
16
17namespace Pulsar {
18
21
22 public:
23
26
28 pdv_KtZ_Archive (const pdv_KtZ_Archive& archive);
29
32
35
37 pdv_KtZ_Archive (const Archive& archive);
38
40 void copy (const Archive& archive);
41
43 pdv_KtZ_Archive* clone () const;
44
46 virtual void load_header (const char* filename);
47
48 protected:
49
51 virtual Integration*
52 load_Integration (const char* filename, unsigned subint);
53
55 bool can_unload () const { return false; }
56
58 void unload_file (const char* filename) const;
59
60 friend class Archive::Advocate<pdv_KtZ_Archive>;
61
63 class Agent : public Archive::Advocate<pdv_KtZ_Archive> {
64
65 public:
66
67 Agent () { }
68
70 bool advocate (const char* filename);
71
73 std::string get_name () { return "pdv_KtZ"; }
74
76 std::string get_description ();
77
78 };
79
82
85
87 double period;
88
89 private:
90
92 void init ();
93
94 };
95
96
97}
98
99#endif
The primary interface to pulsar observational data.
Definition Archive.h:46
BasicArchive()
null constructor
Definition BasicArchive.C:18
Array of Profiles integrated over the same time interval.
Definition Integration.h:37
std::string get_description()
Return description of this plugin.
Definition pdv_KtZ_Archive.C:377
bool advocate(const char *filename)
Advocate the use of TimerArchive to interpret filename.
Definition pdv_KtZ_Archive.C:383
std::string get_name()
Return the name of the TimerArchive plugin.
Definition pdv_KtZ_Archive.h:73
Loads data from the ASCII output by pdv -KtZ
Definition pdv_KtZ_Archive.h:20
virtual Integration * load_Integration(const char *filename, unsigned subint)
Load the specified Integration from filename, returning new instance.
Definition pdv_KtZ_Archive.C:365
bool can_unload() const
The unload_file method is implemented.
Definition pdv_KtZ_Archive.h:55
~pdv_KtZ_Archive()
Destructor.
Definition pdv_KtZ_Archive.C:34
void copy(const Archive &archive)
Copy all of the class attributes and the selected Integration data.
Definition pdv_KtZ_Archive.C:57
MJD epoch
The epoch of the observation.
Definition pdv_KtZ_Archive.h:84
pdv_KtZ_Archive * clone() const
Return a new copy-constructed pdv_KtZ_Archive instance.
Definition pdv_KtZ_Archive.C:80
double integration_length
The integration length.
Definition pdv_KtZ_Archive.h:81
virtual void load_header(const char *filename)
Load the pdv_KtZ_ header information from filename.
Definition pdv_KtZ_Archive.C:154
const pdv_KtZ_Archive & operator=(const pdv_KtZ_Archive &archive)
Assignment operator.
double period
The folding period.
Definition pdv_KtZ_Archive.h:87
void unload_file(const char *filename) const
Unload the pdv_KtZ_Archive (header and Integration data) to filename.
Definition pdv_KtZ_Archive.C:371
pdv_KtZ_Archive()
Default constructor.
Definition pdv_KtZ_Archive.C:29
Defines the PSRCHIVE library.
Definition CalSource.h:17

Generated using doxygen 1.14.0