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
+ the packet data are performed via the interface exported here. This is very important, since
+ PacketImpl will update the interpreters (that is the vector indices stored therein) whenever
+ the data is changed.
+ */
class PacketImpl
: boost::noncopyable,
public pool_alloc_mixin<PacketImpl>
void erase(PacketData * self, iterator first, iterator last);
void clear(PacketData * self);
- // The Guard will keep the PacketImpl instance alive during a members execution time
- // It the refcount should drop to 0, PacketImpl will be deleted after the member
- // has completed executing.
+ /** \brief Internal: Keep PacketImpl instance alive
+
+ \internal
+
+ The Guard will keep the PacketImpl instance alive during a members execution time
+ It the refcount should drop to 0, PacketImpl will be deleted after the member
+ has completed executing.
+ */
struct Guard {
Guard(PacketImpl * impl);
~Guard();
void eraseInterpreters(interpreter_list::iterator b, interpreter_list::iterator e);
void updateIterators(PacketData * self, iterator pos, difference_type n);
-
};
}}
// compile-command: "scons -u test"
// comment-column: 40
// End:
+