X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Scheduler%2FFdEvent.hh;h=6080d0d5ccfd11bd1bebc74f6e2de6cb2f6ab11f;hb=8488a803a9e1dfa293af161eb271503990d6fdd3;hp=75e3f52f227b4e5d3759e5d29535adae06c8542b;hpb=7fe2d6a5663e7723b8f646333e17fe4ba2a1b77a;p=senf.git diff --git a/Scheduler/FdEvent.hh b/Scheduler/FdEvent.hh index 75e3f52..6080d0d 100644 --- a/Scheduler/FdEvent.hh +++ b/Scheduler/FdEvent.hh @@ -75,9 +75,9 @@ namespace scheduler { handles are provided. The FdEvent class is an implementation of the RAII idiom: The event will be automatically - unregistered in the FdEvent destructor. The TimerEvent instance should be created - within the same scope or on a scope below where the callback is defined (e.g. if the - callback is a member function it should be defined as a class member). + unregistered in the FdEvent destructor. The FdEvent instance should be created within the + same scope or on a scope below where the callback is defined (e.g. if the callback is a + member function it should be defined as a class member). */ class FdEvent : public detail::FIFORunner::TaskInfo, @@ -138,7 +138,6 @@ namespace scheduler { void disable(); ///< Disable event void enable(); ///< Enable event - bool enabled(); ///< \c true if event enabled, \c false otherwise FdEvent & action(Callback const & cb); ///< Change event callback @@ -157,7 +156,9 @@ namespace scheduler { private: virtual void signal(int events); - virtual void run(); + virtual void v_run(); + virtual char const * v_type() const; + virtual std::string v_info() const; Callback cb_; int fd_; @@ -171,9 +172,15 @@ namespace scheduler { friend class detail::FileDispatcher; }; -}} + /** \brief Get file descriptor from handle object -int retrieve_filehandle(int fd); + This function will query the \a handle for it's file descriptor. The real implementation + must be provided by a freestanding function \c retrieve_filehandle(Handle const & h) within + the namespace of \a Handle. + */ + template + int get_descriptor(Handle const & handle); +}} ///////////////////////////////hh.e//////////////////////////////////////// #include "FdEvent.cci"