#ifndef RENDERER_H #define RENDERER_H #include #include #include #include #include #include "defines.h" using boost::asio::ip::udp; using boost::asio::ip::tcp; using namespace std; class Renderer : public Gtk::DrawingArea { public: Renderer(); virtual ~Renderer(); void on_resize_event(Gtk::Allocation &allocation); protected: virtual bool on_expose_event(GdkEventExpose *event); bool on_timeout(); private: void listen(); void draw_hsegment(double,double,double,double,double,double,double,Cairo::RefPtr); void draw_vsegment(double,double,double,double,double,double,double,Cairo::RefPtr); Glib::Mutex mutex_; frame_t frame; std::list points; std::list::iterator it_points_end; bool fullscreen; int width,height; area invalid; int thickness; }; #endif