X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Examples%2FMCSniffer%2FMCSniffer.cc;h=172fea335d84be61df18ea6c8676aba1a7d7ce5d;hb=7661548b20e6c7627f54bff87e0758396fd523ef;hp=fbb5fd7918ffcdbe77c5484e0527b9398faa179a;hpb=5ed1fa1c42763aebad06c1e4ac8fc5a19e15519a;p=senf.git diff --git a/Examples/MCSniffer/MCSniffer.cc b/Examples/MCSniffer/MCSniffer.cc index fbb5fd7..172fea3 100644 --- a/Examples/MCSniffer/MCSniffer.cc +++ b/Examples/MCSniffer/MCSniffer.cc @@ -1,8 +1,8 @@ // $Id$ // // Copyright (C) 2007 -// Fraunhofer Institute for Open Communication Systems (FOKUS) -// Competence Center NETwork research (NET), St. Augustin, GERMANY +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY // Thorsten Horstmann // // This program is free software; you can redistribute it and/or modify @@ -38,26 +38,26 @@ //#include "MCSniffer.mpp" #define prefix_ -///////////////////////////////cc.p//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// class MCSniffer { senf::UDPv4ClientSocketHandle sock; std::ostream& stream; + senf::scheduler::FdEvent event; public: MCSniffer(senf::INet4Address addr, std::ostream& s) - : stream(s) + : stream(s), event("MCSniffer", senf::membind(&MCSniffer::dumpPacket, this), + sock, senf::scheduler::FdEvent::EV_READ) { // sock.bind(addr); sock.protocol().mcLoop(true); sock.protocol().mcAddMembership(addr); - senf::Scheduler::instance().add( - sock, senf::membind(&MCSniffer::dumpPacket, this)); } private: - void dumpPacket(senf::Scheduler::EventId event) + void dumpPacket(int event) { std::string data (sock.read()); senf::EthernetPacket packet ( @@ -72,17 +72,17 @@ private: int main(int argc, char const * argv[]) -{ +{ try { std::ofstream f1 ("233.132.152.1.txt"); std::ofstream f2 ("233.132.152.2.txt"); - + MCSniffer sniffer1 ( senf::INet4Address::from_string("233.132.152.1"), f1); MCSniffer sniffer2 ( senf::INet4Address::from_string("233.132.152.2"), f2); - - senf::Scheduler::instance().process(); + + senf::scheduler::process(); } catch (std::exception const & ex) { std::cerr << senf::prettyName(typeid(ex)) << ": " << ex.what() << "\n"; @@ -90,8 +90,8 @@ int main(int argc, char const * argv[]) return 0; } - -///////////////////////////////cc.e//////////////////////////////////////// + +//-///////////////////////////////////////////////////////////////////////////////////////////////// #undef prefix_ //#include "MCSniffer.mpp"