more tests

This commit is contained in:
Mathieu Lacage
2007-05-25 18:22:22 +02:00
parent 4164903d0e
commit 1a7e6629fb
2 changed files with 40 additions and 1 deletions

View File

@@ -304,6 +304,28 @@ A::A (uint32_t i)
AddInterface (b);
}
class X : public A
{
public:
static const ns3::InterfaceId iid;
};
class C : public X
{
public:
static const ns3::InterfaceId iid;
};
class D : public C
{
public:
static const ns3::InterfaceId iid;
static const ns3::ClassId cid;
};
const ns3::InterfaceId X::iid = ns3::MakeInterfaceId ("X", A::iid);
const ns3::InterfaceId C::iid = ns3::MakeInterfaceId ("C", X::iid);
const ns3::InterfaceId D::iid = ns3::MakeInterfaceId ("D", C::iid);
const ns3::ClassId D::cid = ns3::MakeClassId<D> ("D", A::iid, X::iid, C::iid, D::iid);
}
namespace ns3 {

View File

@@ -263,7 +263,24 @@ public:
const InterfaceId &iid0,
const InterfaceId &iid1,
const InterfaceId &iid2) : ClassId (name) {
const InterfaceId *array[] = {&iid0, &iid1, iid2};
const InterfaceId *array[] = {&iid0, &iid1, &iid2};
Register (array, sizeof (array)/sizeof(InterfaceId));
}
MakeClassId (std::string name,
const InterfaceId &iid0,
const InterfaceId &iid1,
const InterfaceId &iid2,
const InterfaceId &iid3) : ClassId (name) {
const InterfaceId *array[] = {&iid0, &iid1, &iid2, &iid3};
Register (array, sizeof (array)/sizeof(InterfaceId));
}
MakeClassId (std::string name,
const InterfaceId &iid0,
const InterfaceId &iid1,
const InterfaceId &iid2,
const InterfaceId &iid3,
const InterfaceId &iid4) : ClassId (name) {
const InterfaceId *array[] = {&iid0, &iid1, iid2, &iid3, &iid4};
Register (array, sizeof (array)/sizeof(InterfaceId));
}
};