summaryrefslogtreecommitdiff
path: root/h
diff options
context:
space:
mode:
Diffstat (limited to 'h')
-rw-r--r--h/aconfig.h50
-rw-r--r--h/copyright.h7
-rw-r--r--h/counters.h12
-rw-r--r--h/llist.h12
-rw-r--r--h/sort.h14
-rw-r--r--h/xlist.h8
6 files changed, 88 insertions, 15 deletions
diff --git a/h/aconfig.h b/h/aconfig.h
index 50275ea..f59d8a1 100644
--- a/h/aconfig.h
+++ b/h/aconfig.h
@@ -4,13 +4,32 @@
/* General project wide configuration */
+/*
+ * Author: Graeme W. Gill
+ *
+ * Copyright 2006 - 2016, Graeme W. Gill
+ * All rights reserved.
+ *
+ * This material is licenced under the GNU GENERAL PUBLIC LICENSE Version 2 or later :-
+ * see the License2.txt file for licencing details.
+ */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
/* Version of Argyll release */
/* Bug fix = 4 bits */
/* minor number = 8 bits */
/* major number = 8 bits */
-#define ARGYLL_VERSION 0x01083
-#define ARGYLL_VERSION_STR "1.8.3"
+#ifndef USE_NG_VERSION
+# define ARGYLL_VERSION 0x01091
+# define ARGYLL_VERSION_STR "1.9.1"
+#else
+# define ARGYLL_VERSION NG_VERSION
+# define ARGYLL_VERSION_STR "NG_VERSION_STR"
+#endif
#if defined(NT)
# if defined(_WIN64)
@@ -21,13 +40,13 @@
#endif
#if defined(UNIX)
# if defined(__APPLE__)
-# if defined(__LP64__)
+# if defined(__P64__)
# define ARGYLL_BUILD_STR "OS X 64 bit"
# else
# define ARGYLL_BUILD_STR "OS X 32 bit"
# endif
# else
-# if defined(__LP64__)
+# if defined(__P64__)
# define ARGYLL_BUILD_STR "Linux 64 bit"
# else
# define ARGYLL_BUILD_STR "Linux 32 bit"
@@ -38,15 +57,26 @@
/* Maximum file path length */
#define MAXNAMEL 1024
+/* Maximum number of entries to setup for calibration */
+#define MAX_CAL_ENT 16384
+
/* A simpler #define to remove __APPLE__ from non OS X code */
-#if defined(UNIX) && !defined(__APPLE__)
-# define UNIX_X11 /* Unix like using X11 */
-#else
-# undef UNIX_X11
+#if defined(UNIX)
+# if defined(__APPLE__)
+# define UNIX_APPLE
+# undef UNIX_X11
+# else
+# define UNIX_X11
+# undef UNIX_APPLE
+# endif
+#endif
+
+#ifdef UNIX_X11
+# define USE_UCMM /* Enable the Unix micro CMM */
#endif
-#if defined(UNIX) && !defined(__APPLE__)
-#define USE_UCMM /* Enable the Unix micro CMM */
+#ifdef __cplusplus
+ }
#endif
#endif /* __CONFIG_H__ */
diff --git a/h/copyright.h b/h/copyright.h
index 7dc880e..3d8c5f7 100644
--- a/h/copyright.h
+++ b/h/copyright.h
@@ -1,5 +1,12 @@
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
/* Embed a copyright string */
static volatile char __copyright__[] = "Copyright 1995-2013 Graeme W. Gill";
+#ifdef __cplusplus
+ }
+#endif
diff --git a/h/counters.h b/h/counters.h
index 0fbb11a..391dbe1 100644
--- a/h/counters.h
+++ b/h/counters.h
@@ -15,12 +15,16 @@
#ifndef COUNTERS_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
/* ------------------------------------------------------- */
/* Macros for a multi-dimensional counter. */
/* Declare the counter name nn, maximum di mxdi, dimensions di, & count */
-#define DCOUNT(nn, mxdi, di, start, reset, endp1) \
- int nn[mxdi]; /* counter value */ \
+#define DCOUNT(nn, mxdi, di, start, reset, endp1) \
+ int nn[mxdi]; /* counter value */ \
int nn##_di = (di); /* Number of dimensions */ \
int nn##_stt = (start); /* start count value */ \
int nn##_rst = (reset); /* reset on carry value */ \
@@ -256,5 +260,9 @@
/* - - - - - - - - - - - - - - - - - - - - - - - - - - */
+#ifdef __cplusplus
+ }
+#endif
+
#define COUNTERS_H
#endif /* COUNTERS_H */
diff --git a/h/llist.h b/h/llist.h
index 1af31bf..0edd06f 100644
--- a/h/llist.h
+++ b/h/llist.h
@@ -1,9 +1,13 @@
-/* A set of linked list utilities, implimented as macros. */
+/* A set of doubly linked list utilities, implimented as macros. */
/* Copyright 1995, 2000 Graeme W. Gill */
#ifndef _LLIST_H_
-/* A link list structure */
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+/* A doubly link list structure */
#define LINKSTRUCT(obj) \
struct { \
obj *fwd; /* Forward link */ \
@@ -87,6 +91,10 @@ struct { \
#define IS_ONE_ITEM(objp) \
((objp) == (objp)->_llistp.fwd)
+#ifdef __cplusplus
+ }
+#endif
+
#define _LLIST_H_
#endif /* _LLIST_H_ */
diff --git a/h/sort.h b/h/sort.h
index 98bee8f..8440425 100644
--- a/h/sort.h
+++ b/h/sort.h
@@ -1,4 +1,6 @@
+#ifndef SORT_H
+
/*
* Copyright 1996 - 2010 Graeme W. Gill
* All rights reserved.
@@ -7,13 +9,17 @@
* see the License2.txt file for licencing details.
*/
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
/*
* Heapsort macro - sort smallest to largest.
* Heapsort is guaranteed nlogn, doesn't need any
* extra storage, but often isn't as fast as quicksort.
*/
-/* Need to #define HEAP_COMPARE(A,B) so it returns true if A < B */
+/* To sort ascenting, need to #define HEAP_COMPARE(A,B) so it returns true if A < B */
/* Note that A will be ARRAY[a], and B will be ARRAY[b] where a and b are indexes. */
/* TYPE should be the type of each entry of the ARRAY */
#define HEAPSORT(TYPE,ARRAY,NUMBER) \
@@ -60,3 +66,9 @@
} \
}
+#ifdef __cplusplus
+ }
+#endif
+
+#define SORT_H
+#endif /* SORT_H */
diff --git a/h/xlist.h b/h/xlist.h
index dc03019..a9b3c6f 100644
--- a/h/xlist.h
+++ b/h/xlist.h
@@ -3,6 +3,10 @@
#ifndef _XLIST_H_
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
/* An expanding list structure */
#define XLIST(objtype, name) \
struct { \
@@ -51,6 +55,10 @@ struct { \
#define XLIST_FREE(xlp) \
{ if ((xlp)->_no > 0) free((xlp)->list); }
+#ifdef __cplusplus
+ }
+#endif
+
#define _XLIST_H_
#endif /* _XLIST_H_ */