// $Id$
//
-// Copyright (C) 2007
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+// 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
{
// This policy needs to work around a serious problem with this type of list: When we change
// the size of any (direct or indirect) subelement of the list, This will change will render
- // the list completely invalid and unparseable since the 'byte' field will now be invalid.
+ // the list completely invalid and unparseable since the 'byte' field will now be invalid.
//
// The solution we apply is to store the *size* (i.e. the number of elements) of the list
// when creating the container wrapper. We also maintain this value accross insert/erase
// just apply the size change directly to the bytes header (no need to traverse the
// list). However, the implementation of this approach would be much more complex and even
// more invasive and would probably suffer from the same restrictions to the user.
-
+
struct container_policy;
typedef PacketParserBase::data_iterator iterator;
size_type bytes (iterator i, state_type s) const;
size_type size (iterator i, state_type s) const;
void init (iterator i, state_type s) const;
-
+
/** \brief Internal: ListBParser_Policy's iterator policy
\internal
*/
static const size_type init_bytes = ListBParser_Policy<
ElementParser,BytesParser>::init_bytes;
-
+
container_policy(parser_type const & list);
size_type bytes (iterator i, state_type s) const;