16#include <nlohmann/json.hpp> 
   19template<
typename T> 
class QList;
 
   66      PvlObject(
const QString &
name, 
const nlohmann::json &jsonobj);
 
   76        return m_groups.size();
 
   92        return m_groups.begin();
 
  101        return m_groups.begin();
 
  110        return m_groups.end();
 
  119        return m_groups.end();
 
  133        return std::find(beg, 
end, temp);
 
  147        return std::find(beg, 
end, temp);
 
  187        m_groups.push_back(
group);
 
  193      using PvlContainer::operator+=;
 
  222        return m_objects.size();
 
  238        return m_objects.begin();
 
  247        return m_objects.begin();
 
  256        return m_objects.end();
 
  265        return m_objects.end();
 
  280        return std::find(beg, 
end, temp);
 
  295        return std::find(beg, 
end, temp);
 
  310        m_objects.push_back(
object);
 
  311        m_objects[m_objects.size()-1].setFileName(
fileName());
 
Q_DECLARE_METATYPE(Isis::PvlObject)
 
Contains more than one keyword-value pair.
Definition: PvlContainer.h:49
 
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
 
void clear()
Clears PvlKeywords.
Definition: PvlContainer.h:91
 
QString fileName() const
Returns the filename used to initialise the Pvl object.
Definition: PvlContainer.h:232
 
PvlKeywordIterator end()
Return the ending iterator.
Definition: PvlContainer.h:194
 
QString name() const
Returns the container name.
Definition: PvlContainer.h:63
 
PvlKeyword & findKeyword(const QString &name)
Find a keyword with a specified name.
Definition: PvlContainer.cpp:62
 
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
 
A single keyword-value pair.
Definition: PvlKeyword.h:87
 
static bool stringEqual(const QString &string1, const QString &string2)
Checks to see if two QStrings are equal.
Definition: PvlKeyword.cpp:592
 
Contains Pvl Groups and Pvl Objects.
Definition: PvlObject.h:61
 
PvlObjectIterator beginObject()
Returns the index of the beginning object.
Definition: PvlObject.h:237
 
ConstPvlGroupIterator findGroup(const QString &name, ConstPvlGroupIterator beg, ConstPvlGroupIterator end) const
Find a group with the specified name, within these indexes.
Definition: PvlObject.h:143
 
bool hasKeyword(const QString &kname, FindOptions opts) const
See if a keyword is in the current PvlObject, or deeper inside other PvlObjects and Pvlgroups within ...
Definition: PvlObject.cpp:239
 
PvlGroupIterator beginGroup()
Returns the beginning group index.
Definition: PvlObject.h:91
 
const PvlObject & operator=(const PvlObject &other)
This is an assignment operator.
Definition: PvlObject.cpp:824
 
friend std::istream & operator>>(std::istream &is, PvlObject &result)
This method reads a PvlObject from the input stream.
Definition: PvlObject.cpp:708
 
friend std::ostream & operator<<(std::ostream &os, Isis::PvlObject &object)
Outputs the PvlObject data to a specified output stream.
Definition: PvlObject.cpp:526
 
QList< Isis::PvlGroup >::iterator PvlGroupIterator
The counter for groups.
Definition: PvlObject.h:83
 
PvlGroup & group(const int index)
Return the group at the specified index.
Definition: PvlObject.cpp:455
 
ConstPvlGroupIterator beginGroup() const
Returns the beginning group index.
Definition: PvlObject.h:100
 
PvlObject()
Creates a blank PvlObject.
Definition: PvlObject.cpp:27
 
QList< PvlObject >::const_iterator ConstPvlObjectIterator
Definition: PvlObject.h:230
 
bool hasObject(const QString &name) const
Returns a boolean value based on whether the object exists in the current PvlObject or not.
Definition: PvlObject.h:325
 
int groups() const
Returns the number of groups contained.
Definition: PvlObject.h:75
 
void addLogGroup(Isis::PvlGroup &group)
Add a group to the object and report it to the log/terminal.
Definition: PvlObject.cpp:159
 
PvlObjectIterator findObject(const QString &name, PvlObjectIterator beg, PvlObjectIterator end)
Find the index of object with a specified name, between two indexes.
Definition: PvlObject.h:276
 
void deleteObject(const QString &name)
Remove an object from the current PvlObject.
Definition: PvlObject.cpp:369
 
int objects() const
Returns the number of objects.
Definition: PvlObject.h:221
 
QList< PvlObject >::iterator PvlObjectIterator
The counter for objects.
Definition: PvlObject.h:229
 
void operator+=(const Isis::PvlGroup &group)
Definition: PvlObject.h:194
 
PvlObject & object(const int index)
Return the object at the specified index.
Definition: PvlObject.cpp:492
 
ConstPvlGroupIterator endGroup() const
Returns the const ending group index.
Definition: PvlObject.h:118
 
bool hasGroup(const QString &name) const
Returns a boolean value based on whether the object has the specified group or not.
Definition: PvlObject.h:212
 
void clear()
Remove everything from the current PvlObject.
Definition: PvlObject.h:343
 
FindOptions
A collection of options to use when finding.
Definition: PvlObject.h:154
 
@ Traverse
Search child objects.
Definition: PvlObject.h:158
 
@ None
Search only the current level.
Definition: PvlObject.h:156
 
QList< Isis::PvlGroup >::const_iterator ConstPvlGroupIterator
Definition: PvlObject.h:84
 
void addObject(const PvlObject &object)
Add a PvlObject.
Definition: PvlObject.h:309
 
PvlObjectIterator endObject()
Returns the index of the ending object.
Definition: PvlObject.h:255
 
PvlKeyword & findKeyword(const QString &kname, FindOptions opts)
Finds a keyword in the current PvlObject, or deeper inside other PvlObjects and Pvlgroups within this...
Definition: PvlObject.cpp:180
 
void validateObject(PvlObject &pPvlObj)
Validate Object.
Definition: PvlObject.cpp:844
 
ConstPvlObjectIterator endObject() const
Returns the const index of the ending object.
Definition: PvlObject.h:264
 
void addGroup(const Isis::PvlGroup &group)
Add a group to the object.
Definition: PvlObject.h:186
 
ConstPvlObjectIterator findObject(const QString &name, ConstPvlObjectIterator beg, ConstPvlObjectIterator end) const
Find the index of object with a specified name, between two indexes.
Definition: PvlObject.h:291
 
void deleteGroup(const QString &name)
Remove a group from the current PvlObject.
Definition: PvlObject.cpp:411
 
PvlGroupIterator endGroup()
Returns the ending group index.
Definition: PvlObject.h:109
 
PvlGroupIterator findGroup(const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
Find a group with the specified name, within these indexes.
Definition: PvlObject.h:129
 
ConstPvlObjectIterator beginObject() const
Returns the const index of the beginning object.
Definition: PvlObject.h:246
 
bool operator==(const PvlObject &object) const
Compares two PvlObjects.
Definition: PvlObject.h:337
 
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
 
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16