]> git.sesse.net Git - ccbs/blobdiff - bigscreen/fetch_auxilliary_screens.cpp
Fetch the list of auxilliary screens.
[ccbs] / bigscreen / fetch_auxilliary_screens.cpp
diff --git a/bigscreen/fetch_auxilliary_screens.cpp b/bigscreen/fetch_auxilliary_screens.cpp
new file mode 100644 (file)
index 0000000..d889dc5
--- /dev/null
@@ -0,0 +1,13 @@
+#include "fetch_auxilliary_screens.h"
+
+FetchAuxilliaryScreens::FetchAuxilliaryScreens(std::vector<widestring> *screens) : screens(screens) {}
+void FetchAuxilliaryScreens::operator() (pqxx::transaction<> &t)
+{
+       // make sure we start with an empty list
+       screens->erase(screens->begin(), screens->end());
+       
+       pqxx::result res( t.exec("SELECT * FROM bigscreen.active_screens") );
+       for (pqxx::result::const_iterator i = res.begin(); i != res.end(); ++i) {
+               screens->push_back( i["id"].as(widestring()) );
+       }
+}