Cleanup work (much needed)
[tpg/opendispense2.git] / src / server / common.h
index f2eea0c..2704696 100644 (file)
@@ -9,6 +9,8 @@
 #ifndef _COMMON_H_
 #define _COMMON_H_
 
+#include <regex.h>
+
 // === CONSTANTS ===
 #define        DEFAULT_CONFIG_FILE     "/etc/opendispense/main.cfg"
 #define        DEFAULT_ITEM_FILE       "/etc/opendispense/items.cfg"
@@ -50,6 +52,10 @@ struct sHandler
 {
        char    *Name;
         int    (*Init)(int NConfig, tConfigItem *Config);
+       /**
+        * \brief Check if an item can be dispensed
+        * \return Boolean Failure
+        */
         int    (*CanDispense)(int User, int ID);
         int    (*DoDispense)(int User, int ID);
 };
@@ -62,6 +68,13 @@ extern int   giNumHandlers;
 extern int     giDebugLevel;
 
 // === FUNCTIONS ===
+// --- Helpers --
+extern void    CompileRegex(regex_t *Regex, const char *Pattern, int Flags);
+extern int     RunRegex(regex_t *regex, const char *string, int nMatches, regmatch_t *matches, const char *errorMessage);
+extern int     InitSerial(const char *Path, int BaudRate);
+extern char    *mkstr(const char *Format, ...);
+
+// --- Dispense ---
 extern int     DispenseItem(int User, tItem *Item);
 
 // --- Logging ---

UCC git Repository :: git.ucc.asn.au