source: trunk/external-alma/oldasdm2ASAP/OldASDMFiller.h@ 3137

Last change on this file since 3137 was 3106, checked in by Takeshi Nakazato, 8 years ago

New Development: No

JIRA Issue: No

Ready for Test: Yes/No

Interface Changes: Yes/No

What Interface Changed: Please list interface changes

Test Programs: List test programs

Put in Release Notes: Yes/No

Module(s): Module Names change impacts.

Description: Describe your changes here...


Check-in asap modifications from Jim regarding casacore namespace conversion.

File size: 3.3 KB
RevLine 
[2273]1#ifndef ASAP_OLD_ASDM_FILLER_H
2#define ASAP_OLD_ASDM_FILLER_H
3
4#include <string>
5
6#include <casa/Logging/LogSinkInterface.h>
7
8#include <FillerBase.h>
9#include "OldASDMReader.h"
10
11class OldASDMFiller : public asap::FillerBase
12{
13public:
14 // constructor and destructor
[3106]15 OldASDMFiller( casacore::CountedPtr<asap::Scantable> stable ) ;
[2273]16 ~OldASDMFiller() ;
17
18 // open data
[3106]19 bool open( const std::string &filename, const casacore::Record &rec ) ;
[2273]20
21 // fill data
22 void fill() ;
23
24 // close data
25 void close() ;
26
27 // get reader object
[3106]28 casacore::CountedPtr<OldASDMReader> getReader() { return reader_ ; } ;
[2273]29
30 // set logger
[3106]31 void setLogger( casacore::CountedPtr<casacore::LogSinkInterface> &logsink ) ;
[2273]32
33private:
34 // fill header
35 void fillHeader() ;
36
37 // get IF key
[3106]38 casacore::String getIFKey( casacore::uInt ifno ) ;
[2273]39
40 // get FREQUENCIES attributes from ifrec_
[3106]41 void getFrequencyRec( casacore::String key,
[2273]42 double &refpix,
43 double &refval,
44 double &incr ) ;
45
46 // set FREQUENCIES attributes to ifrec_
[3106]47 void setFrequencyRec( casacore::String key,
[2273]48 double refpix,
49 double refval,
50 double incr ) ;
51
52 // reshape float array spectra to Matrix<Float>
[3106]53 casacore::Matrix<casacore::Float> toMatrix( float *sp,
[2273]54 unsigned int npol,
55 unsigned int nchan ) ;
56
57 // reshape 2d vector Tsys to Matrix<Float>
[3106]58 casacore::Matrix<casacore::Float> toMatrix( std::vector< std::vector<float> > &tsys,
[2273]59 unsigned int npol,
60 unsigned int nchan ) ;
61
62 // reshape vector<float> to Vector<Float> with appropriate length
[3106]63 casacore::Vector<casacore::Float> toVector( std::vector<float> &tau,
[2273]64 unsigned int npol ) ;
65
66 // create TCAL time string from MJD
[3106]67 casacore::String toTcalTime( casacore::Double mjd ) ;
[2273]68
69 // AZEL to J2000
[3106]70 void toJ2000( casacore::Vector<casacore::Double> &dir,
[2273]71 double az,
72 double el,
[3106]73 casacore::Double mjd,
74 casacore::Vector<casacore::Double> antpos ) ;
[2273]75
76 // to J2000
[3106]77 casacore::Vector<casacore::Double> toJ2000( casacore::Vector<casacore::Double> dir,
78 casacore::String dirref,
79 casacore::Double mjd,
80 casacore::Vector<casacore::Double> antpos ) ;
[2273]81
82 // get frequency frame enum value from string
[3106]83 casacore::MFrequency::Types toFrameType( std::string &s ) ;
[2273]84
85 // to LSRK
86 // utc must be UTC time in "d" (day)
87 // antpos must be ITRF value in "m"
[3106]88 casacore::Double toLSRK( casacore::Double freq,
89 casacore::String freqref,
90 casacore::Double utc,
91 casacore::Vector<casacore::Double> antpos,
92 casacore::Vector<casacore::Double> dir,
93 casacore::String dirref ) ;
[2273]94
[3106]95 casacore::CountedPtr<OldASDMReader> reader_ ;
96 casacore::Int antennaId_ ;
97 casacore::String antennaName_ ;
[2273]98
[3106]99 casacore::Record ifrec_ ;
[2273]100
[3106]101 casacore::CountedPtr<casacore::LogSinkInterface> logsink_ ;
[2273]102
[3106]103 casacore::String className_ ;
[2273]104
105} ;
106#endif // ASAP_OLD_ASDM_FILLER_H
Note: See TracBrowser for help on using the repository browser.