#include <ev.h>
-// reader open parameters, see uFR manual
-#define UFR_READER_TYPE 1 // uFR type (1Mbps)
-#define UFR_PORT_INTERFACE 1 // serial; auto->ftdi->FAIL
-#define UFR_PORT_NAME "/dev/ttyUSB0" // reader device
-#define UFR_ASYNC_BAUD_RATE 1000000 // 1Mbps, otherwise UFR_COMMUNICATION_BREAK
-
-#define UFR_BEEP // define this to annoy people
-
typedef struct ev_io_ufr {
ev_io w; // fd watcher
char uid_data[24]; // store uid here (uid is 10 bytes max)
int fd; // print JSON output here
} mt_rfid_t;
+#if HAVE_RFID
+
+// reader open parameters, see uFR manual
+#define UFR_READER_TYPE 1 // uFR type (1Mbps)
+#define UFR_PORT_INTERFACE 1 // serial; auto->ftdi->FAIL
+#define UFR_PORT_NAME "/dev/ttyUSB0" // reader device
+#define UFR_ASYNC_BAUD_RATE 1000000 // 1Mbps, otherwise UFR_COMMUNICATION_BREAK
+
+#define UFR_BEEP // define this to annoy people
+
// connect to the reader, add self to loop and make it write to fd
// return 0 on success, negative number otherwise
int mt_rfid_init(mt_rfid_t *self, struct ev_loop *loop, int fd);
// disconnect from reader
void mt_rfid_deinit(mt_rfid_t *self);
+#else
+
+#define mt_rfid_init(self, loop, fd) 0
+#define mt_rfid_deinit(self) 0
+
+#endif /* HAVE_RFID */
+
#endif