#ifndef MANTICORE_H #define MANTICORE_H #include #include #include namespace manticore { /// Output FITS maps data type (cf. mapDataCode). using mapDataType = std::valarray; /// Output FITS maps data code (cf. mapDataType). constexpr int mapDataCode = FLOAT_IMG; /// Basic table data. using tableType = std::vector>; /// Speed of light (cm/s). constexpr double c_light = 2.99792458e10; /// Planck's constant (erg*s). constexpr double h_Planck = 6.626070040e-27; /// Planck's constant (erg/K). constexpr double k_Boltzman = 1.38064852e-16; /// Mass of hygdrogen atom (g). constexpr double m_H = 1.6737237e-24; extern mapDataType getError(const mapDataType &data, CCfits::PHDU &hdu, const mutils::CommandLine &cli); extern gsl_spline *initSpline(const tableType &table, bool ln = false); extern void process(const mutils::CommandLine &cli); extern void setKeys(CCfits::ExtHDU &hdu, const CCfits::PHDU &hdu0); extern void solve(std::vector &outMap, std::vector &outHDU, CCfits::FITS *outFITS, const std::vector &bandData, const std::vector &bandError, const std::vector &bandHDU, const mutils::CommandLine &cli); } // namespace manticore #endif // MANTICORE_H