![]() |
KSquare Utilities
|
General purpose Configuration File manager class. More...
#include <Configuration.h>
Inheritance diagram for KKB::Configuration:Classes | |
| class | ConfSection |
| class | ConfSectionList |
| class | Setting |
| class | SettingList |
Public Member Functions | |
| Configuration (const KKB::KKStr &_fileName, RunLog &_log) | |
| Configuration () | |
| Configuration (const Configuration &c) | |
| virtual | ~Configuration () |
| const KKB::KKStr & | FileName () const |
| const VectorKKStr & | FormatErrors () const |
| void | FormatErrorsAdd (kkint32 lineNum, const KKStr &error) |
| void | FormatErrorsClear () |
| Call this to clear all format error messages. More... | |
| const VectorInt & | FormatErrorsLineNums () const |
| VectorKKStr | FormatErrorsWithLineNumbers () const |
| bool | FormatGood () const |
| void | FormatGood (bool _formatGood) |
| void | GetSetting (const char *sectiopnName, kkint32 settingNum, KKStrConstPtr &name, KKStrConstPtr &value, kkint32 &lineNum) |
| virtual void | Load (const KKB::KKStr &_fileName, RunLog &_log) |
| void | LoadFile (RunLog &log) |
| virtual kkint32 | MemoryConsumedEstimated () const |
| kkint32 | NumOfSections () |
| kkint32 | NumOfSettings (const KKB::KKStr §ionName) const |
| kkint32 | NumOfSettings (kkint32 sectionNum) const |
| Returns number of settings for the specified section,. More... | |
| void | PrintFormatErrors (std::ostream &o) |
| bool | SectionDefined (const KKB::KKStr §ionName) const |
| Returns true if the section is defined. More... | |
| kkint32 | SectionLineNum (kkint32 sectionNum) const |
| KKStrConstPtr | SectionName (kkint32 sectionNum) const |
| Returns the name of the section for specified index, if index not defined will return NULL. More... | |
| kkint32 | SectionNum (const KKB::KKStr §ionName) const |
| KKStrConstPtr | SettingName (const KKB::KKStr §ionName, kkint32 settingNum) const |
| KKStrConstPtr | SettingName (kkint32 sectionNum, kkint32 settingNum) const |
| KKStrConstPtr | SettingValue (const KKB::KKStr §ionName, const KKB::KKStr &settingName, kkint32 &lineNum) const |
| KKStrConstPtr | SettingValue (kkint32 sectionNum, const KKB::KKStr &settingName, kkint32 &lineNum) const |
| KKStrConstPtr | SettingValue (kkint32 sectionNum, kkint32 settingNum, kkint32 &lineNum) const |
| KKStr | SettingValueToStr (const KKB::KKStr §ionName, const KKB::KKStr &settingName, kkint32 &lineNum) const |
| KKStr | SettingValueToStr (kkint32 sectionNum, const KKB::KKStr &settingName, kkint32 &lineNum) const |
General purpose Configuration File manager class.
This class will read and write configuration files. It understands the concept of Logical Sections and Variables. You will be able to pragmatically define Sections and Settings in these sections. Each Setting will have a related value stored with it.
There are three sections defined in the example above; Header, Class, and Class. Note that Section names do not have to be unique. You can access sections by name or index. If the name is not unique the first instance will be returned. Index values start at the top of the file, that is the first section to appear in the file is section index 0. The Setting names are of the format "SettingName = Value". Again you will be able to access Setting by either name or index.
Definition at line 45 of file Configuration.h.
| Configuration::Configuration | ( | const KKB::KKStr & | _fileName, |
| RunLog & | _log | ||
| ) |
Definition at line 286 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::ConfSectionList(), KKB::KKStr::KKStr(), LoadFile(), and KKB::VectorKKStr::VectorKKStr().
| Configuration::Configuration | ( | ) |
Definition at line 301 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::ConfSectionList(), KKB::KKStr::KKStr(), and KKB::VectorKKStr::VectorKKStr().
Referenced by KKMLL::TrainingConfiguration2::TrainingConfiguration2().
| Configuration::Configuration | ( | const Configuration & | c | ) |
Definition at line 314 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::AddConfSection(), KKB::Configuration::ConfSection::ConfSection(), KKB::Configuration::ConfSectionList::ConfSectionList(), KKB::KKStr::KKStr(), and KKB::VectorKKStr::VectorKKStr().
|
virtual |
Definition at line 336 of file Configuration.cpp.
|
inline |
Definition at line 96 of file Configuration.h.
|
inline |
Definition at line 68 of file Configuration.h.
Definition at line 772 of file Configuration.cpp.
| void Configuration::FormatErrorsClear | ( | ) |
Call this to clear all format error messages.
Definition at line 783 of file Configuration.cpp.
|
inline |
Definition at line 69 of file Configuration.h.
| VectorKKStr Configuration::FormatErrorsWithLineNumbers | ( | ) | const |
Definition at line 791 of file Configuration.cpp.
References KKB::KKStr::Concat().
|
inline |
Definition at line 64 of file Configuration.h.
|
inline |
Definition at line 66 of file Configuration.h.
Referenced by LoadFile().
| void Configuration::GetSetting | ( | const char * | sectiopnName, |
| kkint32 | settingNum, | ||
| KKStrConstPtr & | name, | ||
| KKStrConstPtr & | value, | ||
| kkint32 & | lineNum | ||
| ) |
Definition at line 749 of file Configuration.cpp.
References KKB::Configuration::ConfSection::GetSettings(), and KKB::Configuration::ConfSectionList::LookUp().
|
virtual |
Definition at line 401 of file Configuration.cpp.
References LoadFile(), and KKB::KKStr::operator=().
| void Configuration::LoadFile | ( | RunLog & | log | ) |
Definition at line 411 of file Configuration.cpp.
References FormatGood(), KKB::KKStr::operator=(), KKB::KKStr::operator==(), KKB::osFOPEN(), and KKB::KKStr::Str().
Referenced by Configuration(), and Load().
|
virtual |
Definition at line 343 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::MemoryConsumedEstimated().
| kkint32 Configuration::NumOfSections | ( | ) |
Definition at line 541 of file Configuration.cpp.
| kkint32 Configuration::NumOfSettings | ( | const KKB::KKStr & | sectionName | ) | const |
Definition at line 548 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::LookUp(), and KKB::Configuration::ConfSection::NumOfSettings().
Returns number of settings for the specified section,.
Definition at line 561 of file Configuration.cpp.
| void Configuration::PrintFormatErrors | ( | std::ostream & | o | ) |
Definition at line 387 of file Configuration.cpp.
| bool Configuration::SectionDefined | ( | const KKB::KKStr & | sectionName | ) | const |
Returns true if the section is defined.
Definition at line 574 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::LookUp().
Definition at line 610 of file Configuration.cpp.
References KKB::Configuration::ConfSection::LineNum().
| KKStrConstPtr Configuration::SectionName | ( | kkint32 | sectionNum | ) | const |
Returns the name of the section for specified index, if index not defined will return NULL.
Definition at line 582 of file Configuration.cpp.
References KKB::Configuration::ConfSection::Name().
| kkint32 Configuration::SectionNum | ( | const KKB::KKStr & | sectionName | ) | const |
Definition at line 593 of file Configuration.cpp.
Referenced by SettingValue(), and SettingValueToStr().
| KKStrConstPtr Configuration::SettingName | ( | const KKB::KKStr & | sectionName, |
| kkint32 | settingNum | ||
| ) | const |
Definition at line 622 of file Configuration.cpp.
References KKB::Configuration::ConfSectionList::LookUp(), and KKB::Configuration::ConfSection::SettingName().
| KKStrConstPtr Configuration::SettingName | ( | kkint32 | sectionNum, |
| kkint32 | settingNum | ||
| ) | const |
Definition at line 636 of file Configuration.cpp.
| KKStrConstPtr Configuration::SettingValue | ( | const KKB::KKStr & | sectionName, |
| const KKB::KKStr & | settingName, | ||
| kkint32 & | lineNum | ||
| ) | const |
Definition at line 719 of file Configuration.cpp.
References SectionNum(), and SettingValue().
| KKStrConstPtr Configuration::SettingValue | ( | kkint32 | sectionNum, |
| const KKB::KKStr & | settingName, | ||
| kkint32 & | lineNum | ||
| ) | const |
Definition at line 652 of file Configuration.cpp.
References KKB::Configuration::ConfSection::LookUpValue().
Referenced by SettingValue().
| KKStrConstPtr Configuration::SettingValue | ( | kkint32 | sectionNum, |
| kkint32 | settingNum, | ||
| kkint32 & | lineNum | ||
| ) | const |
Definition at line 701 of file Configuration.cpp.
| KKStr Configuration::SettingValueToStr | ( | const KKB::KKStr & | sectionName, |
| const KKB::KKStr & | settingName, | ||
| kkint32 & | lineNum | ||
| ) | const |
Definition at line 733 of file Configuration.cpp.
References SectionNum(), and SettingValueToStr().
| KKStr Configuration::SettingValueToStr | ( | kkint32 | sectionNum, |
| const KKB::KKStr & | settingName, | ||
| kkint32 & | lineNum | ||
| ) | const |
Definition at line 672 of file Configuration.cpp.
References KKB::KKStr::Concat(), KKB::KKStr::EmptyStr(), KKB::KKStr::KKStr(), and KKB::Configuration::ConfSection::LookUpValue().
Referenced by SettingValueToStr().