00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 # include "routes.hh"
00020
00021 #ifndef QOLYESTER_DAEMON_SET_ROUTES_HXX
00022 # define QOLYESTER_DAEMON_SET_ROUTES_HXX 1
00023
00024 namespace olsr {
00025
00026 rrouteset_t operator*(const rrouteset_t& a, const lrouteset_t& b)
00027 {
00028 rrouteset_t ret;
00029
00030 for (rrouteset_t::const_iterator i = a.begin(); i != a.end(); ++i) {
00031 lrouteset_t::const_iterator x =
00032 b.find(net::LocalRoute::make_key(i->dest_addr(), i->prefix()));
00033 if (x != b.end())
00034 ret.insert(*i);
00035 }
00036
00037 return ret;
00038 }
00039
00040 rrouteset_t operator-(const rrouteset_t& a, const lrouteset_t& b)
00041 {
00042 rrouteset_t ret;
00043
00044 for (rrouteset_t::const_iterator i = a.begin(); i != a.end(); ++i) {
00045 lrouteset_t::const_iterator x =
00046 b.find(net::LocalRoute::make_key(i->dest_addr(), i->prefix()));
00047 if (x == b.end())
00048 ret.insert(*i);
00049 }
00050
00051 return ret;
00052 }
00053
00054 }
00055
00056 #endif // !QOLYESTER_DAEMON_SET_ROUTES_HXX