Hello, a second batch of the streaming agent refactor follows. It moves out the FrameLog and the CursorUpdater and does most of the preparation to move out the main loop and the sending and receiving of messages. It doesn't contain all of the small fixes discussed/proposed previously (in c3d's patches etc.) for the code in question, but those should be easier and less disruptive once the code is separated. None of these are really based on Christophe's previous patches, though obviously influenced by the discussions and may look quite similar. Please let me know if you find any issues here... Lukáš Hrázký (9): Separate the code for logging frames/times into a class FrameLog: Use std::chrono instead of gettimeofday for time Remove the arg_error macro Improve the invalid option argument (-c) error message Introduce a short class to have RAII on the syslog Remove the logmask variable Make the try-catch block in main() a catch-all Clean up the global try-catch block Move out the cursor-updating code into it's own class src/Makefile.am | 4 + src/cursor-updater.cpp | 106 ++++++++++++++++++ src/cursor-updater.hpp | 34 ++++++ src/frame-log.cpp | 75 +++++++++++++ src/frame-log.hpp | 39 +++++++ src/spice-streaming-agent.cpp | 202 ++++++++-------------------------- 6 files changed, 305 insertions(+), 155 deletions(-) create mode 100644 src/cursor-updater.cpp create mode 100644 src/cursor-updater.hpp create mode 100644 src/frame-log.cpp create mode 100644 src/frame-log.hpp -- 2.17.1 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel