-// Copyright (C) 2007
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+// $Id$
+//
+// Copyright (C) 2007
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
// Stefan Bund <g0dil@berlios.de>
//
// This program is free software; you can redistribute it and/or modify
namespace senf {
namespace detail {
-
+
/** \brief Internal: Packet data storage
-
+
\internal
This is the class holding the packet data and the interpreter chain. All manipulations of
PacketImpl will update the interpreters (that is the vector indices stored therein) whenever
the data is changed.
*/
- class PacketImpl
+ class PacketImpl
: boost::noncopyable,
public pool_alloc_mixin<PacketImpl>
{
~PacketImpl();
// rerference/memory management
-
+
void add_ref(refcount_t n=1);
void release(refcount_t n=1);
refcount_t refcount() const;
interpreter_list interpreters_;
void eraseInterpreters(interpreter_list::iterator b, interpreter_list::iterator e);
- void updateIterators(PacketData * self, iterator pos, difference_type n);
+ void updateIterators(PacketData * self, difference_type pos, difference_type n);
};
}}
///////////////////////////////hh.e////////////////////////////////////////
#endif
-#if !defined(SENF_PACKETS_DECL_ONLY) && !defined(HH_PacketImpl_i_)
+#if !defined(HH_Packets__decls_) && !defined(HH_PacketImpl_i_)
#define HH_PacketImpl_i_
#include "PacketImpl.cci"
//#include "PacketImpl.ct"