X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fio%2Fpoll.h;h=4466ca33e17c59772ba97a805c41eef238822248;hb=39da82b967c70282973025e4b12186625e29fe26;hp=fdb68c515bbe35e0e05cafdde93e59c625a7bced;hpb=292aed8e23ea543b089d5f2a73000de4640befe7;p=libs%2Fcore.git diff --git a/source/io/poll.h b/source/io/poll.h index fdb68c5..4466ca3 100644 --- a/source/io/poll.h +++ b/source/io/poll.h @@ -3,7 +3,6 @@ #include #include -#include #include #include @@ -35,37 +34,34 @@ inline PollEvent operator~(PollEvent e) class Poller: private NonCopyable { public: - struct Slot + struct PolledObject { EventObject *object; PollEvent events; - - Slot(EventObject *o, PollEvent e): object(o), events(e) { } }; - typedef std::vector SlotList DEPRECATED; private: struct Private; - std::vector objects; - Private *priv; - bool events_changed; - bool objs_changed; - std::vector poll_result; + std::vector objects; + Private *priv = nullptr; + bool events_changed = false; + bool objs_changed = false; + std::vector poll_result; public: Poller(); ~Poller(); void set_object(EventObject &, PollEvent); - int poll(); - int poll(const Time::TimeDelta &); + unsigned poll(); + unsigned poll(const Time::TimeDelta &); private: void rebuild_array(); - int do_poll(int); + unsigned do_poll(int); void platform_poll(int); public: - const std::vector &get_result() const { return poll_result; } + const std::vector &get_result() const { return poll_result; } }; PollEvent poll(EventObject &, PollEvent);