
// This file is auto-generated by setup.py.  Do not edit.
#define GALSIM_MAJOR 2
#define GALSIM_MINOR 8
#define GALSIM_REVISION 2

#include <string>
#include <sstream>

#if defined(__GNUC__)
#define PUBLIC_API __attribute__ ((visibility ("default")))
#else
#define PUBLIC_API
#endif

namespace galsim {
    // Compiled versions of the above #define values.
    PUBLIC_API int major_version();
    PUBLIC_API int minor_version();
    PUBLIC_API int revision();

    // Returns string of the form "1.4.2"
    PUBLIC_API std::string version();

    // Checks if the compiled library version matches the #define values in this header file.
    inline bool check_version() {
        // Same code as version(), but inline, so we get the above values to compare
        // to the values compiled into the library.
        std::ostringstream oss;
        oss << GALSIM_MAJOR << '.' << GALSIM_MINOR << '.' << GALSIM_REVISION;
        return oss.str() == version();
    }
}
