On 2009/07/16 11:39:05, Mathieu Lacage wrote: > 5) the biggest technical comment I have is ...
4 months, 1 week ago
On 2009/07/16 11:39:05, Mathieu Lacage wrote:
> 5) the biggest technical comment I have is about the way you have information
> elements. Specifically, on the way you deserialize them from FindFirst. You
> really can't use PeekData the way you are using it.
Please explain why we "really can't"?
> Here is a proposal to do
> this differently:
Your solution looks fine (and performance is much better), but I'm afraid of
the giant switch inside -- can it be avoided?
> class IeVector : public Header
> {
> typedef std::vector<Ptr<InformationElement> >::const_iterator Iterator;
> public:
> void Add (Ptr<InformationElement> element);
> Iterator Begin (void);
> Iterator End (void);
> // maybe helper method:
> Ptr<InformationElement> FindFirst (uint8_t id);
> private:
> void Serialize (...) {...}
> ... Deserialize (Buffer::Iterator i) {
> while (i.GetSize () > 2) {
> uint8_t id = i.ReadU8 ();
> uint8_t len = i.ReadU8 ();
> Ptr<InformationElement> element;
> switch (id) {
> case THIS_TYPE:
> element = Create<ThisType> ();
> break;
> ...
> }
> element->Deserialize (i);
> Add (element);
> }
> ...
> };
>
> If you do this, you can get rid of the multiple inheritance in
> InformationElement (does not need to derive from Header directly: just needs
to
> re-define similar Serialize/Deserialize methods). This also allows you to not
> abuse PeekData.
Brief explanation of using Report and ResetStats methods http://codereview.appspot.com/88094/diff/1070/1137 File src/helper/mesh-interface-helper.h (right): http://codereview.appspot.com/88094/diff/1070/1137#newcode96 Line 96: ...
4 months, 1 week ago
Brief explanation of using Report and ResetStats methods
http://codereview.appspot.com/88094/diff/1070/1137
File src/helper/mesh-interface-helper.h (right):
http://codereview.appspot.com/88094/diff/1070/1137#newcode96
Line 96: static void Report (const Ptr<WifiNetDevice>& device, std::ostream&
os);
On 2009/07/16 11:39:05, Mathieu Lacage wrote:
> more doc needed. Who calls this ? for what purpose ?
The idea of collecting statistics is simple: you call Dot11sInstaller, which
creates dot11s stack and installs it to mesh point device. Alsoyou can obtain
statistics from user script using this installer at any moment of time(Report is
used for this purpose, and Report method is present almost in every mesh module
class). When we want to collect statistics periodically, we must reset all
previously obtained statistics. So, user script calls Report (), and ResetStats
() of Dot11sInstaller periodically.
http://codereview.appspot.com/88094/diff/1070/1127 File src/devices/mesh/mesh-wifi-interface-mac.cc (right): http://codereview.appspot.com/88094/diff/1070/1127#newcode324 Line 324: if (m_phy != 0) On 2009/07/16 11:39:05, Mathieu ...
4 months, 1 week ago
http://codereview.appspot.com/88094/diff/1070/1127
File src/devices/mesh/mesh-wifi-interface-mac.cc (right):
http://codereview.appspot.com/88094/diff/1070/1127#newcode324
Line 324: if (m_phy != 0)
On 2009/07/16 11:39:05, Mathieu Lacage wrote:
> if you move the SetChannel method to the base class, you don't need this
method
> anymore
Done.
http://codereview.appspot.com/88094/diff/1070/1135
File src/helper/mesh-helper.h (right):
http://codereview.appspot.com/88094/diff/1070/1135#newcode80
Line 80: void SetStackInstaller (std::string type);
On 2009/07/16 11:39:05, Mathieu Lacage wrote:
> given the way this method is implemented, I think that it would be more clear
if
> the argument was of type Ptr<MeshStack> instead of std::string
Well, the same idea is implemented in olsr-helper: create an object by type id,
and type-id is passed as a string: m_agentFactory.SetTypeId
("ns3::olsr::RoutingProtocol");
I have done this as a string to make possible passing a string as a command-line
argument of a script
Hi! In new patchset I have fixed coding style. Also WifiInformationElement does not use PeekData ...
3 months, 3 weeks ago
Hi!
In new patchset I have fixed coding style. Also WifiInformationElement does not
use PeekData any more (it uses WifiInformationElementVector now, but
WifiInformationElement is stull inherited from Header for convenience). Alos all
code was removed from headers.
On 2009/07/16 11:39:05, Mathieu Lacage wrote: > Overall, the code looks pretty good. Comments below. ...
3 months, 1 week ago
On 2009/07/16 11:39:05, Mathieu Lacage wrote:
> Overall, the code looks pretty good. Comments below.
Two weeks passed since last update of this review. Mathieu, please take a look,
I hope we satisfy all your comments.
I have fixed most of comments and I have some questions about WifiInformationElementVector. http://codereview.appspot.com/88094/diff/4001/4003 File ...
Issue 88094: 802.11s mesh stack model
Created 4 months, 3 weeks ago by Pavel Boyko
Modified 2 months, 2 weeks ago
Reviewers: Mathieu Lacage, and.kirill
SVN Base:
Comments: 107