author | Mathieu Lacage <mathieu.lacage@sophia.inria.fr> |
Thu, 07 Feb 2008 22:40:46 +0100 | |
changeset 2384 | 500ada6a4874 |
parent 2381 | 816df299095d |
child 2423 | 5609a96df2f6 |
permissions | -rw-r--r-- |
2381
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
1 |
#ifndef ENUM_VALUE_H |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
2 |
#define ENUM_VALUE_H |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
3 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
4 |
#include "value.h" |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
5 |
#include "param-spec-helper.h" |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
6 |
#include <list> |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
7 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
8 |
namespace ns3 { |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
9 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
10 |
class EnumValue : public Value |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
11 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
12 |
public: |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
13 |
EnumValue (int v); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
14 |
void Set (int v); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
15 |
int Get (void) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
16 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
17 |
virtual PValue Copy (void) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
18 |
virtual std::string SerializeToString (Ptr<const ParamSpec> spec) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
19 |
virtual bool DeserializeFromString (std::string value, Ptr<const ParamSpec> spec); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
20 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
21 |
EnumValue (PValue value); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
22 |
operator PValue () const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
23 |
private: |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
24 |
int m_v; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
25 |
}; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
26 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
27 |
class EnumParamSpec : public ParamSpec |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
28 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
29 |
public: |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
30 |
EnumParamSpec (); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
31 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
32 |
void AddDefault (int v, std::string name); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
33 |
void Add (int v, std::string name); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
34 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
35 |
virtual bool Set (ObjectBase* object, PValue value) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
36 |
virtual bool Get (const ObjectBase* object, PValue value) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
37 |
virtual bool Check (PValue value) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
38 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
39 |
virtual PValue GetInitialValue (void) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
40 |
virtual PValue CreateValue (void) const; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
41 |
private: |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
42 |
virtual bool DoSet (ObjectBase *object, const EnumValue *value) const = 0; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
43 |
virtual bool DoGet (const ObjectBase *object, EnumValue *value) const = 0; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
44 |
friend class EnumValue; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
45 |
typedef std::list<std::pair<int,std::string> > ValueSet; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
46 |
ValueSet m_valueSet; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
47 |
}; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
48 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
49 |
template <typename T, typename U> |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
50 |
Ptr<ParamSpec> MakeEnumParamSpec (U T::*v, |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
51 |
int v1, std::string n1, |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
52 |
int v2 = 0, std::string n2 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
53 |
int v3 = 0, std::string n3 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
54 |
int v4 = 0, std::string n4 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
55 |
int v5 = 0, std::string n5 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
56 |
int v6 = 0, std::string n6 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
57 |
int v7 = 0, std::string n7 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
58 |
int v8 = 0, std::string n8 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
59 |
int v9 = 0, std::string n9 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
60 |
int v10 = 0, std::string n10 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
61 |
int v11 = 0, std::string n11 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
62 |
int v12 = 0, std::string n12 = ""); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
63 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
64 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
65 |
} // namespace ns3 |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
66 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
67 |
namespace ns3 { |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
68 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
69 |
template <typename T, typename U> |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
70 |
Ptr<ParamSpec> MakeEnumParamSpec (U T::*v, |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
71 |
int v1, std::string n1, |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
72 |
int v2 = 0, std::string n2 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
73 |
int v3 = 0, std::string n3 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
74 |
int v4 = 0, std::string n4 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
75 |
int v5 = 0, std::string n5 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
76 |
int v6 = 0, std::string n6 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
77 |
int v7 = 0, std::string n7 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
78 |
int v8 = 0, std::string n8 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
79 |
int v9 = 0, std::string n9 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
80 |
int v10 = 0, std::string n10 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
81 |
int v11 = 0, std::string n11 = "", |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
82 |
int v12 = 0, std::string n12 = "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
83 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
84 |
class MemberVariable : public EnumParamSpec |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
85 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
86 |
private: |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
87 |
U T::*m_memberVariable; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
88 |
public: |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
89 |
MemberVariable (U T::*memberVariable) |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
90 |
: m_memberVariable (memberVariable) {} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
91 |
virtual bool DoSet (ObjectBase *object, const EnumValue *value) const { |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
92 |
T *o = dynamic_cast<T *> (object); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
93 |
if (o == 0) |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
94 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
95 |
return false; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
96 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
97 |
(o->*m_memberVariable) = U (value->Get ()); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
98 |
return true; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
99 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
100 |
virtual bool DoGet (const ObjectBase *object, EnumValue *value) const { |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
101 |
const T *o = dynamic_cast<const T *> (object); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
102 |
if (o == 0) |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
103 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
104 |
return false; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
105 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
106 |
value->Set (o->*m_memberVariable); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
107 |
return true; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
108 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
109 |
}; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
110 |
Ptr<EnumParamSpec> spec = Ptr<EnumParamSpec> (new MemberVariable (v), false); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
111 |
spec->AddDefault (v1, n1); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
112 |
if (n2 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
113 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
114 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
115 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
116 |
spec->Add (v2, n2); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
117 |
if (n3 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
118 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
119 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
120 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
121 |
spec->Add (v3, n3); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
122 |
if (n4 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
123 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
124 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
125 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
126 |
spec->Add (v4, n4); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
127 |
if (n5 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
128 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
129 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
130 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
131 |
spec->Add (v5, n5); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
132 |
if (n6 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
133 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
134 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
135 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
136 |
spec->Add (v6, n6); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
137 |
if (n7 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
138 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
139 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
140 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
141 |
spec->Add (v7, n7); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
142 |
if (n8 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
143 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
144 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
145 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
146 |
spec->Add (v8, n8); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
147 |
if (n9 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
148 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
149 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
150 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
151 |
spec->Add (v9, n9); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
152 |
if (n10 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
153 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
154 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
155 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
156 |
spec->Add (v10, n10); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
157 |
if (n11 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
158 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
159 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
160 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
161 |
spec->Add (v11, n11); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
162 |
if (n12 == "") |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
163 |
{ |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
164 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
165 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
166 |
spec->Add (v12, n12); |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
167 |
return spec; |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
168 |
} |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
169 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
170 |
} // namespace ns3 |
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
171 |
|
816df299095d
add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
172 |
#endif /* ENUM_VALUE_H */ |