make some methods inline

This commit is contained in:
Mathieu Lacage
2007-06-06 14:40:48 +02:00
parent 8e0ccbb45a
commit a0901958a8
2 changed files with 68 additions and 67 deletions

View File

@@ -329,69 +329,6 @@ PacketHistory::Enable (void)
m_enable = true;
}
PacketHistory::PacketHistory (uint32_t uid, uint32_t size)
: m_data (0),
m_head (0xffff),
m_tail (0xffff),
m_used (0),
m_packetUid (uid)
{
if (size > 0)
{
DoAddHeader (0, size);
}
}
PacketHistory::PacketHistory (PacketHistory const &o)
: m_data (o.m_data),
m_head (o.m_head),
m_tail (o.m_tail),
m_used (o.m_used),
m_packetUid (o.m_packetUid)
{
if (m_data != 0)
{
m_data->m_count++;
}
}
PacketHistory &
PacketHistory::operator = (PacketHistory const& o)
{
if (m_data == o.m_data)
{
// self assignment
return *this;
}
if (m_data != 0)
{
m_data->m_count--;
if (m_data->m_count == 0)
{
PacketHistory::Recycle (m_data);
}
}
m_data = o.m_data;
m_head = o.m_head;
m_tail = o.m_tail;
m_used = o.m_used;
m_packetUid = o.m_packetUid;
if (m_data != 0)
{
m_data->m_count++;
}
return *this;
}
PacketHistory::~PacketHistory ()
{
if (m_data != 0)
{
m_data->m_count--;
if (m_data->m_count == 0)
{
PacketHistory::Recycle (m_data);
}
}
}
void
PacketHistory::ReserveCopy (uint32_t size)
{

View File

@@ -39,10 +39,10 @@ class PacketHistory {
public:
static void Enable (void);
PacketHistory (uint32_t uid, uint32_t size);
PacketHistory (PacketHistory const &o);
PacketHistory &operator = (PacketHistory const& o);
~PacketHistory ();
inline PacketHistory (uint32_t uid, uint32_t size);
inline PacketHistory (PacketHistory const &o);
inline PacketHistory &operator = (PacketHistory const& o);
inline ~PacketHistory ();
template <typename T>
void AddHeader (T const &header, uint32_t size);
@@ -172,6 +172,70 @@ PacketHistory::RemoveTrailer (T const &trailer, uint32_t size)
DoRemoveTrailer (PacketPrinter::GetTrailerUid<T> (), size);
}
PacketHistory::PacketHistory (uint32_t uid, uint32_t size)
: m_data (0),
m_head (0xffff),
m_tail (0xffff),
m_used (0),
m_packetUid (uid)
{
if (size > 0)
{
DoAddHeader (0, size);
}
}
PacketHistory::PacketHistory (PacketHistory const &o)
: m_data (o.m_data),
m_head (o.m_head),
m_tail (o.m_tail),
m_used (o.m_used),
m_packetUid (o.m_packetUid)
{
if (m_data != 0)
{
m_data->m_count++;
}
}
PacketHistory &
PacketHistory::operator = (PacketHistory const& o)
{
if (m_data == o.m_data)
{
// self assignment
return *this;
}
if (m_data != 0)
{
m_data->m_count--;
if (m_data->m_count == 0)
{
PacketHistory::Recycle (m_data);
}
}
m_data = o.m_data;
m_head = o.m_head;
m_tail = o.m_tail;
m_used = o.m_used;
m_packetUid = o.m_packetUid;
if (m_data != 0)
{
m_data->m_count++;
}
return *this;
}
PacketHistory::~PacketHistory ()
{
if (m_data != 0)
{
m_data->m_count--;
if (m_data->m_count == 0)
{
PacketHistory::Recycle (m_data);
}
}
}
}; // namespace ns3