Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces
DOF_ID_Map.hh File Reference

Map from Atom DOF identifiers to contained values class. More...

#include <core/id/DOF_ID_Map.fwd.hh>
#include <core/id/types.hh>
#include <core/id/DOF_ID.hh>
#include <core/id/AtomID_Map.fwd.hh>
#include <utility/vector1.fwd.hh>

Classes

class  core::id::DOF_ID_Map< T >
 Map from Atom DOF identifiers to contained values class. More...
 

Namespaces

 core
 A class for reading in the atom type properties.
 
 core::id
 

Detailed Description

Map from Atom DOF identifiers to contained values class.

Author
Stuart G. Mentzer (Stuar.nosp@m.t_Me.nosp@m.ntzer.nosp@m.@obj.nosp@m.exx.c.nosp@m.om)
Note
  • Implemented as a vector< AtomID_Map > for fast lookup but this has slower insertion/deletion than a std::map or other associative containers
  • The outer vector is indexed by the DOF_Type
  • The inner map is indexed by the AtomID (pair of residue number and atom number)
  • The DOF layer is on the outside for simple global setting for a DOF and to reuse the AtomID_Map code
  • The map can be sized by first calling resize( n_res ) and then calling resize( i_res, n_atom ) for each residue to set the number of atoms
  • DOF-specific and uniform default values can be set with the overloaded default_value() functions
  • Invariant: The DOF_Map is always of size n_DOF_Type
  • When the Value type (T) is bool note that the vector< bool > specialization is used so the values returned by the indexing lookups are not actually references