Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(60)

Issue 316080043: Convert Queue into a template class (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
7 years, 3 months ago by Stefano Avallone
Modified:
7 years, 1 month ago
CC:
ns-3-reviews_googlegroups.com
Visibility:
Public.

Description

Convert Queue into a template class Please find a description in this mailing list post: http://mailman.isi.edu/pipermail/ns-developers/2017-January/013761.html

Patch Set 1 #

Total comments: 8

Patch Set 2 : #

Patch Set 3 : #

Total comments: 34
Unified diffs Side-by-side diffs Delta from patch set Stats (+1596 lines, -1405 lines) Patch
M examples/tcp/tcp-variants-comparison.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M examples/traffic-control/queue-discs-benchmark.cc View 1 2 5 chunks +7 lines, -7 lines 0 comments Download
M examples/traffic-control/traffic-control.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/core/model/object-base.h View 1 2 1 chunk +41 lines, -0 lines 0 comments Download
M src/csma/helper/csma-helper.cc View 1 2 4 chunks +8 lines, -6 lines 0 comments Download
M src/csma/model/csma-net-device.h View 1 2 3 chunks +4 lines, -4 lines 2 comments Download
M src/csma/model/csma-net-device.cc View 1 2 7 chunks +13 lines, -13 lines 0 comments Download
M src/flow-monitor/model/ipv4-flow-probe.h View 1 2 2 chunks +2 lines, -1 line 2 comments Download
M src/flow-monitor/model/ipv4-flow-probe.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/flow-monitor/model/ipv6-flow-probe.h View 1 2 2 chunks +2 lines, -1 line 2 comments Download
M src/flow-monitor/model/ipv6-flow-probe.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/internet/model/ipv4-interface.h View 1 2 2 chunks +1 line, -1 line 0 comments Download
M src/internet/model/ipv4-interface.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/ipv4-packet-filter.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/ipv4-queue-disc-item.h View 1 2 2 chunks +2 lines, -5 lines 0 comments Download
M src/internet/model/ipv4-queue-disc-item.cc View 2 chunks +3 lines, -3 lines 2 comments Download
M src/internet/model/ipv6-interface.h View 1 2 2 chunks +1 line, -1 line 0 comments Download
M src/internet/model/ipv6-interface.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/ipv6-packet-filter.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/ipv6-queue-disc-item.h View 1 2 2 chunks +2 lines, -5 lines 0 comments Download
M src/internet/model/ipv6-queue-disc-item.cc View 2 chunks +3 lines, -3 lines 2 comments Download
M src/internet/test/tcp-general-test.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/test/tcp-slow-start-test.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/test/udp-test.cc View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/lte/test/lte-simple-net-device.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/network/helper/simple-net-device-helper.cc View 1 2 4 chunks +5 lines, -2 lines 0 comments Download
M src/network/model/net-device.h View 1 2 3 chunks +1 line, -306 lines 0 comments Download
M src/network/model/net-device.cc View 1 2 1 chunk +0 lines, -240 lines 0 comments Download
M src/network/test/drop-tail-queue-test-suite.cc View 1 2 2 chunks +17 lines, -17 lines 0 comments Download
M src/network/utils/drop-tail-queue.h View 1 2 2 chunks +93 lines, -7 lines 0 comments Download
M src/network/utils/drop-tail-queue.cc View 1 1 chunk +1 line, -75 lines 0 comments Download
A src/network/utils/net-device-queue-interface.h View 1 2 1 chunk +238 lines, -0 lines 0 comments Download
A + src/network/utils/net-device-queue-interface.cc View 1 2 6 chunks +19 lines, -71 lines 4 comments Download
M src/network/utils/queue.h View 1 2 7 chunks +393 lines, -73 lines 6 comments Download
M src/network/utils/queue.cc View 1 2 5 chunks +77 lines, -178 lines 2 comments Download
A src/network/utils/queue-item.h View 1 2 1 chunk +233 lines, -0 lines 0 comments Download
A src/network/utils/queue-item.cc View 1 2 1 chunk +121 lines, -0 lines 12 comments Download
M src/network/utils/simple-net-device.h View 1 2 4 chunks +4 lines, -4 lines 0 comments Download
M src/network/utils/simple-net-device.cc View 1 2 7 chunks +9 lines, -9 lines 0 comments Download
M src/network/wscript View 1 2 2 chunks +4 lines, -0 lines 0 comments Download
M src/point-to-point/examples/main-attribute-value.cc View 1 2 3 chunks +6 lines, -6 lines 0 comments Download
M src/point-to-point/helper/point-to-point-helper.h View 1 chunk +0 lines, -1 line 0 comments Download
M src/point-to-point/helper/point-to-point-helper.cc View 1 2 4 chunks +9 lines, -7 lines 0 comments Download
M src/point-to-point/model/point-to-point-net-device.h View 1 2 3 chunks +5 lines, -4 lines 0 comments Download
M src/point-to-point/model/point-to-point-net-device.cc View 1 2 10 chunks +13 lines, -13 lines 0 comments Download
M src/point-to-point/test/point-to-point-test.cc View 1 2 2 chunks +3 lines, -2 lines 0 comments Download
M src/spectrum/helper/adhoc-aloha-noack-ideal-phy-helper.cc View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/spectrum/model/aloha-noack-net-device.h View 1 2 3 chunks +3 lines, -3 lines 0 comments Download
M src/spectrum/model/aloha-noack-net-device.cc View 1 2 5 chunks +7 lines, -7 lines 0 comments Download
M src/spectrum/model/non-communicating-net-device.h View 1 chunk +0 lines, -1 line 0 comments Download
M src/spectrum/model/non-communicating-net-device.cc View 1 chunk +0 lines, -1 line 0 comments Download
M src/test/ns3tc/pfifo-fast-queue-disc-test-suite.cc View 1 2 4 chunks +6 lines, -6 lines 0 comments Download
M src/test/ns3tcp/ns3tcp-state-test-suite.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/traffic-control/examples/adaptive-red-tests.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/traffic-control/examples/codel-vs-pfifo-asymmetric.cc View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/traffic-control/examples/codel-vs-pfifo-basic-test.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M src/traffic-control/examples/pfifo-vs-red.cc View 1 2 1 chunk +4 lines, -4 lines 0 comments Download
M src/traffic-control/examples/red-tests.cc View 1 2 3 chunks +3 lines, -3 lines 0 comments Download
M src/traffic-control/examples/red-vs-ared.cc View 1 2 1 chunk +4 lines, -4 lines 0 comments Download
M src/traffic-control/helper/traffic-control-helper.h View 1 2 1 chunk +0 lines, -2 lines 0 comments Download
M src/traffic-control/helper/traffic-control-helper.cc View 1 2 3 chunks +5 lines, -2 lines 0 comments Download
M src/traffic-control/model/codel-queue-disc.h View 1 2 3 chunks +13 lines, -4 lines 0 comments Download
M src/traffic-control/model/codel-queue-disc.cc View 1 2 12 chunks +20 lines, -18 lines 0 comments Download
M src/traffic-control/model/fq-codel-queue-disc.cc View 1 2 4 chunks +7 lines, -4 lines 0 comments Download
M src/traffic-control/model/pfifo-fast-queue-disc.cc View 1 2 5 chunks +12 lines, -12 lines 0 comments Download
M src/traffic-control/model/pie-queue-disc.h View 1 2 3 chunks +13 lines, -5 lines 0 comments Download
M src/traffic-control/model/pie-queue-disc.cc View 1 2 11 chunks +23 lines, -21 lines 0 comments Download
M src/traffic-control/model/queue-disc.h View 1 2 6 chunks +16 lines, -105 lines 0 comments Download
M src/traffic-control/model/queue-disc.cc View 1 2 11 chunks +24 lines, -66 lines 0 comments Download
M src/traffic-control/model/red-queue-disc.h View 1 2 4 chunks +13 lines, -4 lines 0 comments Download
M src/traffic-control/model/red-queue-disc.cc View 1 2 15 chunks +24 lines, -22 lines 0 comments Download
M src/traffic-control/model/traffic-control-layer.h View 1 2 1 chunk +3 lines, -2 lines 0 comments Download
M src/traffic-control/model/traffic-control-layer.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/traffic-control/test/adaptive-red-queue-disc-test-suite.cc View 1 2 3 chunks +4 lines, -4 lines 0 comments Download
M src/traffic-control/test/codel-queue-disc-test-suite.cc View 1 2 8 chunks +19 lines, -18 lines 0 comments Download
M src/traffic-control/test/pie-queue-disc-test-suite.cc View 1 2 3 chunks +4 lines, -3 lines 0 comments Download
M src/traffic-control/test/red-queue-disc-test-suite.cc View 1 2 3 chunks +4 lines, -4 lines 0 comments Download
M src/virtual-net-device/model/virtual-net-device.cc View 1 2 1 chunk +0 lines, -1 line 0 comments Download
M src/wifi/model/wifi-net-device.h View 1 2 2 chunks +2 lines, -0 lines 0 comments Download
M src/wifi/model/wifi-net-device.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 8
Stefano Avallone
7 years, 3 months ago (2017-01-04 15:41:50 UTC) #1
Tom Henderson
Need cc:ns-3-reviews@googlegroups.com https://codereview.appspot.com/316080043/diff/1/src/core/model/object-base.h File src/core/model/object-base.h (right): https://codereview.appspot.com/316080043/diff/1/src/core/model/object-base.h#newcode68 src/core/model/object-base.h:68: typedef type<param> type ## Of ## param ...
7 years, 3 months ago (2017-01-15 23:38:54 UTC) #2
Mohit P. Tahiliani
+1 for the overall patch. I've reviewed it partially and suggested a few minor corrections. ...
7 years, 3 months ago (2017-01-16 19:04:11 UTC) #3
Stefano Avallone
A bit more polished version which takes comments into account. I still have to update ...
7 years, 3 months ago (2017-01-19 18:49:17 UTC) #4
Stefano Avallone
Changes in the new version: - removed the alias (now use Queue<Packet>) - made use ...
7 years, 2 months ago (2017-02-10 17:58:30 UTC) #5
Tom Henderson
I am fine with merging it, provided that: - CHANGES.html outlines the user-visible API changes ...
7 years, 2 months ago (2017-02-22 17:29:13 UTC) #6
Mohit P. Tahiliani
Hi Stefano, The changes look good to me. I have left some minor suggestions on ...
7 years, 1 month ago (2017-02-26 15:22:40 UTC) #7
Stefano Avallone
7 years, 1 month ago (2017-03-08 15:37:06 UTC) #8
Thank you very much for your review. I have addressed all of your comments in
the last version of the patch I am going to push to ns-3-dev.

https://codereview.appspot.com/316080043/diff/60001/src/csma/model/csma-net-d...
File src/csma/model/csma-net-device.h (right):

https://codereview.appspot.com/316080043/diff/60001/src/csma/model/csma-net-d...
src/csma/model/csma-net-device.h:131: * DropTail or RED.
On 2017/02/26 15:22:38, Mohit P. Tahiliani wrote:
> I think documentation should be updated here.

Done.

https://codereview.appspot.com/316080043/diff/60001/src/flow-monitor/model/ip...
File src/flow-monitor/model/ipv4-flow-probe.h (right):

https://codereview.appspot.com/316080043/diff/60001/src/flow-monitor/model/ip...
src/flow-monitor/model/ipv4-flow-probe.h:116: /// \param item queue item
On 2017/02/26 15:22:38, Mohit P. Tahiliani wrote:
> \param item queue disc item

Done.

https://codereview.appspot.com/316080043/diff/60001/src/flow-monitor/model/ip...
File src/flow-monitor/model/ipv6-flow-probe.h (right):

https://codereview.appspot.com/316080043/diff/60001/src/flow-monitor/model/ip...
src/flow-monitor/model/ipv6-flow-probe.h:122: /// \param item queue item
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> \param item queue disc item

Done.

https://codereview.appspot.com/316080043/diff/60001/src/internet/model/ipv4-q...
File src/internet/model/ipv4-queue-disc-item.cc (right):

https://codereview.appspot.com/316080043/diff/60001/src/internet/model/ipv4-q...
src/internet/model/ipv4-queue-disc-item.cc:40: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> Should we add NS_LOG_FUNCTION here? If it was intentionally left out, then we
> can leave as it is.

Done.

https://codereview.appspot.com/316080043/diff/60001/src/internet/model/ipv6-q...
File src/internet/model/ipv6-queue-disc-item.cc (right):

https://codereview.appspot.com/316080043/diff/60001/src/internet/model/ipv6-q...
src/internet/model/ipv6-queue-disc-item.cc:40: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION
> 
> same suggestion as before.

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/net-dev...
File src/network/utils/net-device-queue-interface.cc (right):

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/net-dev...
src/network/utils/net-device-queue-interface.cc:74: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> Indentation

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/net-dev...
src/network/utils/net-device-queue-interface.cc:118: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> Indentation

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
File src/network/utils/queue-item.cc (right):

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
src/network/utils/queue-item.cc:43: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION here?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
src/network/utils/queue-item.cc:56: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION here?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
src/network/utils/queue-item.cc:89: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION here?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
src/network/utils/queue-item.cc:95: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION here?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
src/network/utils/queue-item.cc:101: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION here?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue-i...
src/network/utils/queue-item.cc:107: {
On 2017/02/26 15:22:39, Mohit P. Tahiliani wrote:
> NS_LOG_FUNCTION here?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue.cc
File src/network/utils/queue.cc (right):

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue.c...
src/network/utils/queue.cc:92: {
On 2017/02/26 15:22:40, Mohit P. Tahiliani wrote:
> Should we add NS_LOG_FUNCTION here?

Uhm, it's a static method, I am not sure it makes sense to add NS_LOG_FUNCTION
here (it's not called on a QueueBase object)

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue.h
File src/network/utils/queue.h (right):

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue.h...
src/network/utils/queue.h:66: * \param itemType the item type
On 2017/02/22 17:29:13, Tom Henderson wrote:
> consider to add an example usage around \code ... \endcode since this method
is
> a bit unconventional

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue.h...
src/network/utils/queue.h:251: QueueMode m_mode;                   //!< queue
mode (packets or bytes limited)
On 2017/02/26 15:22:40, Mohit P. Tahiliani wrote:
> Is "limited" required?

Done.

https://codereview.appspot.com/316080043/diff/60001/src/network/utils/queue.h...
src/network/utils/queue.h:279: * implementation of the class Queue methods.
On 2017/02/22 17:29:13, Tom Henderson wrote:
> perhaps even more explicit, add "(i.e., do not include queue.h in your .h
files
> but instead use the forward declaration, and then include queue.h in your .cc
> files)"

Done.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b