30 #include <QStringList>
254 bool exists(
const QString &key)
const;
255 int count(
const QString &key)
const;
256 bool isNull(
const QString &key,
257 const int index = 0)
const;
259 void add(
const QString &key,
260 const QString &value);
264 void append(
const QString &key,
265 const QString &value);
267 bool erase(
const QString &key);
269 QString
get(
const QString &key,
270 const int &index = 0)
const;
271 QString
get(
const QString &key,
272 const QString &defValue,
273 const int &index = 0)
const;
276 QString
operator()(
const QString &name)
const;
QStringList allValues(const QString &key) const
Gets all the values associated with a keyword in the PvlFlatMap.
QStringList m_keylist
The names of keywords to exclusively include (KeyListFile)
QMap< QString, PvlKeyword >::const_iterator ConstPvlFlatMapIterator
A const iterator for the underling QMap that PvlFlatMap is built on.
const QStringList & excludes() const
Returns the PvlObject/PvlGroup exclusion constraints.
bool isNull(const QString &key, const int index=0) const
Determines if the value of a keyword is Null.
Contains more than one keyword-value pair.
void addInclude(const QString &name)
Adds a PvlObject/PvlGroup inclusion constraint.
File name manipulation and expansion.
static PvlConstraints withIncludes(const QStringList &includes)
Static method to construct a PvlConstraints object from a list of names for the PvlObjects and PvlGro...
const QStringList & includes() const
Returns the PvlObject/PvlGroup inclusion constraints.
void add(const QString &key, const QString &value)
Adds PvlKeyword with the given name and value to the PvlFlatMap.
QStringList m_excludes
The names of objects and groups excluded (Excludes keyword)
int loadKeywords(const PvlContainer &pvl, const PvlConstraints &constraints)
Loads PvlKeywords within a PvlContainer into the PvlFlatMap.
void addExclude(const QString &name)
Adds a PvlObject/PvlGroup exclusion constraint.
QString operator()(const QString &name) const
Gets the first value of a keyword in the PvlFlatMap.
int count(const QString &key) const
Returns the number of values associated with a given keyword.
void addKeyToList(const QString &name)
Adds a PvlKeyword inclusion constraint.
bool isExcluded(const QString &name) const
Determines if a PvlObject or PvlGroup is excluded.
void readKeyListFile(const FileName &fname)
Reads PvlKeyword inclusion constraints from a file.
Provides a flat map of PvlKeywords.
virtual ~PvlFlatMap()
Destructor.
Contains multiple PvlContainers.
const QStringList & keyList() const
Returns the PvlKeyword inclusion constraints.
void append(const PvlKeyword &key)
Appends the given PvlKeyword's values to the PvlFlatMap.
A single keyword-value pair.
This class can be used to define import/export behavior of Pvl structures when used in the PvlFlatMap...
static QStringList keywordValues(const PvlKeyword &keyword)
Gets all of a PvlKeyword's values.
QMap< QString, PvlKeyword >::iterator PvlFlatMapIterator
An iterator for the underlying QMap that PvlFlatMap is built on.
static PvlConstraints withExcludes(const QStringList &excludes)
Static method to construct a PvlConstraints object from a list of names for the PvlObjects and PvlGro...
int includeSize() const
Returns the number of PvlObjects and PvlGroups to include.
PvlConstraints()
Default constructor for an empty PvlConstraints object.
int merge(const PvlFlatMap &other)
Adds the keywords from another PvlFlatMap.
int loadGroups(const PvlObject &object, const PvlConstraints &constraints)
Loads PvlGroups into the PvlFlatMap.
int keyListSize() const
Returns the number of PvlKeywords to include.
PvlKeyword keyword(const QString &key) const
Finds a keyword in the PvlFlatMap.
bool erase(const QString &key)
Erases a keyword from the PvlFlatMap.
virtual ~PvlConstraints()
Destructor.
int excludeSize() const
Returns the number of PvlObjects and PvlGroups to exclude.
PvlFlatMap()
Default constructor.
Contains Pvl Groups and Pvl Objects.
bool exists(const QString &key) const
Determines whether a given keyword exists in the PvlFlatMap.
bool isKeyInList(const QString &name) const
Determines if a PvlKeyword is included.
int loadObject(const PvlObject &object, const PvlConstraints &constraints)
Loads PvlObjects into the PvlFlatMap.
bool isIncluded(const QString &name) const
Determines if a PvlObject or PvlGroup is included.
QStringList m_includes
The names of objects and groups included (Includes keyword)
int loadGroup(const PvlGroup &group, const PvlConstraints &constraints)
Loads a PvlGroup into the PvlFlatMap.