X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=base%2Finifile.hh;h=d5d6bab5eb381a83a4baa57ae751b3ceaa16f92c;hb=3833533a64e5a6871ee8e1901c6dd1950d3966c4;hp=3a82f2d4dab88e51e70113c0eade2c771e7461ba;hpb=df3130d2ed30181d97b56899677d0a4dd9a8ac66;p=gem5.git diff --git a/base/inifile.hh b/base/inifile.hh index 3a82f2d4d..d5d6bab5e 100644 --- a/base/inifile.hh +++ b/base/inifile.hh @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003 The Regents of The University of Michigan + * Copyright (c) 2001-2003 The Regents of The University of Michigan * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -36,10 +36,11 @@ #include "base/hashmap.hh" -/// -/// @file -/// Declaration of IniFile object. -/// +/** + * @file + * Declaration of IniFile object. + * @todo Change comments to match documentation style. + */ /// /// This class represents the contents of a ".ini" file. @@ -150,12 +151,6 @@ class IniFile /// @retval Pointer to section object, or NULL if not found. Section *findSection(const std::string §ionName) const; - /// Load parameter settings from given istream. This is a helper - /// function for load(string) and loadCPP(), which open a file - /// and then pass it here. - /// @retval True if successful, false if errors were encountered. - bool load(std::istream &f); - public: /// Constructor. IniFile(); @@ -163,6 +158,12 @@ class IniFile /// Destructor. ~IniFile(); + /// Load parameter settings from given istream. This is a helper + /// function for load(string) and loadCPP(), which open a file + /// and then pass it here. + /// @retval True if successful, false if errors were encountered. + bool load(std::istream &f); + /// Load the specified file, passing it through the C preprocessor. /// Parameter settings found in the file will be merged with any /// already defined in this object. @@ -189,12 +190,12 @@ class IniFile bool find(const std::string §ion, const std::string &entry, std::string &value) const; - /// Find value corresponding to given section and entry names, - /// following "default" links to other sections where possible. - /// Value is returned by reference in 'value' param. - /// @retval True if found, false if not. - bool findDefault(const std::string §ion, const std::string &entry, - std::string &value) const; + /// Determine whether the named section exists in the .ini file. + /// Note that the 'Section' class is (intentionally) not public, + /// so all clients can do is get a bool that says whether there + /// are any values in that section or not. + /// @return True if the section exists. + bool sectionExists(const std::string §ion) const; /// Print unreferenced entries in object. Iteratively calls /// printUnreferend() on all the constituent sections.