Junxiao Shi
3aba7548f4
table: make FIB and StrategyChoice iterators default-constructible
...
They were previously not default-constructible when compiled with gcc 4.8.4.
refs #3882
Change-Id: I2431c869fb61b7adbe83d5551705981bf8618280
2016-12-24 02:42:52 +00:00
Junxiao Shi
13ad4b7a42
table: simplify FIB iterator with Boost.Range
...
refs #3738
Change-Id: I0bfe985c9dac86a67988f77a89f4d2694c4fd9f5
2016-08-15 04:51:21 +00:00
Junxiao Shi
dd8f66140b
table: NameTree::findLongestPrefixMatch accepts all table entry types
...
This simplifies longest prefix match procedures in FIB and StrategyChoice.
refs #3687
Change-Id: I9aa93232124b91bae7890d065337ac9389e8398e
2016-08-12 15:42:52 +00:00
Junxiao Shi
7f35843d58
table: NameTree::lookup return Entry& instead of shared_ptr
...
refs #3687
Change-Id: Ie86057337dd36ff2bc6ef3ea0c73fd4ffc4b13d0
2016-08-11 17:06:33 +00:00
Junxiao Shi
f2420fc7a3
table: ensure NameTree::lookup(tableEntry) does not return nullptr
...
NameTree::lookup(tableEntry) is always equivalent to NameTree::lookup(Name).
NameTree::getEntry(tableEntry) should be used when inserting new name tree entry is undesired.
refs #3687
Change-Id: I0b17cd07dde83341976cfe66c85855dfb2fa6e89
2016-08-11 13:18:21 +00:00
Junxiao Shi
811c010098
table: NameTree findExactMatch, findLongestPrefixMatch return Entry*
...
refs #3687
Change-Id: I32752fd711b9641228fbb7f356e72144780cf9ec
2016-08-10 04:12:45 +00:00
Junxiao Shi
e3cf285ee7
table: delete deprecated functions in NameTree
...
NameTree::eraseEntryIfEmpty is renamed to eraseIfEmpty;
the deprecated overload that accepts shared_ptr<name_tree::Entry> is deleted.
name_tree::Entry::getPrefix is deleted in favor of getName.
This commit also improves Doxygen in NameTree class.
refs #3687
Change-Id: Ia98ca676ce6d3bc7b2e97328adccac911c8167d7
2016-08-09 03:50:56 +00:00
Junxiao Shi
02b73f5705
table: delete PIT in-record and out-record when face is destroyed
...
refs #3685
Change-Id: I3c20417c9a30db69c90c9d59a30af1529bc1f98e
2016-07-28 01:48:27 +00:00
Junxiao Shi
a6de4290c8
table: don't use shared_ptr in FIB
...
refs #3164
Change-Id: I5b5eb47d60f6bf5b6389c32ac840f793767e4334
2016-07-12 02:08:10 +00:00
Junxiao Shi
b184e5324d
table: NameTree::getEntry
...
NameTree::get is renamed to NameTree::lookup.
NameTree::getEntry is introduced to return the NameTreeEntry on which a table entry is attached.
tableEntry::m_nameTreeEntry is changed to weak_ptr to avoid circular shared_ptr reference.
refs #3608 , #3619
Change-Id: I425b6a2eb5fe3024bbaff4ff766eb6739be54b02
2016-05-26 18:09:57 +00:00
Junxiao Shi
4370fde844
table: fix PIT not matching full name
...
refs #3363
Change-Id: I4ff3d02aaf43c3aaba843cfcf6221c218c1cea99
2016-02-24 13:28:45 -08:00
Alexander Afanasyev
319f2c8dbc
src: Update copyright notices for files modified in 2015
...
Change-Id: Ia52e6e891a06fcc7ace06eafd2fffecd7bd55a95
Refs: #2352
2015-01-19 21:45:21 -08:00
Alexander Afanasyev
09fc3d9df8
table: Ensure Fib::const_iterator is default and copy constructible
...
This functionality is necessary for ndnSIM python bindings and is
technically required by ForwardIterator C++ concept
(http://en.cppreference.com/w/cpp/concept/ForwardIterator )
Change-Id: Ibe0812c3a2cf05840cd3e83b941cc52affe2ac65
Refs: #2338
2015-01-06 10:50:27 -08:00
Junxiao Shi
4b2e6cb321
table: fix Fib::removeNextHopFromAllEntries invalidating NameTree iterator
...
refs #2177
Change-Id: I19b8234d94b804273404176d6751a91f082653b7
2014-12-03 10:36:27 -08:00
Junxiao Shi
60607c734d
table: make NameTree enumeration usable with range-based for
...
NameTree::fullEnumerate and NameTree::partialEnumerate are changed
to return a type usable with range-based for.
NameTree enumeration test cases are also simplified.
refs #2155
Change-Id: I315d9502d2194670aa7054ab956ededefb0c7ca0
2014-11-29 10:35:06 -08:00
Junxiao Shi
56a21bf34a
table: simplify FIB with C++11 features
...
refs #2100
Change-Id: I293044ae321b9a1d7c07a34f631c49c791c7856d
2014-11-07 14:35:01 -08:00
Alexander Afanasyev
b3033247ee
table: Fix segfault during Fib::removeNextHopFromAllEntries
...
Change-Id: I905a3c0da2f2a9197942cfeba7fd698b779e6e4a
Refs: #1816
2014-08-08 16:09:44 -07:00
Junxiao Shi
ee5a444344
table: erase NameTree entry when FIB/Measurements/StrategyChoice entry is erased
...
This commit also optimizes Measurements table to make use of NameTree shortcuts.
refs #1803
Change-Id: Ib0e465750ed5e8ff9ed129a926a7bc852db4e9e1
2014-07-27 17:13:43 -07:00
Alexander Afanasyev
9bcbc7c130
docs: Update of copyright and license statement in all .hpp and .cpp files
...
Change-Id: I4082db67f2390482615a780d91a513f09d57a9a4
Refs: #1266
2014-04-07 09:18:25 -07:00
HangZhang
5d46942329
table: FIB enumeration
...
refs #1315
Change-Id: I535d519836720c40f72904e5520d11026ea30a33
2014-03-12 10:12:00 -07:00
HangZhang
cb4fc83bff
table: shortcuts between FIB, PIT, Measurements, StrategyChoice
...
refs #1202
Change-Id: Ie63ab792e840de7e0889d385d3e8ea8a112cb7e5
2014-03-11 16:31:09 -07:00
Junxiao Shi
efceadc378
fib: implicitly delete empty Entry
...
Fib::removeNextHopFromAllEntries automatically deletes fib::Entry
if the last nexthop record is being removed.
refs #1341
Change-Id: I36d42fe8f9fc8f03d194f845020aff408cd70488
2014-03-09 19:39:26 -07:00
Haowei Yuan
e1079fc4e4
table: NameTree enumeration
...
refs #1318
Change-Id: I26f25cefe8f2939ca884103f1b081c0c02325207
2014-03-09 19:37:04 -05:00
Junxiao Shi
4063184af0
table: NameTree::findLongestPrefixMatch predicate
...
refs #1313
Change-Id: I759c8ddf9bc0fe5b970c979f69131a98b1ef32e4
2014-03-03 09:27:13 -07:00
HangZhang
ad4afd1492
table: FIB on NameTree
...
Change-Id:Ie949ad2209ed841af498f45e2d0f365ac905c45d
Refs: #1190
2014-02-28 23:31:29 -08:00
Junxiao Shi
dbe7173db1
table: MeasurementsAccessor for strategy
...
refs #1276
Change-Id: Idec8f615c726f51612236a55a7532fabeb81a32d
2014-02-24 23:32:48 -07:00
Steve DiBenedetto
d5f87930a1
table: added findExactMatch and remove methods to Fib
...
Added methods required to implement remaining FIB
management commands.
refs: #1223
Change-Id: Idf27a60a19286ab1d5712bbc00cca7f41092807b
2014-02-05 16:21:04 -07:00
Alexander Afanasyev
18bbf81601
src: Changing namespace ndn to namespace nfd
...
Also, this commit imports used classes from ::ndn namespace (from
NDN-CPP library) directly to ::nfd namespace.
refs: #1163
Change-Id: I9cc9d72e00af495b4ed0c84e6d418a7c9ba986cb
2014-01-29 14:12:58 -08:00
Junxiao Shi
c1e1236b04
table: Mock implementation of FIB
...
refs #1127
Change-Id: Ie0bc1fc2ddcc61dd1f1cf10fb1935edde4aff6c5
2014-01-26 14:22:48 -07:00