The BTK ChemicallyTyped Concept

Description:

A type that models ChemicallyTyped has an associated "chemical type" identifier (e.g. an atom or residue type), that is part of a self-consistent "chemical type system" (e.g. a set of atom and residue types that are specific to a particular type of molecule).

ChemicallyTyped is a refinement of StrictlyChemicallyTyped, in that it requires everything that the latter concept defines, with the addition of methods to set the chemical type and type system associated with an object.

Concept Refines:

STL Concepts:

None.

BTK Concepts:

StrictlyChemicallyTyped

Notation:

X -- A type that models the ChemicallyTyped Concept
x -- An object of type X

Associated Types:

None beyond those of StrictlyChemicallyTyped.

Definitions:

None.

Valid Expressions:

In addition to those expressions specified by StrictlyChemicallyTyped, the following expressions must be valid:

Expression Type Requirements Precondition Semantics Postcondition Complexity

 void x.set_type(X::type_id t) 
x is mutable The type_id of x will be set to the value t. x.type() will return the value t O(1)

 X::chemical_type_system & 
 x.get_chemical_type_system() 
x is mutable A reference to the chemical_type_system associated with x is returned. O(1)

 void x.set_chemical_type_system(X::chemical_type_system const & ts) 
x is mutable The type_system associated with x will be set to a copy of ts. ts will be copied. x.clone_type_system() will return a copy of ts.

 X::dictionary & x.get_dictionary() 
x is mutable Returns a reference to the dictionary object associated with x. O(1)

Models:

Invariants:

None.

Notes:

None.
Generated on Sun Jul 15 20:46:28 2007 for BTK Core by  doxygen 1.5.1