View | Details | Raw Unified | Return to bug 1482
Collapse All | Expand All

(-)a/src/mesh/model/mesh-information-element-vector.cc (+27 lines)
 Lines 36-41    Link Here 
36
36
37
namespace ns3 {
37
namespace ns3 {
38
38
39
NS_OBJECT_ENSURE_REGISTERED (MeshInformationElementVector);
40
41
MeshInformationElementVector::MeshInformationElementVector ()
42
{
43
}
44
45
MeshInformationElementVector::~MeshInformationElementVector ()
46
{
47
}
48
49
50
TypeId
51
MeshInformationElementVector::GetTypeId ()
52
{
53
  static TypeId tid = TypeId ("ns3::MeshInformationElementVector")
54
    .SetParent<WifiInformationElementVector> ()
55
    .SetGroupName ("Mesh")
56
    .AddConstructor<MeshInformationElementVector> ();
57
  return tid;
58
}
59
60
TypeId
61
MeshInformationElementVector::GetInstanceTypeId () const
62
{
63
  return GetTypeId ();
64
}
65
39
uint32_t
66
uint32_t
40
MeshInformationElementVector::DeserializeSingleIe (Buffer::Iterator start)
67
MeshInformationElementVector::DeserializeSingleIe (Buffer::Iterator start)
41
{
68
{
(-)a/src/mesh/model/mesh-information-element-vector.h (-1 / +6 lines)
 Lines 23-35    Link Here 
23
#define MESH_INFORMATION_ELEMENT_VECTOR_H
23
#define MESH_INFORMATION_ELEMENT_VECTOR_H
24
24
25
#include "ns3/wifi-information-element-vector.h"
25
#include "ns3/wifi-information-element-vector.h"
26
#include "ns3/mesh-information-element.h"
26
#include "ns3/wifi-information-element.h"
27
27
28
namespace ns3 {
28
namespace ns3 {
29
29
30
class MeshInformationElementVector : public WifiInformationElementVector
30
class MeshInformationElementVector : public WifiInformationElementVector
31
{
31
{
32
public:
32
public:
33
  MeshInformationElementVector ();
34
  ~MeshInformationElementVector ();
35
36
  static TypeId GetTypeId ();
37
  TypeId GetInstanceTypeId () const;
33
  virtual uint32_t DeserializeSingleIe (Buffer::Iterator start);
38
  virtual uint32_t DeserializeSingleIe (Buffer::Iterator start);
34
};
39
};
35
40
(-)a/src/mesh/model/mesh-information-element.h (-58 lines)
Removed Link Here 
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
 * Copyright (c) 2010 Dean Armstrong
4
 *
5
 * This program is free software; you can redistribute it and/or modify
6
 * it under the terms of the GNU General Public License version 2 as
7
 * published by the Free Software Foundation;
8
 *
9
 * This program is distributed in the hope that it will be useful,
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
 * GNU General Public License for more details.
13
 *
14
 * You should have received a copy of the GNU General Public License
15
 * along with this program; if not, write to the Free Software
16
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17
 *
18
 * Author: Dean Armstrong <deanarm@gmail.com>
19
 */
20
21
#ifndef MESH_INFORMATION_ELEMENT_H
22
#define MESH_INFORMATION_ELEMENT_H
23
24
#include "ns3/wifi-information-element.h"
25
26
namespace ns3 {
27
28
#define IE11S_LINK_METRIC_REPORT               ((WifiInformationElementId)115)
29
#define IE11S_CONGESTION_NOTIFICATION          ((WifiInformationElementId)116)
30
#define IE11S_SUPP_MBSS_REG_CLASSES_CHANNELS   ((WifiInformationElementId)23)
31
#define IE11S_MESH_CHANNEL_SWITCH_ANNOUNCEMENT ((WifiInformationElementId)24)
32
#define IE11S_MESH_TIM                         ((WifiInformationElementId)25)
33
#define IE11S_AWAKE_WINDOW                     ((WifiInformationElementId)119)
34
#define IE11S_BEACON_TIMING                    ((WifiInformationElementId)120)
35
#define IE11S_MCCAOP_SETUP_REQUEST             ((WifiInformationElementId)121)
36
#define IE11S_MCCAOP_SETUP_REPLY               ((WifiInformationElementId)122)
37
#define IE11S_MCCAOP_ADVERTISEMENT             ((WifiInformationElementId)123)
38
#define IE11S_MCCAOP_RESERVATION_TEARDOWN      ((WifiInformationElementId)31)
39
#define IE11S_PORTAL_ANNOUNCEMENT              ((WifiInformationElementId)32)
40
#define IE11S_PROXY_UPDATE                     ((WifiInformationElementId)137)
41
#define IE11S_PROXY_UPDATE_CONFIRMATION        ((WifiInformationElementId)138)
42
#define IE11S_ABBREVIATED_HANDSHAKE            ((WifiInformationElementId)39)
43
/* begin of open80211s-compatible IDs */
44
#define IE11S_MESH_CONFIGURATION               ((WifiInformationElementId)113)
45
#define IE11S_MESH_ID                          ((WifiInformationElementId)114)
46
#define IE11S_PEERING_MANAGEMENT               ((WifiInformationElementId)117)
47
/* end of open80211s-compatible IDs */
48
#define IE11S_RANN                             ((WifiInformationElementId)126)
49
/* begin of open80211s-compatible IDs */
50
#define IE11S_PREQ                             ((WifiInformationElementId)130)
51
#define IE11S_PREP                             ((WifiInformationElementId)131)
52
#define IE11S_PERR                             ((WifiInformationElementId)132)
53
/* end of open80211s-compatible IDs */
54
#define IE11S_MESH_PEERING_PROTOCOL_VERSION    ((WifiInformationElementId)74)
55
56
}
57
58
#endif /* MESH_INFORMATION_ELEMENT_H */
(-)a/src/mesh/model/mesh-wifi-beacon.h (-1 / +1 lines)
 Lines 67-73    Link Here 
67
  /// Beacon header
67
  /// Beacon header
68
  MgtBeaconHeader m_header;
68
  MgtBeaconHeader m_header;
69
  /// List of information elements added
69
  /// List of information elements added
70
  WifiInformationElementVector m_elements;
70
  MeshInformationElementVector m_elements;
71
};
71
};
72
72
73
}
73
}
(-)a/src/mesh/wscript (-1 lines)
 Lines 57-63    Link Here 
57
    headers = bld(features='ns3header')
57
    headers = bld(features='ns3header')
58
    headers.module = 'mesh'
58
    headers.module = 'mesh'
59
    headers.source = [
59
    headers.source = [
60
        'model/mesh-information-element.h',
61
        'model/mesh-information-element-vector.h',
60
        'model/mesh-information-element-vector.h',
62
        'model/mesh-point-device.h',
61
        'model/mesh-point-device.h',
63
        'model/mesh-l2-routing-protocol.h',
62
        'model/mesh-l2-routing-protocol.h',
(-)a/src/wifi/model/wifi-information-element-vector.h (-1 / +1 lines)
 Lines 42-48    Link Here 
42
{
42
{
43
public:
43
public:
44
  WifiInformationElementVector ();
44
  WifiInformationElementVector ();
45
  ~WifiInformationElementVector ();
45
  virtual ~WifiInformationElementVector ();
46
46
47
  static TypeId GetTypeId ();
47
  static TypeId GetTypeId ();
48
  TypeId GetInstanceTypeId () const;
48
  TypeId GetInstanceTypeId () const;
(-)a/src/wifi/model/wifi-information-element.h (+29 lines)
 Lines 88-93    Link Here 
88
// 128 to 220 are reserved in 802.11-2007
88
// 128 to 220 are reserved in 802.11-2007
89
#define IE_VENDOR_SPECIFIC                     ((WifiInformationElementId)221)
89
#define IE_VENDOR_SPECIFIC                     ((WifiInformationElementId)221)
90
// 222 to 255 are reserved in 802.11-2007
90
// 222 to 255 are reserved in 802.11-2007
91
#define IE11S_LINK_METRIC_REPORT               ((WifiInformationElementId)115)
92
#define IE11S_CONGESTION_NOTIFICATION          ((WifiInformationElementId)116)
93
#define IE11S_SUPP_MBSS_REG_CLASSES_CHANNELS   ((WifiInformationElementId)23)
94
#define IE11S_MESH_CHANNEL_SWITCH_ANNOUNCEMENT ((WifiInformationElementId)24)
95
#define IE11S_MESH_TIM                         ((WifiInformationElementId)25)
96
#define IE11S_AWAKE_WINDOW                     ((WifiInformationElementId)119)
97
#define IE11S_BEACON_TIMING                    ((WifiInformationElementId)120)
98
#define IE11S_MCCAOP_SETUP_REQUEST             ((WifiInformationElementId)121)
99
#define IE11S_MCCAOP_SETUP_REPLY               ((WifiInformationElementId)122)
100
#define IE11S_MCCAOP_ADVERTISEMENT             ((WifiInformationElementId)123)
101
#define IE11S_MCCAOP_RESERVATION_TEARDOWN      ((WifiInformationElementId)31)
102
#define IE11S_PORTAL_ANNOUNCEMENT              ((WifiInformationElementId)32)
103
#define IE11S_PROXY_UPDATE                     ((WifiInformationElementId)137)
104
#define IE11S_PROXY_UPDATE_CONFIRMATION        ((WifiInformationElementId)138)
105
#define IE11S_ABBREVIATED_HANDSHAKE            ((WifiInformationElementId)39)
106
/* begin of open80211s-compatible IDs */
107
#define IE11S_MESH_CONFIGURATION               ((WifiInformationElementId)113)
108
#define IE11S_MESH_ID                          ((WifiInformationElementId)114)
109
#define IE11S_PEERING_MANAGEMENT               ((WifiInformationElementId)117)
110
/* end of open80211s-compatible IDs */
111
#define IE11S_RANN                             ((WifiInformationElementId)126)
112
/* begin of open80211s-compatible IDs */
113
#define IE11S_PREQ                             ((WifiInformationElementId)130)
114
#define IE11S_PREP                             ((WifiInformationElementId)131)
115
#define IE11S_PERR                             ((WifiInformationElementId)132)
116
/* end of open80211s-compatible IDs */
117
#define IE11S_MESH_PEERING_PROTOCOL_VERSION    ((WifiInformationElementId)74)
118
119
91
120
92
121
93
/**
122
/**

Return to bug 1482