spLib
Loading...
Searching...
No Matches
sp.h
Go to the documentation of this file.
1
4#ifndef SPLIB_SP_H
5#define SPLIB_SP_H
6
7#include <stdio.h>
8#include <stdlib.h>
9#include <string.h>
10#include <math.h>
11
12#include <sp/spDefs.h>
13#include <sp/spBase.h>
14#include <sp/spOption.h>
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
27 /*----@addtogroup spGroup----*/
28
29#define SP_VERSION 0
30#define SP_REVISION 9
31#define SP_UPDATE_LEVEL 4
32#define SP_VERSION_ID (SP_VERSION * 1000 + SP_REVISION)
33#define SP_VERSION_STRING "0.9.4"
34
35#if !defined(MACOS9)
36#define SP_USE_VECTOR_ENGINE
37#endif
38
39#define SP_CHECK_VERSION(version, revision, update) \
40 (SP_VERSION > (version) || \
41 (SP_VERSION == (version) && SP_REVISION > (revision)) || \
42 (SP_VERSION == (version) && SP_REVISION == (revision) && SP_UPDATE_LEVEL >= (update)))
43
44#ifdef DBL_MIN
45#define SP_DBL_MIN DBL_MIN
46#else
47#define SP_DBL_MIN 2.2250738585072014e-308
48#endif
49#ifdef DBL_MAX
50#define SP_DBL_MAX DBL_MAX
51#else
52#define SP_DBL_MAX 1.7976931348623158e+308
53#endif
54
55#ifdef FLT_MIN
56#define SP_FLT_MIN FLT_MIN
57#else
58#define SP_FLT_MIN 1.175494351e-38f
59#endif
60#ifdef FLT_MAX
61#define SP_FLT_MAX FLT_MAX
62#else
63#define SP_FLT_MAX 3.402823466e+38f
64#endif
65
66#ifdef M_LN10
67#define SP_LN10 M_LN10
68#else
69#define SP_LN10 2.30258509299404568402
70#endif
71
72#ifndef SP_NODATA
73#define SP_NODATA NULL
74#endif
75
76#define NODATA SP_NODATA
78 /*----@addtogroup spGroup----*/
79
80#ifdef __cplusplus
81} /* Close scope of 'extern "C"' declaration */
82#endif
83
84#endif /* SPLIB_SP_H */