seven bits

bit::RecordStorage Class Reference
["Record Definitions"]

#include <bit/recordstorage.h>

List of all members.


Detailed Description

Implements a storage mechanism that provides Field set management and also provides efficient string name lookup of elements.

Author:
Rick L. Vinyard, Jr. <rvinyard@cs.nmsu.edu>

Public Types

typedef std::set
< FieldBase::pointer,
fieldbase_pointer_compare
Fields
 Typedef to container used to store children.
typedef std::map< std::string,
Fields::iterator > 
FieldNameMap
 Typedef to container used to store mapping from string names to a specific child.

Public Member Functions

 RecordStorage (FieldBase &record)
virtual ~RecordStorage ()
virtual FieldBase::iterator begin ()
virtual FieldBase::iterator end ()
RecordStorageoperator= (const RecordStorage &other)
 Performs a deep copy and clone of fields.
virtual size_t subfields ()
virtual FieldBase::pointer subfield (const std::string &s)
virtual FieldBase::pointer subfield (size_t i)
virtual void add_field (FieldBase::pointer field)
virtual void remove_field (FieldBase::pointer field)
virtual void remove_field (const std::string &name)
virtual FieldBase::pointer previous_field (FieldBase::pointer current_field) throw (exception::invalid_container_op)
virtual FieldBase::pointer next_field (FieldBase::pointer current_field) throw (exception::invalid_container_op)

Public Attributes

Fields field_set
FieldNameMap field_name_map

Protected Attributes

FieldBasem_record

Classes

struct  fieldbase_pointer_compare

Member Typedef Documentation

Typedef to container used to store children.

typedef std::map<std::string, Fields::iterator> bit::RecordStorage::FieldNameMap

Typedef to container used to store mapping from string names to a specific child.


Constructor & Destructor Documentation

bit::RecordStorage::RecordStorage ( FieldBase record  ) 

bit::RecordStorage::~RecordStorage (  )  [virtual]


Member Function Documentation

FieldBase::iterator bit::RecordStorage::begin (  )  [virtual]

FieldBase::iterator bit::RecordStorage::end (  )  [virtual]

RecordStorage & bit::RecordStorage::operator= ( const RecordStorage other  ) 

Performs a deep copy and clone of fields.

References add_field(), field_name_map, and field_set.

size_t bit::RecordStorage::subfields (  )  [virtual]

FieldBase::pointer bit::RecordStorage::subfield ( const std::string &  s  )  [virtual]

FieldBase::pointer bit::RecordStorage::subfield ( size_t  i  )  [virtual]

References field_set.

void bit::RecordStorage::add_field ( FieldBase::pointer  field  )  [virtual]

void bit::RecordStorage::remove_field ( FieldBase::pointer  field  )  [virtual]

void bit::RecordStorage::remove_field ( const std::string &  name  )  [virtual]

References field_name_map, and field_set.

FieldBase::pointer bit::RecordStorage::previous_field ( FieldBase::pointer  current_field  )  throw (exception::invalid_container_op) [virtual]

FieldBase::pointer bit::RecordStorage::next_field ( FieldBase::pointer  current_field  )  throw (exception::invalid_container_op) [virtual]


Member Data Documentation

Referenced by add_field(), begin(), and end().


The documentation for this class was generated from the following files:

Generated on Mon Nov 3 10:50:01 2008 for bit by doxygen 1.5.6