- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Search for |

# version.hpp

Go to the documentation of this file.

    00001 //  Copyright (c) 2005-2009 Hartmut Kaiser
    00002 //  Copyright (c) 2005-2007 Andre Merzky (andre@merzky.net)
    00003 //
    00004 //  Distributed under the Boost Software License, Version 1.0. (See accompanying
    00005 //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
    00006
    00007 #ifndef SAGA_PACKAGE_DATA_REPLICA_VERSION_HPP
    00008 #define SAGA_PACKAGE_DATA_REPLICA_VERSION_HPP
    00009
    00010 #if defined(_MSC_VER) && (_MSC_VER >= 1200)
    00011 #pragma once
    00012 #endif
    00013
    00014 #include <saga/saga/util.hpp>
    00015 #include <saga/saga/version.hpp>
    00016 #include <saga/saga/packages/replica/config.hpp>
    00017
    00019 //  The version of the SAGA file package
    00020 //
    00021 //  SAGA_VERSION_PACKAGE_REPLICA_FULL & 0x0000FF is the sub-minor version
    00022 //  SAGA_VERSION_PACKAGE_REPLICA_FULL & 0x00FF00 is the minor version
    00023 //  SAGA_VERSION_PACKAGE_REPLICA_FULL & 0xFF0000 is the major version
    00024 //
    00025 #define SAGA_VERSION_PACKAGE_REPLICA_FULL         SAGA_VERSION_FULL
    00026
    00027 #define SAGA_VERSION_PACKAGE_REPLICA_MAJOR        SAGA_VERSION_MAJOR
    00028 #define SAGA_VERSION_PACKAGE_REPLICA_MINOR        SAGA_VERSION_MINOR
    00029 #define SAGA_VERSION_PACKAGE_REPLICA_SUBMINOR     SAGA_VERSION_SUBMINOR
    00030
    00031 #define SAGA_VERSION_PACKAGE_REPLICA_DATE         SAGA_VERSION_DATE
    00032
    00033 #define SAGA_VERSION_PACKAGE_REPLICA_SUBMINORMASK SAGA_VERSION_SUBMINORMASK
    00034
    00036 //  The SAGA replica package API version: here V1.0.0
    00037 #define SAGA_VERSION_PACKAGE_REPLICA_API          0x010400
    00038
    00040 //
    00041 //  SAGA_VERSION_PACKAGE_REPLICA_ISCOMPATIBLE()
    00042 //
    00043 //  The SAGA_VERSION_ISCOMPATIBLE macro tests, if the version of the loaded
    00044 //  SAGA engine is compatible with the version the calling application was
    00045 //  compiled against.
    00046 //
    00047 #define SAGA_VERSION_PACKAGE_REPLICA_ISCOMPATIBLE_EX(version)            \
    00048     (((version) & ~SAGA_VERSION_PACKAGE_REPLICA_SUBMINORMASK) >=         \
    00049       (SAGA_VERSION_PACKAGE_REPLICA_FULL &                               \
    00050           ~SAGA_VERSION_PACKAGE_REPLICA_SUBMINORMASK))                   \
    00051
    00052
    00053 #define SAGA_VERSION_PACKAGE_REPLICA_ISCOMPATIBLE()                      \
    00054     SAGA_VERSION_PACKAGE_REPLICA_ISCOMPATIBLE_EX(                        \
    00055         saga::get_replica_package_version())                             \
    00056
    00057
    00059 namespace saga {
    00060
    00061   // Returns the version of the SAGA engine
    00062   SAGA_REPLICA_PACKAGE_EXPORT unsigned long get_replica_package_version (void);
    00063
    00064   // Returns the implemented SAGA API version
    00065   SAGA_REPLICA_PACKAGE_EXPORT
    00066   unsigned long get_replica_package_api_version (void);
    00067
    00068 } // namespace saga
    00070
    00071 #endif // SAGA_PACKAGE_DATA_REPLICA_VERSION_HPP
    00072
    00073