]> git.sesse.net Git - ccbs/blobdiff - bigscreen/flagtrigger.h
Actually add flagtrigger.{h,cpp}...
[ccbs] / bigscreen / flagtrigger.h
diff --git a/bigscreen/flagtrigger.h b/bigscreen/flagtrigger.h
new file mode 100644 (file)
index 0000000..3774ddd
--- /dev/null
@@ -0,0 +1,20 @@
+#ifndef _FLAGTRIGGER_H
+#define _FLAGTRIGGER_H 1
+
+#include <pqxx/trigger>
+
+/* A trigger that sets a flag whenever it's trigged. */
+class FlagTrigger : pqxx::trigger {
+private:
+       bool flag;
+       
+public:
+       FlagTrigger(pqxx::connection_base &conn, const PGSTD::string &name);
+       virtual ~FlagTrigger() throw ();
+       
+       virtual void operator() (int pid);
+       bool get_flag() const;
+       void reset_flag();
+};
+
+#endif /* !defined( _FLAGTRIGGER_H) */