#include <parameterSection.h>
Public Types |
|
Enums
|
|
enum | { MAX_FIELDS = 20 } |
Public Member Functions |
|
Constructors and Destructors
|
|
ParameterSection () | |
Default constructor. |
|
ParameterSection (const ParameterSection ¶meter_section) | |
Copy constructor. |
|
virtual | ~ParameterSection () |
Destructor. |
|
Extracting Data from the Section
|
|
bool | extractSection (Parameters ¶meters, const String §ion_name) |
Reads a parameter section from an
INI file. |
|
const String & | getSectionName () const |
Return the name of the section read.
|
|
const String & | getValue (const String &key, const String &variable) const |
Returns the value associated with
the key and returns the value of the given variable.
|
|
bool | has (const String &key, const String &variable) const |
Query for a pair of key and
variable. |
|
bool | has (const String &key) const |
Query for a key. |
|
bool | hasVariable (const String &variable) const |
Query whether a specified variable
was defined in the format line. |
|
Position | getColumnIndex (const String &variable) const |
Return the column index of a
variable. |
|
Size | getNumberOfVariables () const |
Returns the number of defined
variables. |
|
Size | getNumberOfKeys () const |
Returns the number of different keys
defined. |
|
const String & | getValue (Position key_index, Position variable_index) const |
Fast access to the value array.
|
|
const String & | getKey (Position key_index) const |
Fast access to the key array.
|
|
Assignment
|
|
virtual void | clear () |
Clear method. |
|
const ParameterSection & | operator= (const ParameterSection §ion) |
Assignment operator. |
|
Predicates
|
|
virtual bool | isValid () const |
Validity predicate. |
|
bool | operator== (const ParameterSection ¶meter_section) const |
Equality operator. |
|
Public Attributes |
|
Public Members
|
|
Options | options |
The options read in from options
lines contained in this section. |
|
Static Public Attributes |
|
static const String | UNDEFINED |
Result Type for unknown
items. |
|
Protected Attributes |
|
String | section_name_ |
String | format_line_ |
StringHashMap< Index > | section_entries_ |
StringHashMap< Index > | variable_names_ |
std::vector< String > | entries_ |
std::vector< String > | keys_ |
Size | number_of_variables_ |
std::vector< float > | version_ |
bool | valid_ |
It is similar to INIFile , but a little bit more sophisticated. Just as in a INIFile there can be comment lines starting with either "<b>;</b>", "<b>!</b>" or "<b>\#</b>" and it is divided in sections. A section-line looks like "<b>[ElectricFieldEffect]</b>". The first non-comment line in a section is the format-line. It defines the sort of values stored in the section and their order:
bool BALL::ParameterSection::extractSection | ( | Parameters & | parameters, | |
const String & | section_name | |||
) |
Reads a parameter section from an INI file.
This method reads the section given in section_name from ini_file, interprets (if given) a format line, reads the data from this section according to the format, and builds some datastructures for fast and easy acces to the data.
parameters | the parameters defining the inifile to be read from | |
section_name | the name of the section to be read (without the squared brackets) |
Reimplemented in BALL::AtomTypes, BALL::CharmmEEF1, BALL::CosineTorsion, BALL::LennardJones, BALL::Potential1210, BALL::QuadraticAngleBend, BALL::QuadraticBondStretch, BALL::QuadraticImproperTorsion, BALL::ResidueTorsions, BALL::Templates, BALL::SolventParameter, and BALL::RDFSection.
Position BALL::ParameterSection::getColumnIndex | ( | const String & | variable | ) | const |
Return the column index of a variable.
If section doesn't have the variable, INVALID_POSITION is returned.
const String& BALL::ParameterSection::getKey | ( | Position | key_index | ) | const |
Fast access to the key array.
The first key has the index 0. If the key is undefined, UNDEFINED is returned.
const String& BALL::ParameterSection::getSectionName | ( | ) | const |
Return the name of the section read.
The section name is empty before extractSection was called.
const String& BALL::ParameterSection::getValue | ( | Position | key_index, | |
Position | variable_index | |||
) | const |
Fast access to the value array.
If the value is undefined, UNDEFINED is returned.
const String& BALL::ParameterSection::getValue | ( | const String & | key, | |
const String & | variable | |||
) | const |
Returns the value associated with the key and returns the value of the given variable.
If the requested variable is not defined in the format line, an empty string is returned.
bool BALL::ParameterSection::has | ( | const String & | key | ) | const |
Query for a key.
False is returned if the key could not be found.
key | the key to serch in the hash table |
Reimplemented in BALL::Templates.
Query for a pair of key and variable.
False is returned if
The options read in from options lines contained in this section.
Remember: options lines start with "@" as the first character and must be of the form "@name=value".