SAGA C++ API 1.6
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_ADVERT_VERSION_HPP
00008 #define SAGA_PACKAGE_DATA_ADVERT_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/advert/config.hpp>
00017 
00019 //  The version of the SAGA file package
00020 //
00021 //  SAGA_VERSION_PACKAGE_ADVERT_FULL & 0x0000FF is the sub-minor version
00022 //  SAGA_VERSION_PACKAGE_ADVERT_FULL & 0x00FF00 is the minor version
00023 //  SAGA_VERSION_PACKAGE_ADVERT_FULL & 0xFF0000 is the major version
00024 //
00025 #define SAGA_VERSION_PACKAGE_ADVERT_FULL         SAGA_VERSION_FULL
00026                                                  
00027 #define SAGA_VERSION_PACKAGE_ADVERT_MAJOR        SAGA_VERSION_MAJOR
00028 #define SAGA_VERSION_PACKAGE_ADVERT_MINOR        SAGA_VERSION_MINOR
00029 #define SAGA_VERSION_PACKAGE_ADVERT_SUBMINOR     SAGA_VERSION_SUBMINOR
00030                                                  
00031 #define SAGA_VERSION_PACKAGE_ADVERT_DATE         SAGA_VERSION_DATE
00032                                                  
00033 #define SAGA_VERSION_PACKAGE_ADVERT_SUBMINORMASK SAGA_VERSION_SUBMINORMASK
00034 
00036 //  The SAGA advert package API version: here V0.1.0
00037 #define SAGA_VERSION_PACKAGE_ADVERT_API          0x000100
00038 
00040 //
00041 //  SAGA_VERSION_PACKAGE_ADVERT_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_ADVERT_ISCOMPATIBLE_EX(version)                  \
00048     (((version) & ~SAGA_VERSION_PACKAGE_ADVERT_SUBMINORMASK) >=               \
00049       (SAGA_VERSION_PACKAGE_ADVERT_FULL &                                     \
00050           ~SAGA_VERSION_PACKAGE_ADVERT_SUBMINORMASK))                         \
00051   
00052 
00053 #define SAGA_VERSION_PACKAGE_ADVERT_ISCOMPATIBLE()                            \
00054     SAGA_VERSION_PACKAGE_ADVERT_ISCOMPATIBLE_EX(                              \
00055         saga::get_advert_package_version())                                   \
00056   
00057   
00059 namespace saga {
00060 
00061   // Returns the version of the SAGA engine
00062   SAGA_ADVERT_PACKAGE_EXPORT 
00063   unsigned long get_advert_package_version (void);
00064 
00065   // Returns the implemented SAGA API version
00066   SAGA_ADVERT_PACKAGE_EXPORT 
00067   unsigned long get_advert_package_api_version (void);
00068 
00069 } // namespace saga
00071 
00072 #endif // SAGA_PACKAGE_DATA_ADVERT_VERSION_HPP
00073 
00074 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines