00001 //----------------------------------------------------------------------------- 00002 // (c) 2006 by Basler Vision Technologies 00003 // Section: Vision Components 00004 // Project: GenApi 00005 // Author: Margret Albrecht 00006 // $Header$ 00007 // 00008 // License: Derived from Kirill Zaborski's MathParser library (http://kirya.narod.ru/mathparser.html ). 00009 // This library comes under LGPL license (see http://www.gnu.org/licenses/lgpl.html). 00010 // Kirill's implementation is a C++ port of the CCalc library from Walery Studennikov (http://www.sama.ru/~despair/ccalc/) 00011 // which also comes under the LGPL. 00012 //----------------------------------------------------------------------------- 00018 // The following ifdef block is the standard way of creating macros which make exporting 00019 // from a DLL simpler. All files within this DLL are compiled with the MATHPARSERDLL_EXPORTS 00020 // symbol defined on the command line. this symbol should not be defined on any project 00021 // that uses this DLL. This way any other project whose source files include this file see 00022 // MATHPARSERDLL_API functions as being imported from a DLL, whereas this DLL sees symbols 00023 // defined with this macro as being exported. 00024 00025 #if defined (_MSC_VER) 00026 00027 #if defined(UNDER_RTSS) 00028 #include "RTmalloc\RTmalloc.h" 00029 #endif 00030 00031 #ifdef MATHPARSERDLL_EXPORTS 00032 # define MATHPARSERDLL_API __declspec(dllexport) 00033 #else 00034 # define MATHPARSERDLL_API __declspec(dllimport) 00035 #endif 00036 00037 #elif defined (__GNUC__) && (defined (__linux__) || defined(__APPLE__) || defined(VXWORKS)) 00038 00039 #ifdef MATHPARSERDLL_EXPORTS 00040 # define MATHPARSERDLL_API __attribute__((visibility("default"))) 00041 #else 00042 # define MATHPARSERDLL_API 00043 #endif 00044 00045 #else 00046 # define MATHPARSERDLL_API 00047 #endif