aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/dms.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/dms.h')
-rw-r--r--include/dms.h173
1 files changed, 0 insertions, 173 deletions
diff --git a/include/dms.h b/include/dms.h
deleted file mode 100644
index 7d68728..0000000
--- a/include/dms.h
+++ /dev/null
@@ -1,173 +0,0 @@
1/*
2 * DMS Tools and Utilities
3 * Copyright (C) 2010 David M. Syzdek <david@syzdek.net>.
4 *
5 * @SYZDEK_LICENSE_HEADER_START@
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are
9 * met:
10 *
11 * * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * * Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution.
16 * * Neither the name of David M. Syzdek nor the
17 * names of its contributors may be used to endorse or promote products
18 * derived from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
21 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL DAVID M. SYZDEK BE LIABLE FOR
24 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 *
32 * @SYZDEK_LICENSE_HEADER_END@
33 */
34/**
35 * @file lib/dms.h defines API for libdms.la
36 */
37#ifndef _DMS_H
38#define _DMS_H 1
39
40//////////////
41// //
42// Macros //
43// //
44//////////////
45
46/*
47 * The macros "BEGIN_C_DECLS" and "END_C_DECLS" are taken verbatim
48 * from section 7.1 of the Libtool 1.5.14 manual.
49 */
50/* BEGIN_C_DECLS should be used at the beginning of your declarations,
51 so that C++ compilers don't mangle their names. Use END_C_DECLS at
52 the end of C declarations. */
53#undef BEGIN_C_DECLS
54#undef END_C_DECLS
55#if defined(__cplusplus) || defined(c_plusplus)
56# define BEGIN_C_DECLS extern "C" { ///< exports as C functions
57# define END_C_DECLS } ///< exports as C functions
58#else
59# define BEGIN_C_DECLS /* empty */ ///< exports as C functions
60# define END_C_DECLS /* empty */ ///< exports as C functions
61#endif
62
63
64/*
65 * The macro "PARAMS" is taken verbatim from section 7.1 of the
66 * Libtool 1.5.14 manual.
67 */
68/* PARAMS is a macro used to wrap function prototypes, so that
69 compilers that don't understand ANSI C prototypes still work,
70 and ANSI C compilers can issue warnings about type mismatches. */
71#undef PARAMS
72#if defined (__STDC__) || defined (_AIX) \
73 || (defined (__mips) && defined (_SYSTYPE_SVR4)) \
74 || defined(WIN32) || defined (__cplusplus)
75# define PARAMS(protos) protos ///< wraps function arguments in order to support ANSI C
76#else
77# define PARAMS(protos) () ///< wraps function arguments in order to support ANSI C
78#endif
79
80
81/*
82 * The following macro is taken verbatim from section 5.40 of the GCC
83 * 4.0.2 manual.
84 */
85#if __STDC_VERSION__ < 199901L
86# if __GNUC__ >= 2
87# define __func__ __FUNCTION__
88# else
89# define __func__ "<unknown>"
90# endif
91#endif
92
93
94// Exports function type
95#ifdef WIN32
96# ifdef DMS_LIBS_DYNAMIC
97# define DMS_F(type) extern __declspec(dllexport) type ///< used for library calls
98# define DMS_V(type) extern __declspec(dllexport) type ///< used for library calls
99# else
100# define DMS_F(type) extern __declspec(dllimport) type ///< used for library calls
101# define DMS_V(type) extern __declspec(dllimport) type ///< used for library calls
102# endif
103#else
104# ifdef DMS_LIBS_DYNAMIC
105# define DMS_F(type) type ///< used for library calls
106# define DMS_V(type) type ///< used for library calls
107# else
108# define DMS_F(type) extern type ///< used for library calls
109# define DMS_V(type) extern type ///< used for library calls
110# endif
111#endif
112
113
114///////////////
115// //
116// Headers //
117// //
118///////////////
119
120#include <inttypes.h>
121#include <dmsversion.h>
122
123
124///////////////////
125// //
126// Definitions //
127// //
128///////////////////
129
130#define DMS_TRUE 0x01
131#define DMS_FALSE 0x00
132#define DMS_YES 0x01
133#define DMS_NO 0x00
134
135
136/////////////////
137// //
138// Datatypes //
139// //
140/////////////////
141
142
143//////////////////
144// //
145// Prototypes //
146// //
147//////////////////
148BEGIN_C_DECLS
149
150// returns the binary GNU Libtool LIB_VERSION_INFO value
151DMS_F(int) dms_lib_version PARAMS((void));
152
153// returns the GNU Libtool LIB_VERSION_AGE value
154DMS_F(int) dms_lib_version_age PARAMS((void));
155
156// checks for library binary compatability
157DMS_F(int) dms_lib_version_check PARAMS((int version));
158
159// returns the GNU Libtool LIB_VERSION_CURRENT value
160DMS_F(int) dms_lib_version_current PARAMS((void));
161
162// returns the GNU Libtool LIB_VERSION_INFO string
163DMS_F(const char *) dms_lib_version_info PARAMS((void));
164
165// returns the GNU Libtool LIB_VERSION_REVISION value
166DMS_F(int) dms_lib_version_revision PARAMS((void));
167
168// returns version info string for library
169DMS_F(const char *) dms_version PARAMS((void));
170
171
172END_C_DECLS
173#endif /* end of header file */