* Include the IRMP core logic. This approach is required because of
* static variables which hold internal state. The core logic started
* as an MCU project where resources are severely constrained.
+ *
+ * This libsigrokdecode incarnation of IRMP will always be used in the
+ * UNIX_OR_WINDOWS configuration. But libtool(1) breaks the upstream
+ * logic's platform detection. Check reliably available conditions here
+ * and provide expected symbols to the library, to reduce changes to the
+ * upstream project.
*/
+#if defined _WIN32
+# define WIN32
+#else
+# define unix
+#endif
#include "irmp.h"
#include "irmp.c"
s_startBitSample = 0;
s_curSample = 0;
s_end_sample = 0;
+
+ /*
+ * TODO This is not the most appropriate location to control the
+ * core logic's verbosity. But out of the public set of library
+ * routines this call is closest to some initialization routine.
+ * The query for compile time parameter values is optional, the
+ * state reset is not. Multiple verbosity setup activities in
+ * the same program lifetime won't harm. This HACK is clearly
+ * preferrable over more fiddling with core logic innards, or
+ * the introduction of yet another DLL routine.
+ */
+ silent = 1;
+ verbose = 0;
}
IRMP_DLLEXPORT int irmp_add_one_sample(int sample)