Processor.h
1 //-*-C++-*-
2 
3 /***************************************************************************
4  *
5  * Copyright (C) 2005 by Willem van Straten
6  * Licensed under the Academic Free License version 2.1
7  *
8  ***************************************************************************/
9 
10 // psrchive/More/General/Pulsar/Processor.h
11 
12 #ifndef __Pulsar_Processor_h
13 #define __Pulsar_Processor_h
14 
15 #include "Reference.h"
16 
17 namespace Pulsar {
18 
19  class Archive;
20 
22  class Processor : public Reference::Able
23  {
24  public:
25 
27  virtual void process (Archive*) = 0;
28 
30 
33  virtual Archive* result () { return 0; }
34  };
35 
36 }
37 
38 #endif
virtual long double frequency(const MJD &t) const=0
virtual void set_time_span(const MJD &start, const MJD &finish)=0
virtual void set_observing_frequency(long double MHz)=0
virtual std::string get_value(const std::string &keyword) const
The primary interface to pulsar observational data.
Definition: Archive.h:45
static Generator * factory(const Parameters *)
virtual void unload(FILE *) const=0
virtual void set_site(const std::string &)=0
virtual Archive * result()
If process if out of place, return pointer to new result.
Definition: Processor.h:38
virtual void set_parameters(const Parameters *)=0
virtual void process(Archive *)=0
Process the archive (either in place or out of place)
virtual void set_frequency_span(long double low, long double high)=0
Defines the PSRCHIVE library.
Definition: CalSource.h:17
virtual Predictor * generate() const=0
virtual Phase phase(const MJD &t) const=0

Generated using doxygen 1.8.17