// // C++ Interface: STGrid // // Description: // // // Author: Takeshi Nakazato , (C) 2011 // // Copyright: See COPYING file that comes with this distribution // // #ifndef ASAPSTGRID_H #define ASAPSTGRID_H #include #include #include #include #include // #include // #include // #include // #include // #include // #include // #include #include // #include // #include // #include // #include "Scantable.h" using namespace std ; using namespace casa ; namespace asap { class STGrid { public: STGrid() ; STGrid( const string infile ) ; virtual ~STGrid() {} ; void setFileIn( const string infile ) ; // void setFileOut( const string outfile ) ; void defineImage( int nx=-1, int ny=-1, string scellx="", string scelly="", string scenter="" ) ; void setOption( string convtype="box", int convsupport=-1 ) ; void grid() ; string saveData( string outfile="" ) ; private: void init() ; void setupGrid( Int &nx, Int &ny, String &cellx, String &celly, Double &xmin, Double &xmax, Double &ymin, Double &ymax, String ¢er ) ; void getData( String &infile, Matrix &spectra, Matrix &direction, Matrix &flagtra, Vector &rflag ) ; void toInt( Matrix &u, Matrix &v ) ; void toInt( Vector &u, Vector &v ) ; void toPixel( Matrix &world, Matrix &pixel ) ; void boxFunc( Vector &convFunc, Int &convSize ) ; void spheroidalFunc( Vector &convFunc ) ; void gaussFunc( Vector &convFunc ) ; void pbFunc( Vector &convFunc ) ; void setConvFunc( Vector &convFunc ) ; String infile_ ; Int nx_ ; Int ny_ ; Double cellx_ ; Double celly_ ; Vector center_ ; String convType_ ; Int convSupport_ ; Int userSupport_ ; Int convSampling_ ; Array data_ ; Table tab_ ; }; } #endif