#include #include "Xlib.h" namespace sp { namespace Xlib { namespace _priv { // Define a global display (for simplicity, we always connect to local one.) ::Display* display = NULL; }; void init() { _priv::display = XOpenDisplay(NULL); } void shutdown() { XCloseDisplay(_priv::display); _priv::display = NULL; } ::Display* getDisplay() { assert(_priv::display != NULL); return _priv::display; } ::Atom getAtom(const std::string& name, bool onlyIfExists) { return XInternAtom(getDisplay(), name.c_str(), onlyIfExists); } } } // namespace sp::Xlib