\until #include <senf/Scheduler/Scheduler.hh>
The example includes two implementations, one using blocking calls and a while loop, the other
- using the senf::Scheduler for asynchronous event notification. They are implemented in
- \c loop_main() and \c scheduler_main(). They will be documented below. For now, we skip these
+ using the senf::Scheduler for asynchronous event notification. They are implemented in
+ \c loop_main() and \c scheduler_main(). They will be documented below. For now, we skip these
implementations and go straight to the \c main() function
\skip int main(
backtrace of the exception origin in the debugger.
We now create a packet socket and bind it to the interface given as second command line argument.
- A packet socket is a linux specific type of socket which returns ethernet packets directly from
+ A packet socket is a linux specific type of socket which returns ethernet packets directly from
the network wire. By uncommenting the last line, you may switch the interface into promiscuous mode.
\until //
\until sock.read
\doc the following section is obsolete!
-
+
Lets digest this line step by step: We declare a variable named \c packet as a smart pointer to
an \c EthernetPacket instance. \c ptr is a typedef member of all Packet classes for the
corresponding smart pointer type. We then initialize this pointer with a call to the static \c
The senf::scheduler::FdEvent constructor takes several arguments:
\li a string describing the event.
\li the callback to call whenever the event occurs. The callback is specified as a <a
- href="http://www.boost.org/doc/html/function.html">Boost.Function</a> object. We use the \c
- senf::membind helper from the Utils library to build such a function object. This helper
- takes an arbitrary class member and binds it to a specific instance.
+ href="http://www.boost.org/doc/libs/release/doc/html/function.html">Boost.Function</a>
+ object. We use the \c senf::membind helper from the Utils library to build such a
+ function object. This helper takes an arbitrary class member and binds it to a specific
+ instance.
\li the handle or file descriptor to monitor.
\li and the events to watch for.