USGS

Isis 3.0 Developer's Reference (API)

Home

Isis::PvlObject Class Reference

Contains Pvl Groups and Pvl Objects. More...

#include <PvlObject.h>

Inherits Isis::PvlContainer.

Inherited by Isis::Pvl.

Public Types

enum  FindOptions { None, Traverse }
 A collection of options to use when finding. More...
typedef QList< Isis::PvlGroup >
::iterator 
PvlGroupIterator
 The counter for groups.
typedef QList< Isis::PvlGroup >
::const_iterator 
ConstPvlGroupIterator
typedef QList< PvlObject >
::iterator 
PvlObjectIterator
 The counter for objects.
typedef QList< PvlObject >
::const_iterator 
ConstPvlObjectIterator
enum  InsertMode { Append, Replace }
 Contains both modes: Append or Replace. More...
typedef QList< PvlKeyword >
::iterator 
PvlKeywordIterator
 The keyword iterator.
typedef QList< PvlKeyword >
::const_iterator 
ConstPvlKeywordIterator
 The const keyword iterator.

Public Member Functions

 PvlObject ()
 Creates a blank PvlObject.
 PvlObject (const QString &name)
 Creates a PvlObject with a specified name.
 PvlObject (const PvlObject &other)
 Copy constructor.
int groups () const
 Returns the number of groups contained.
PvlGroupgroup (const int index)
 Return the group at the specified index.
const PvlGroupgroup (const int index) const
 Return the group at the specified index.
PvlGroupIterator beginGroup ()
 Returns the beginning group index.
ConstPvlGroupIterator beginGroup () const
 Returns the beginning group index.
PvlGroupIterator endGroup ()
 Returns the ending group index.
ConstPvlGroupIterator endGroup () const
 Returns the const ending group index.
PvlGroupIterator findGroup (const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
 Find a group with the specified name, within these indexes.
ConstPvlGroupIterator findGroup (const QString &name, ConstPvlGroupIterator beg, ConstPvlGroupIterator end) const
 Find a group with the specified name, within these indexes.
PvlKeywordfindKeyword (const QString &kname, FindOptions opts)
 Finds a keyword in the current PvlObject, or deeper inside other PvlObjects and Pvlgroups within this one.
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 this one.
Isis::PvlGroupfindGroup (const QString &name, FindOptions opts=None)
 Finds a group within the current PvlObject.
const Isis::PvlGroupfindGroup (const QString &name, FindOptions opts=None) const
 Finds a group within the current PvlObject.
void addGroup (const Isis::PvlGroup &group)
 Add a group to the object.
void operator+= (const Isis::PvlGroup &group)
void operator+= (const Isis::PvlObject &obj)
void deleteGroup (const QString &name)
 Remove a group from the current PvlObject.
void deleteGroup (const int index)
 Remove a group from the current PvlObject.
bool hasGroup (const QString &name) const
 Returns a boolean value based on whether the object has the specified group or not.
int objects () const
 Returns the number of objects.
PvlObjectobject (const int index)
 Return the object at the specified index.
const PvlObjectobject (const int index) const
 Return the object at the specified index.
PvlObjectIterator beginObject ()
 Returns the index of the beginning object.
ConstPvlObjectIterator beginObject () const
 Returns the const index of the beginning object.
PvlObjectIterator endObject ()
 Returns the index of the ending object.
ConstPvlObjectIterator endObject () const
 Returns the const index of the ending object.
PvlObjectIterator findObject (const QString &name, PvlObjectIterator beg, PvlObjectIterator end)
 Find the index of object with a specified name, between two indexes.
ConstPvlObjectIterator findObject (const QString &name, ConstPvlObjectIterator beg, ConstPvlObjectIterator end) const
 Find the index of object with a specified name, between two indexes.
PvlObjectfindObject (const QString &name, FindOptions opts=None)
 Find an object within the current PvlObject.
const PvlObjectfindObject (const QString &name, FindOptions opts=None) const
 Find an object within the current PvlObject.
void addObject (const PvlObject &object)
 Add a PvlObject.
void deleteObject (const QString &name)
 Remove an object from the current PvlObject.
void deleteObject (const int index)
 Remove an object from the current PvlObject.
bool hasObject (const QString &name) const
 Returns a boolean value based on whether the object exists in the current PvlObject or not.
bool operator== (const PvlObject &object) const
 Compares two PvlObjects.
void clear ()
 Remove everything from the current PvlObject.
const PvlObjectoperator= (const PvlObject &other)
 This is an assignment operator.
void validateObject (PvlObject &pPvlObj)
 Validate Object.
void setName (const QString &name)
 Set the name of the container.
QString name () const
 Returns the container name.
bool isNamed (const QString &match) const
 Returns whether the given string is equal to the container name or not.
QString type () const
 Returns the container type.
int keywords () const
 Returns the number of keywords contained in the PvlContainer.
void addKeyword (const PvlKeyword &keyword, const InsertMode mode=Append)
 Add a keyword to the container.
PvlKeywordIterator addKeyword (const PvlKeyword &keyword, PvlKeywordIterator pos)
 Insert a keyword at the specified iterator position.
void operator+= (const PvlKeyword &keyword)
 When you use the += operator with a PvlKeyword, it will call the addKeyword() method.
PvlKeywordfindKeyword (const QString &name)
 Find a keyword with a specified name.
const PvlKeywordfindKeyword (const QString &name) const
 Find a keyword with a specified name.
PvlKeywordIterator findKeyword (const QString &name, PvlKeywordIterator beg, PvlKeywordIterator end)
 Find the index of a keyword, using iterators.
ConstPvlKeywordIterator findKeyword (const QString &name, ConstPvlKeywordIterator beg, ConstPvlKeywordIterator end) const
 Find the index of a keyword, using iterators.
PvlKeywordoperator[] (const QString &name)
 When you use the [] operator with a (string) name, it will call the findKeyword() method.
PvlKeywordoperator[] (const int index)
 Return the PvlKeyword object at the specified index.
PvlKeywordoperator[] (const char *name)
 When you use the [] operator with a (char) name, it will call the findKeyword() method.
const PvlKeywordoperator[] (const QString &name) const
 When you use the [] operator with a (string) name, it will call the findKeyword() method.
const PvlKeywordoperator[] (const int index) const
 Return the PvlKeyword object at the specified index.
PvlKeyword operator[] (const char *name) const
 When you use the [] operator with a (char) name, it will call the findKeyword() method.
bool hasKeyword (const QString &name) const
 Check to see if a keyword exists.
PvlKeywordIterator begin ()
 Return the beginning iterator.
ConstPvlKeywordIterator begin () const
 Return the const beginning iterator.
PvlKeywordIterator end ()
 Return the ending iterator.
ConstPvlKeywordIterator end () const
 Return the const ending iterator.
void deleteKeyword (const QString &name)
 Remove a specified keyword.
void deleteKeyword (const int index)
 Remove the specified keyword.
bool cleanDuplicateKeywords ()
 Removes keywords from the container that have BOTH the same name and value.
void operator-= (const QString &name)
 When you use the -= operator with a (string) name, it will call the deleteKeyword() method.
void operator-= (const PvlKeyword &key)
 When you use the -= operator with a PvlKeyword object, it will call the deleteKeyword() method.
QString fileName () const
 Returns the filename used to initialise the Pvl object.
void setFormatTemplate (PvlContainer &ref)
bool hasFormatTemplate ()
PvlContainerformatTemplate ()
PvlFormatformat ()
void setFormat (PvlFormat *format)
int indent ()
void setIndent (int indent)
int comments () const
QString comment (const int index) const
void addComment (const QString &comment)
PvlKeywordnameKeyword ()
const PvlKeywordnameKeyword () const

Protected Member Functions

void init ()
 Sets the filename to blank.
void setFileName (const QString &filename)
 Sets the filename to the specified string.
void validateAllKeywords (PvlContainer &pPvlCont)
 Validate All the Keywords in a Container comparing with the Template.
void validateRepeatOption (PvlKeyword &pPvlTmplKwrd, PvlContainer &pPvlCont)
 Validate the Repeat Option for a Keyword.

Protected Attributes

QString m_filename
 This contains the filename used to initialize the pvl object.
PvlKeyword m_name
 This is the name keyword.
QList< PvlKeywordm_keywords
 This is the vector of PvlKeywords the container is holding.
PvlContainerm_formatTemplate

Friends

std::ostream & operator<< (std::ostream &os, Isis::PvlObject &object)
 Outputs the PvlObject data to a specified output stream.
std::istream & operator>> (std::istream &is, PvlObject &result)
 This method reads a PvlObject from the input stream.

Detailed Description

Contains Pvl Groups and Pvl Objects.

Contains Pvl groups and objects. Organizes text on output to be indented correctly.

Author
2002-10-11 Jeff Anderson

Member Typedef Documentation

typedef QList<PvlKeyword>::const_iterator Isis::PvlContainer::ConstPvlKeywordIterator
inherited

The const keyword iterator.

The keyword iterator.

The counter for objects.

Member Enumeration Documentation

A collection of options to use when finding.

Enumerator:
None 

Search only the current level.

Traverse 

Search child objects.

Contains both modes: Append or Replace.

Enumerator:
Append 
Replace 

Constructor & Destructor Documentation

Isis::PvlObject::PvlObject ( )

Creates a blank PvlObject.

Isis::PvlObject::PvlObject ( const QString &  name)

Creates a PvlObject with a specified name.

Parameters
nameThe name of the PvlObject.
Isis::PvlObject::PvlObject ( const PvlObject other)

Copy constructor.

Member Function Documentation

void Isis::PvlContainer::addComment ( const QString &  comment)
inlineinherited
PvlContainer::PvlKeywordIterator Isis::PvlContainer::addKeyword ( const PvlKeyword keyword,
PvlKeywordIterator  pos 
)
inherited

Insert a keyword at the specified iterator position.

This method provides the capability to insert a keyword at the specified iterator position. The process follows the description of the STL vector definition along with all the caveats (e.g., invalidation of iterators upon insert operations).

This method will not perform any checks for the existance of the keyword. This could lead to multiple instances of the same keyword in the same container. It is up to the caller to manage this issue.

Parameters
keyKeyword to insert
posIterator position where to insert the new keyword
Returns
PvlContainer::PvlKeywordIterator Returns the position of the inserted keyword per the STL vector documentation.
PvlKeywordIterator Isis::PvlContainer::begin ( )
inlineinherited
ConstPvlKeywordIterator Isis::PvlContainer::begin ( ) const
inlineinherited

Return the const beginning iterator.

Returns
The const beginning iterator.

References Isis::PvlContainer::m_keywords.

PvlGroupIterator Isis::PvlObject::beginGroup ( )
inline

Returns the beginning group index.

Returns
The iterator of the beginning group..

Referenced by deleteGroup(), findGroup(), hasGroup(), and Isis::DbAccess::load().

ConstPvlGroupIterator Isis::PvlObject::beginGroup ( ) const
inline

Returns the beginning group index.

Returns
The iterator of the beginning group..
PvlObjectIterator Isis::PvlObject::beginObject ( )
inline

Returns the index of the beginning object.

Returns
The beginning object's index.

Referenced by deleteObject(), findObject(), Isis::Strategy::getObjectList(), hasObject(), and Isis::ImageReader::read().

ConstPvlObjectIterator Isis::PvlObject::beginObject ( ) const
inline

Returns the const index of the beginning object.

Returns
The beginning object's index.
bool Isis::PvlContainer::cleanDuplicateKeywords ( )
inherited

Removes keywords from the container that have BOTH the same name and value.

Returns
bool True if one or more keywords were deleted; False if no keywords were deleted.
void Isis::PvlObject::clear ( )
inline

Remove everything from the current PvlObject.

Reimplemented from Isis::PvlContainer.

Referenced by IsisAml::CommandLine(), Isis::Preference::Preferences(), and Isis::ControlNetFileV0001::Read().

QString Isis::PvlContainer::comment ( const int  index) const
inlineinherited
int Isis::PvlContainer::comments ( ) const
inlineinherited
void Isis::PvlObject::deleteGroup ( const QString &  name)
void Isis::PvlObject::deleteGroup ( const int  index)

Remove a group from the current PvlObject.

Parameters
indexThe index of the PvlGroup to remove.
Exceptions
IException

References _FILEINFO_, beginGroup(), Isis::PvlContainer::m_filename, Isis::PvlContainer::name(), Isis::PvlContainer::type(), and Isis::IException::Unknown.

void Isis::PvlContainer::deleteKeyword ( const int  index)
inherited

Remove the specified keyword.

Parameters
indexThe index of the keyword to remove.
Exceptions
iException::PvlKeyword doesn't exist.

References _FILEINFO_.

void Isis::PvlObject::deleteObject ( const QString &  name)
void Isis::PvlObject::deleteObject ( const int  index)

Remove an object from the current PvlObject.

Parameters
indexThe index of the PvlObject to remove.
Exceptions
IException

References _FILEINFO_, beginObject(), Isis::PvlContainer::m_filename, Isis::PvlContainer::name(), Isis::PvlContainer::type(), and Isis::IException::Unknown.

PvlKeywordIterator Isis::PvlContainer::end ( )
inlineinherited
ConstPvlKeywordIterator Isis::PvlContainer::end ( ) const
inlineinherited

Return the const ending iterator.

Returns
The const ending iterator.

References Isis::PvlContainer::m_keywords.

PvlGroupIterator Isis::PvlObject::endGroup ( )
inline

Returns the ending group index.

Returns
The iterator of the ending group.

Referenced by deleteGroup(), findGroup(), hasGroup(), and Isis::DbAccess::load().

ConstPvlGroupIterator Isis::PvlObject::endGroup ( ) const
inline

Returns the const ending group index.

Returns
The iterator of the ending group.
PvlObjectIterator Isis::PvlObject::endObject ( )
inline

Returns the index of the ending object.

Returns
The ending object's index.

Referenced by deleteObject(), findObject(), Isis::Strategy::getObjectList(), hasObject(), and Isis::ImageReader::read().

ConstPvlObjectIterator Isis::PvlObject::endObject ( ) const
inline

Returns the const index of the ending object.

Returns
The ending object's index.
PvlGroupIterator Isis::PvlObject::findGroup ( const QString &  name,
PvlGroupIterator  beg,
PvlGroupIterator  end 
)
inline

Find a group with the specified name, within these indexes.

Parameters
nameThe name of the group to look for.
begThe lower index
endThe higher index

Referenced by Isis::SerialNumberList::add(), Isis::ControlNetDiff::addTolerances(), Isis::AlphaCube::AlphaCube(), Isis::AmicaCamera::AmicaCamera(), Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::CameraFactory::CameraVersion(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::TiffImporter::convertProjection(), Isis::InterestOperatorFactory::Create(), Isis::ShapeModelFactory::create(), Isis::CameraFactory::Create(), Isis::PolygonSeederFactory::Create(), Isis::AutoRegFactory::Create(), Isis::Gui::Create(), Isis::ProjectionFactory::Create(), Isis::ProjectionFactory::CreateForCube(), Isis::ProjectionFactory::CreateFromCube(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::CubeIoHandler::CubeIoHandler(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), deleteGroup(), Isis::DemShape::DemShape(), Isis::Equirectangular::Equirectangular(), Isis::KernelDb::findAll(), Isis::MosaicSceneWidget::fromPvl(), Isis::CubeViewport::getBandFilterName(), Isis::Plugin::GetPlugin(), Isis::GroundGrid::GroundGrid(), Isis::Camera::GroundRange(), Isis::Cube::group(), hasGroup(), Isis::Spice::hasKernels(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::IdealCamera::IdealCamera(), Isis::VimsSkyMap::Init(), Isis::VimsGroundMap::Init(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::LambertConformal::LambertConformal(), Isis::Preference::Load(), Isis::Stretch::Load(), Isis::DbAccess::load(), Isis::KernelDb::loadSystemDb(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LunarAzimuthalEqualArea::LunarAzimuthalEqualArea(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::KernelDb::matches(), Isis::MdisCamera::MdisCamera(), Isis::Mercator::Mercator(), Isis::MiniRF::MiniRF(), Isis::Process::MissionData(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NaifDskShape::NaifDskShape(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::ObliqueCylindrical::ObliqueCylindrical(), Isis::Orthographic::Orthographic(), Isis::LimitPolygonSeeder::Parse(), Isis::StripPolygonSeeder::Parse(), Isis::GridPolygonSeeder::Parse(), Isis::PolygonSeeder::Parse(), Isis::ControlNetValidMeasure::Parse(), Isis::InterestOperator::Parse(), Isis::AutoReg::Parse(), Isis::Planar::Planar(), Isis::PointPerspective::PointPerspective(), Isis::PolarStereographic::PolarStereographic(), Isis::ProcessImportPds::ProcessImportPds(), Isis::Progress::Progress(), Isis::Projection::Projection(), Isis::Cube::putGroup(), Isis::PvlKeyword::reform(), Isis::ReseauDistortionMap::ReseauDistortionMap(), Isis::RingCylindrical::RingCylindrical(), Isis::Camera::ringRange(), Isis::ProjectionFactory::RingsCreate(), Isis::ProjectionFactory::RingsCreateForCube(), Isis::ProjectionFactory::RingsCreateFromCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::Robinson::Robinson(), Isis::UserInterface::SaveHistory(), Isis::ProcessMosaic::SetInputCube(), Isis::ProcessMosaic::SetMosaicOrigin(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessGroundPolygons::SetStatCubes(), Isis::SimpleCylindrical::SimpleCylindrical(), Isis::Sinusoidal::Sinusoidal(), Isis::Spice::Spice(), Isis::SsiCamera::SsiCamera(), Isis::ProcessExportPds::StandardAllMapping(), Isis::Target::Target(), Isis::TProjection::TargetRadii(), Isis::Pipeline::TemporaryFolder(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::IException::toString(), Isis::ProcessImportPds::TranslatePdsProjection(), Isis::TransverseMercator::TransverseMercator(), Isis::AlphaCube::UpdateGroup(), Isis::UvvisCamera::UvvisCamera(), validateObject(), Isis::Pvl::validatePvl(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

ConstPvlGroupIterator Isis::PvlObject::findGroup ( const QString &  name,
ConstPvlGroupIterator  beg,
ConstPvlGroupIterator  end 
) const
inline

Find a group with the specified name, within these indexes.

Parameters
nameThe name of the group to look for.
begThe lower index
endThe higher index
Isis::PvlGroup & Isis::PvlObject::findGroup ( const QString &  name,
PvlObject::FindOptions  opts = None 
)

Finds a group within the current PvlObject.

Parameters
nameThe name of the group to look for.
optsThe FindOptions option (None or Traverse).
Returns
The PvlGroup object sought for.
Exceptions
IException

References _FILEINFO_, beginGroup(), endGroup(), Isis::PvlContainer::m_filename, Traverse, and Isis::IException::Unknown.

const Isis::PvlGroup & Isis::PvlObject::findGroup ( const QString &  name,
PvlObject::FindOptions  opts = None 
) const

Finds a group within the current PvlObject.

Parameters
nameThe name of the group to look for.
optsThe FindOptions option (None or Traverse).
Returns
The PvlGroup object sought for.
Exceptions
IException

References _FILEINFO_, beginGroup(), endGroup(), Isis::PvlContainer::m_filename, Traverse, and Isis::IException::Unknown.

const Isis::PvlKeyword & Isis::PvlContainer::findKeyword ( const QString &  name) const
inherited

Find a keyword with a specified name.

Parameters
nameThe name of the keyword to look for.
Returns
The PvlKeyword object.
Exceptions
IExceptionThe keyword doesn't exist.

References _FILEINFO_.

PvlKeyword & Isis::PvlObject::findKeyword ( const QString &  kname,
FindOptions  opts 
)

Finds a keyword in the current PvlObject, or deeper inside other PvlObjects and Pvlgroups within this one.

Note: This member has the same name as the PvlContainer and hides those implementations, but with the using statement the parents FindKeyword members ar made visible. Note: If more than one occurance of a Keyword appears below this Object no guarantee is made as to which one is returned.

Parameters
knameThe name of the keyword to look for.
optsThe FindOptions option (None or Traverse).
Returns
The keyword sought
Exceptions
IException

References _FILEINFO_, Isis::PvlContainer::begin(), Isis::PvlContainer::end(), group(), Isis::PvlContainer::m_filename, None, and Isis::IException::Unknown.

Referenced by Isis::ControlNetDiff::compare(), Isis::CubeIoHandler::CubeIoHandler(), Isis::Cube::deleteBlob(), Isis::SpicePosition::LoadCache(), Isis::SpiceRotation::LoadCache(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::ProcessImportPds::ProcessLabel(), Isis::ProcessMosaic::SetMosaicOrigin(), Isis::SsiCamera::SsiCamera(), Isis::ProcessExportPds::StandardAllMapping(), validateObject(), and Isis::Pvl::validatePvl().

PvlContainer::PvlKeywordIterator Isis::PvlContainer::findKeyword ( const QString &  name,
PvlContainer::PvlKeywordIterator  beg,
PvlContainer::PvlKeywordIterator  end 
)
inherited

Find the index of a keyword, using iterators.

Parameters
nameThe name of the keyword.
begThe beginning iterator.
endThe ending iterator.
Returns
The keyword index.
PvlContainer::ConstPvlKeywordIterator Isis::PvlContainer::findKeyword ( const QString &  name,
PvlContainer::ConstPvlKeywordIterator  beg,
PvlContainer::ConstPvlKeywordIterator  end 
) const
inherited

Find the index of a keyword, using iterators.

Parameters
nameThe name of the keyword.
begThe beginning iterator.
endThe ending iterator.
Returns
The keyword index.
PvlObjectIterator Isis::PvlObject::findObject ( const QString &  name,
PvlObjectIterator  beg,
PvlObjectIterator  end 
)
inline

Find the index of object with a specified name, between two indexes.

Parameters
nameThe name of the object to find.
begThe lower index.
endThe higher index.
Returns
The index of the object.

Referenced by Isis::SerialNumberList::add(), Isis::Albedo::Albedo(), Isis::AlbedoAtm::AlbedoAtm(), Isis::AlphaCube::AlphaCube(), Isis::AtmosModel::AtmosModel(), Isis::AutoReg::AutoReg(), Isis::Camera::Camera(), Isis::ControlNetDiff::compare(), Isis::Cube::copy(), Isis::AtmosModelFactory::Create(), Isis::PhotoModelFactory::Create(), Isis::NormModelFactory::Create(), Isis::ProcessExportPds::CreateQubeLabel(), Isis::ProcessExportPds::CreateSpectralQubeLabel(), Isis::CubeIoHandler::CubeIoHandler(), Isis::CubeTileHandler::CubeTileHandler(), Isis::Cube::deleteGroup(), deleteObject(), Isis::Cube::externalCubeFileName(), Isis::KernelDb::findAll(), Isis::Image::fromPvl(), Isis::MosaicSceneWidget::fromPvl(), Isis::CubeViewport::getBandFilterName(), Isis::Cube::group(), Isis::Hapke::Hapke(), Isis::Cube::hasGroup(), hasObject(), Isis::ImageImporter::import(), Isis::Equalization::importStatistics(), Isis::DbAccess::load(), Isis::LunarLambert::LunarLambert(), Isis::LunarLambertEmpirical::LunarLambertEmpirical(), Isis::KernelDb::matches(), Isis::Minnaert::Minnaert(), Isis::MinnaertEmpirical::MinnaertEmpirical(), Isis::Mixed::Mixed(), Isis::MoonAlbedo::MoonAlbedo(), Isis::Cube::open(), Isis::AutoReg::Parse(), Isis::PhotoModel::PhotoModel(), Isis::ProcessImportPds::ProcessLabel(), Isis::Process::PropagateLabels(), Isis::Cube::putGroup(), Isis::ControlNetFileV0001::Read(), Isis::ControlNetFileV0002::Read(), Isis::MosaicController::readProject(), Isis::BandSpinBox::setBandBin(), Isis::Process::SetOutputCube(), Isis::ProcessMosaic::SetOutputCube(), Isis::Shade::Shade(), Isis::ShadeAtm::ShadeAtm(), Isis::ProcessExportPds::StandardAllMapping(), Isis::ProcessExportPds::StandardImageImage(), Isis::ProcessExportPds::StandardJP2Image(), Isis::ProcessMosaic::StartProcess(), Isis::Topo::Topo(), Isis::TopoAtm::TopoAtm(), Isis::ControlNetFileV0002::toPvl(), Isis::ControlNetFileV0001::toPvl(), Isis::AlphaCube::UpdateGroup(), Isis::SubArea::UpdateLabel(), Isis::CubeTileHandler::updateLabels(), Isis::CubeBsqHandler::updateLabels(), Isis::SpectralPlotTool::updateTool(), validateObject(), Isis::Pvl::validatePvl(), and Isis::Blob::Write().

ConstPvlObjectIterator Isis::PvlObject::findObject ( const QString &  name,
ConstPvlObjectIterator  beg,
ConstPvlObjectIterator  end 
) const
inline

Find the index of object with a specified name, between two indexes.

Parameters
nameThe name of the object to find.
begThe lower index.
endThe higher index.
Returns
The index of the object.
PvlObject & Isis::PvlObject::findObject ( const QString &  name,
PvlObject::FindOptions  opts = None 
)

Find an object within the current PvlObject.

Parameters
nameThe object name to look for.
optsThe FindOptions option (None or Traverse).
Returns
The PvlObject sought for.
Exceptions
IException

References _FILEINFO_, beginObject(), endObject(), Isis::PvlContainer::m_filename, Traverse, and Isis::IException::Unknown.

const PvlObject & Isis::PvlObject::findObject ( const QString &  name,
FindOptions  opts = None 
) const

Find an object within the current PvlObject.

Parameters
nameThe object name to look for.
optsThe FindOptions option (None or Traverse).
Returns
The PvlObject sought for.
Exceptions
IException

References _FILEINFO_, beginObject(), endObject(), Isis::PvlContainer::m_filename, Traverse, and Isis::IException::Unknown.

PvlContainer* Isis::PvlContainer::formatTemplate ( )
inlineinherited
const Isis::PvlGroup & Isis::PvlObject::group ( const int  index) const

Return the group at the specified index.

Parameters
indexThe index of the group.
Returns
The PvlGroup sought for.
Exceptions
IException

References _FILEINFO_, Isis::Message::ArraySubscriptNotInRange(), and Isis::IException::Programmer.

bool Isis::PvlContainer::hasFormatTemplate ( )
inlineinherited
bool Isis::PvlObject::hasGroup ( const QString &  name) const
inline
bool Isis::PvlContainer::hasKeyword ( const QString &  name) const
inherited

Check to see if a keyword exists.

Parameters
nameThe name of the keyword to check for.
Returns
True if the keyword exists, false if it doesn't.

Referenced by Isis::SerialNumberList::add(), Isis::Latitude::add(), Isis::PvlTranslationTable::AddTable(), Isis::Albedo::Albedo(), Isis::AlbedoAtm::AlbedoAtm(), Isis::AtmosModel::AtmosModel(), Isis::Camera::Camera(), Isis::CameraFactory::CameraVersion(), IsisAml::CommandLine(), Isis::ControlNetDiff::compareGroups(), Isis::ShapeModelFactory::create(), Isis::CameraFactory::Create(), Isis::AtmosModelFactory::Create(), Isis::PhotoModelFactory::Create(), Isis::NormModelFactory::Create(), Isis::Gui::Create(), Isis::ControlNetFilter::CubeConvexHullFilter(), Isis::ControlNetFilter::CubeDistanceFilter(), Isis::ControlNetFilter::CubeNameExpressionFilter(), Isis::ControlNetFilter::CubeNumPointsFilter(), Isis::DemShape::DemShape(), Isis::Equirectangular::Equirectangular(), Isis::KernelDb::findAll(), Isis::CubeViewport::getBandFilterName(), Isis::UniversalGroundMap::GroundRange(), Isis::Camera::GroundRange(), Isis::Hapke::Hapke(), Isis::Spice::hasKernels(), Isis::HiLab::HiLab(), Isis::IdealCamera::IdealCamera(), Isis::PvlTranslationTable::InputDefault(), Isis::PvlTranslationManager::InputHasKeyword(), Isis::PvlTranslationManager::InputKeyword(), Isis::PvlTranslationTable::InputKeywordName(), Isis::PvlTranslationTable::IsAuto(), Isis::PvlTranslationTable::IsOptional(), Isis::LambertConformal::LambertConformal(), Isis::Latitude::Latitude(), Isis::Preference::Load(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LunarLambert::LunarLambert(), Isis::LunarLambertEmpirical::LunarLambertEmpirical(), Isis::RingPlaneProjection::Mapping(), Isis::TProjection::Mapping(), Isis::KernelDb::matches(), Isis::Mercator::Mercator(), Isis::Minnaert::Minnaert(), Isis::MinnaertEmpirical::MinnaertEmpirical(), Isis::Mixed::Mixed(), Isis::MoonAlbedo::MoonAlbedo(), Isis::NaifDskShape::NaifDskShape(), Isis::ObliqueCylindrical::ObliqueCylindrical(), Isis::operator<<(), Isis::Orthographic::Orthographic(), Isis::PvlTranslationTable::OutputName(), Isis::PvlTranslationTable::OutputPosition(), Isis::LimitPolygonSeeder::Parse(), Isis::GridPolygonSeeder::Parse(), Isis::StripPolygonSeeder::Parse(), Isis::PolygonSeeder::Parse(), Isis::AutoReg::Parse(), Isis::PhotoModel::PhotoModel(), Isis::Planar::Planar(), Isis::ControlNetFilter::PointDistanceFilter(), Isis::ControlNetFilter::PointEditLockFilter(), Isis::ControlNetFilter::PointGoodnessOfFitFilter(), Isis::ControlNetFilter::PointLatLonFilter(), Isis::ControlNetFilter::PointMeasurePropertiesFilter(), Isis::ControlNetFilter::PointMeasuresFilter(), Isis::ControlNetFilter::PointNumMeasuresEditLockFilter(), Isis::PointPerspective::PointPerspective(), Isis::ControlNetFilter::PointPixelShiftFilter(), Isis::ControlNetFilter::PointPropertiesFilter(), Isis::ControlNetFilter::PointResMagnitudeFilter(), Isis::PolarStereographic::PolarStereographic(), Isis::Projection::Projection(), Isis::AutoReg::RegTemplate(), Isis::RingCylindrical::RingCylindrical(), Isis::RingPlaneProjection::RingPlaneProjection(), Isis::Camera::ringRange(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::Robinson::Robinson(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessImportFits::setProcessFileStructure(), Isis::Shade::Shade(), Isis::ShadeAtm::ShadeAtm(), Isis::SimpleCylindrical::SimpleCylindrical(), Isis::Sinusoidal::Sinusoidal(), Isis::ProcessExportPds::StandardAllMapping(), Isis::ProcessImportFits::standardInstrumentGroup(), Isis::Target::Target(), Isis::TProjection::TargetRadii(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::Topo::Topo(), Isis::TopoAtm::TopoAtm(), Isis::ControlNetFileV0002::toPvl(), Isis::IException::toString(), Isis::TProjection::TProjection(), Isis::PvlTranslationManager::Translate(), Isis::PvlTranslationTable::Translate(), Isis::TransverseMercator::TransverseMercator(), Isis::SubArea::UpdateLabel(), Isis::SpectralPlotTool::updateTool(), Isis::PvlContainer::validateAllKeywords(), validateObject(), and Isis::Pvl::validatePvl().

bool Isis::PvlObject::hasKeyword ( const QString &  kname,
FindOptions  opts 
) const

See if a keyword is in the current PvlObject, or deeper inside other PvlObjects and Pvlgroups within this one.

Note: This member has the same name as the PvlContainer and hides those implementations, but with the using statement the parents FindKeyword members ar made visible.

Parameters
knameThe name of the keyword to look for.
optsThe FindOptions option (None or Traverse).
Returns
True if the Keyword exists False otherwise.

References Isis::PvlContainer::begin(), Isis::PvlContainer::end(), group(), and None.

Referenced by Isis::CubeTileHandler::CubeTileHandler(), Isis::MosaicAreaTool::fromPvl(), Isis::ImageFileListWidget::fromPvl(), Isis::MosaicControlNetTool::fromPvl(), Isis::Image::fromPvl(), Isis::MosaicGridTool::fromPvl(), Isis::Cube::hasTable(), Isis::Image::isFootprintable(), Isis::SpicePosition::LoadCache(), Isis::SpiceRotation::LoadCache(), Isis::Cube::open(), Isis::operator<<(), Isis::Table::ReadInit(), Isis::ProcessMosaic::SetMosaicOrigin(), Isis::ProcessExportPds::StandardAllMapping(), Isis::ProcessExportPds::StandardImageImage(), Isis::ProcessExportPds::StandardJP2Image(), validateObject(), Isis::Pvl::validatePvl(), and Isis::Table::WriteInit().

int Isis::PvlContainer::indent ( )
inlineinherited
void Isis::PvlContainer::init ( )
protectedinherited

Sets the filename to blank.

bool Isis::PvlContainer::isNamed ( const QString &  match) const
inlineinherited

Returns whether the given string is equal to the container name or not.

Parameters
matchThe string to compare to the name.
Returns
True if the name and string are the same, false if they are not.

References Isis::PvlContainer::m_name, and Isis::PvlKeyword::stringEqual().

Referenced by Isis::SessionLog::AddError(), Isis::Cube::copy(), Isis::Blob::Find(), Isis::KernelDb::findAll(), Isis::Cube::hasTable(), Isis::IsBlob(), Isis::Image::isFootprintable(), Isis::Table::ReadInit(), Isis::Process::SetOutputCube(), and Isis::Process::WriteHistory().

PvlKeyword& Isis::PvlContainer::nameKeyword ( )
inlineinherited

References Isis::PvlContainer::m_name.

Referenced by Isis::operator<<().

const PvlKeyword& Isis::PvlContainer::nameKeyword ( ) const
inlineinherited
const PvlObject & Isis::PvlObject::object ( const int  index) const

Return the object at the specified index.

Parameters
indexThe index of the object.
Returns
The PvlObject sought for.
Exceptions
IException::Programmer

References _FILEINFO_, Isis::Message::ArraySubscriptNotInRange(), and Isis::IException::Programmer.

void Isis::PvlContainer::operator+= ( const PvlKeyword keyword)
inlineinherited

When you use the += operator with a PvlKeyword, it will call the addKeyword() method.

Parameters
keywordThe PvlKeyword to be added.

References Isis::PvlContainer::addKeyword().

void Isis::PvlObject::operator+= ( const Isis::PvlGroup group)
inline

References addGroup().

void Isis::PvlObject::operator+= ( const Isis::PvlObject obj)
inline

References addObject().

void Isis::PvlContainer::operator-= ( const QString &  name)
inlineinherited

When you use the -= operator with a (string) name, it will call the deleteKeyword() method.

Parameters
nameThe name of the keyword to remove.

References Isis::PvlContainer::deleteKeyword().

void Isis::PvlContainer::operator-= ( const PvlKeyword key)
inlineinherited

When you use the -= operator with a PvlKeyword object, it will call the deleteKeyword() method.

Parameters
keyThe PvlKeyword object to remove.

References Isis::PvlContainer::deleteKeyword(), and Isis::PvlKeyword::name().

const PvlObject & Isis::PvlObject::operator= ( const PvlObject other)

This is an assignment operator.

bool Isis::PvlObject::operator== ( const PvlObject object) const
inline

Compares two PvlObjects.

Returns a boolean value based on the StringEqual() method.

Parameters
objectThe PvlObject to compare.
Returns
True if they are equal, false if not.

References Isis::PvlContainer::name(), and Isis::PvlKeyword::stringEqual().

PvlKeyword& Isis::PvlContainer::operator[] ( const QString &  name)
inlineinherited

When you use the [] operator with a (string) name, it will call the findKeyword() method.

Parameters
nameThe name of the keyword to find.

References Isis::PvlContainer::findKeyword().

Referenced by Isis::PvlContainer::operator[]().

PvlKeyword & Isis::PvlContainer::operator[] ( const int  index)
inherited

Return the PvlKeyword object at the specified index.

Parameters
indexThe index to use.
Returns
The PvlKeyword at the specified index.
Exceptions
iException::MessageThe index is out of bounds.

References _FILEINFO_, and Isis::Message::ArraySubscriptNotInRange().

PvlKeyword& Isis::PvlContainer::operator[] ( const char *  name)
inlineinherited

When you use the [] operator with a (char) name, it will call the findKeyword() method.

Parameters
nameThe name of the keyword to find.

References Isis::PvlContainer::operator[]().

const PvlKeyword& Isis::PvlContainer::operator[] ( const QString &  name) const
inlineinherited

When you use the [] operator with a (string) name, it will call the findKeyword() method.

Parameters
nameThe name of the keyword to find.

References Isis::PvlContainer::findKeyword().

const Isis::PvlKeyword & Isis::PvlContainer::operator[] ( const int  index) const
inherited

Return the PvlKeyword object at the specified index.

Parameters
indexThe index to use.
Returns
The PvlKeyword at the specified index.
Exceptions
iException::MessageThe index is out of bounds.

References _FILEINFO_, and Isis::Message::ArraySubscriptNotInRange().

PvlKeyword Isis::PvlContainer::operator[] ( const char *  name) const
inlineinherited

When you use the [] operator with a (char) name, it will call the findKeyword() method.

Parameters
nameThe name of the keyword to find.

References Isis::PvlContainer::operator[]().

void Isis::PvlContainer::setFileName ( const QString &  filename)
inlineprotectedinherited

Sets the filename to the specified string.

Parameters
filenameThe new filename to use.

References Isis::PvlContainer::m_filename.

void Isis::PvlContainer::setFormat ( PvlFormat format)
inlineinherited
void Isis::PvlContainer::setFormatTemplate ( PvlContainer ref)
inlineinherited
void Isis::PvlContainer::setIndent ( int  indent)
inlineinherited
void Isis::PvlContainer::setName ( const QString &  name)
inlineinherited
QString Isis::PvlContainer::type ( ) const
inlineinherited

Returns the container type.

Returns
The container type.

References Isis::PvlContainer::m_name, and Isis::PvlKeyword::name().

Referenced by deleteGroup(), deleteObject(), and Isis::operator<<().

void Isis::PvlContainer::validateAllKeywords ( PvlContainer pPvlCont)
protectedinherited

Validate All the Keywords in a Container comparing with the Template.

Validate all the PvlKeywords in this container.

Author
Sharmila Prasad (9/24/2010)
Parameters
pPvlCont- Container to be Validated
History:
2010-10-18 Sharmila Prasad - Added options "Type", "Range", "Value" for the keyword validation

References _FILEINFO_, Isis::PvlContainer::deleteKeyword(), Isis::PvlContainer::findKeyword(), Isis::PvlContainer::hasKeyword(), Isis::PvlKeyword::name(), and Isis::PvlKeyword::validateKeyword().

Referenced by Isis::PvlGroup::validateGroup(), validateObject(), and Isis::Pvl::validatePvl().

void Isis::PvlObject::validateObject ( PvlObject pPvlObj)

Validate Object.

Validate a PvlObject, comparing against corresponding Template PvlObject.

If the Objects are nested, it will recursively validate the PvlObject.

Template PvlObject has the format: Object = (objectName, optional/required)

Author
Sharmila Prasad (9/22/2010)
Parameters
pvlObj-PvlObject to be validated

References _FILEINFO_, deleteGroup(), deleteObject(), findGroup(), Isis::PvlContainer::findKeyword(), findKeyword(), findObject(), group(), groups(), hasGroup(), Isis::PvlContainer::hasKeyword(), hasKeyword(), hasObject(), Isis::PvlContainer::keywords(), Isis::PvlContainer::name(), object(), objects(), Isis::IException::User, Isis::PvlContainer::validateAllKeywords(), Isis::PvlGroup::validateGroup(), and validateObject().

Referenced by validateObject(), and Isis::Pvl::validatePvl().

void Isis::PvlContainer::validateRepeatOption ( PvlKeyword pPvlTmplKwrd,
PvlContainer pPvlCont 
)
protectedinherited

Validate the Repeat Option for a Keyword.

Validate Repeat Option in the Template Group.

This option indicates that a particular keyname can be repeated several times

Author
Sharmila Prasad (9/24/2010)
Parameters
pPvlTmplKwrd- Template Keyword wit
pPvlCont- Container with all the Keywords
History:
2010-10-18 Sharmila Prasad - Added option "Type" for the keyword validation

References Isis::PvlContainer::deleteKeyword(), Isis::PvlContainer::keywords(), Isis::PvlKeyword::name(), and Isis::PvlKeyword::validateKeyword().

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
Isis::PvlObject object 
)
friend

Outputs the PvlObject data to a specified output stream.

Parameters
osThe output stream to write to.
objectThe PvlObject to send to the output stream.
std::istream& operator>> ( std::istream &  is,
PvlObject result 
)
friend

This method reads a PvlObject from the input stream.

Member Data Documentation

QString Isis::PvlContainer::m_filename
protectedinherited

This contains the filename used to initialize the pvl object.

If the object was not initialized using a filename the string is empty.

Referenced by deleteGroup(), deleteObject(), Isis::PvlContainer::fileName(), findGroup(), findKeyword(), findObject(), Isis::PvlContainer::operator=(), Isis::Pvl::read(), and Isis::PvlContainer::setFileName().

QList<PvlKeyword> Isis::PvlContainer::m_keywords
protectedinherited

The documentation for this class was generated from the following files: