SAGA Adaptor CPI v.1.0
|
00001 // Copyright (c) 2005-2009 Hartmut Kaiser 00002 // 00003 // Distributed under the Boost Software License, Version 1.0. (See accompanying 00004 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 00005 00006 #if !defined(SAGA_PACKAGE_SD_VERSION_HPP) 00007 #define SAGA_PACKAGE_SD_VERSION_HPP 00008 00009 #include <saga/saga/util.hpp> 00010 #include <saga/saga/version.hpp> 00011 #include <saga/saga/packages/sd/config.hpp> 00012 00014 // The version of the SAGA sd package 00015 // 00016 // SAGA_VERSION_PACKAGE_STREAM_FULL & 0x0000FF is the sub-minor version 00017 // SAGA_VERSION_PACKAGE_STREAM_FULL & 0x00FF00 is the minor version 00018 // SAGA_VERSION_PACKAGE_STREAM_FULL & 0xFF0000 is the major version 00019 // 00020 #define SAGA_VERSION_PACKAGE_SD_FULL SAGA_VERSION_FULL 00021 00022 #define SAGA_VERSION_PACKAGE_SD_MAJOR SAGA_VERSION_MAJOR 00023 #define SAGA_VERSION_PACKAGE_SD_MINOR SAGA_VERSION_MINOR 00024 #define SAGA_VERSION_PACKAGE_SD_SUBMINOR SAGA_VERSION_SUBMINOR 00025 00026 #define SAGA_VERSION_PACKAGE_SD_DATE SAGA_VERSION_DATE 00027 00028 #define SAGA_VERSION_PACKAGE_SD_SUBMINORMASK SAGA_VERSION_SUBMINORMASK 00029 00031 // The SAGA sd package API version: here V1.0.0 00032 #define SAGA_VERSION_PACKAGE_SD_API SAGA_VERSION_API 00033 00035 // 00036 // SAGA_VERSION_PACKAGE_STREAM_ISCOMPATIBLE() 00037 // 00038 // The SAGA_VERSION_ISCOMPATIBLE macro tests, if the version of the loaded 00039 // SAGA engine is compatible with the version the calling application was 00040 // compiled against. 00041 // 00042 #define SAGA_VERSION_PACKAGE_SD_ISCOMPATIBLE_EX(version) \ 00043 (((version) & ~SAGA_VERSION_PACKAGE_SD_SUBMINORMASK) >= \ 00044 (SAGA_VERSION_PACKAGE_SD_FULL & ~SAGA_VERSION_PACKAGE_SD_SUBMINORMASK)) \ 00045 00046 00047 #define SAGA_VERSION_PACKAGE_SD_ISCOMPATIBLE() \ 00048 SAGA_VERSION_PACKAGE_SD_ISCOMPATIBLE_EX( \ 00049 saga::get_sd_package_version()) \ 00050 00051 00053 namespace saga { 00054 00055 // Returns the version of the SAGA sd package 00056 SAGA_SD_PACKAGE_EXPORT unsigned long get_sd_package_version(); 00057 00058 // Returns the implemented SAGA sd package API version 00059 SAGA_SD_PACKAGE_EXPORT unsigned long get_sd_package_api_version(); 00060 00062 } // namespace saga 00063 00064 #endif // !SAGA_PACKAGE_SD_VERSION_HPP 00065 00066