Isis 3 Programmer Reference
Isis::ImageList::XmlHandler Class Reference

This class is used to read an images.xml file into an image list. More...

Inheritance diagram for Isis::ImageList::XmlHandler:
Inheritance graph
Collaboration diagram for Isis::ImageList::XmlHandler:
Collaboration graph

Public Member Functions

 XmlHandler (ImageList *imageList, Project *project, QString dataRoot="")
 Create an XML Handler (reader) that can populate the Image list class data. More...
 
virtual bool startElement (const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)
 Handle an XML start element. More...
 
virtual bool endElement (const QString &namespaceURI, const QString &localName, const QString &qName)
 Handle an XML end element. More...
 
virtual void setReader (XmlStackedHandlerReader *)
 
void switchToNewHandler (XmlStackedHandler *nextHandler)
 Switch to a new content handler and continue processing using the new handler. More...
 

Protected Member Functions

XmlStackedHandlerReaderreader ()
 
const XmlStackedHandlerReaderreader () const
 
bool fatalError (const QXmlParseException &exception)
 

Private Member Functions

 Q_DISABLE_COPY (XmlHandler)
 

Private Attributes

ImageListm_imageList
 This stores a pointer to the image list that will be read into. More...
 
Projectm_project
 This stores a pointer to the project that the images in the image list will be a part of. More...
 
QString m_imageDataRoot
 This is a relative path to the image data. More...
 

Detailed Description

This class is used to read an images.xml file into an image list.

Author
2012-07-01 Steven Lambright

Definition at line 133 of file ImageList.h.

Constructor & Destructor Documentation

◆ XmlHandler()

Isis::ImageList::XmlHandler::XmlHandler ( ImageList imageList,
Project project,
QString  dataRoot = "" 
)

Create an XML Handler (reader) that can populate the Image list class data.

Parameters
imageListThe image list we're going to be initializing
projectThe project that contains the image list
See also
ImageList::save()

Definition at line 1358 of file ImageList.cpp.

Member Function Documentation

◆ endElement()

bool Isis::ImageList::XmlHandler::endElement ( const QString &  namespaceURI,
const QString &  localName,
const QString &  qName 
)
virtual

Handle an XML end element.

This handles <imageList> by opening and reading the images.xml file.

Returns
bool If we should continue reading the XML (usually true).
Exceptions
IException::Io"Unable to open with read access"
IException::Io"Failed to open image list XML"

Reimplemented from Isis::XmlStackedHandler.

Definition at line 1406 of file ImageList.cpp.

References _FILEINFO_, Isis::IException::Io, and Isis::XmlStackedHandlerReader::pushContentHandler().

◆ startElement()

bool Isis::ImageList::XmlHandler::startElement ( const QString &  namespaceURI,
const QString &  localName,
const QString &  qName,
const QXmlAttributes &  atts 
)
virtual

Handle an XML start element.

This expects <imageList> and <image> elements (it reads both the project XML and the images.xml file).

Returns
bool If we should continue reading the XML (usually true).

Reimplemented from Isis::XmlStackedHandler.

Definition at line 1371 of file ImageList.cpp.

References Isis::ImageList::name(), and Isis::ImageList::path().

◆ switchToNewHandler()

void Isis::XmlStackedHandler::switchToNewHandler ( XmlStackedHandler nextHandler)
inherited

Switch to a new content handler and continue processing using the new handler.

Definition at line 32 of file XmlStackedHandler.cpp.

Referenced by Isis::XmlStackedHandlerReader::pushContentHandler().

Member Data Documentation

◆ m_imageDataRoot

QString Isis::ImageList::XmlHandler::m_imageDataRoot
private

This is a relative path to the image data.

e.g. project/images or project/bundle/results/TIMESTAMP/images

Definition at line 157 of file ImageList.h.

◆ m_imageList

ImageList* Isis::ImageList::XmlHandler::m_imageList
private

This stores a pointer to the image list that will be read into.

Definition at line 148 of file ImageList.h.

◆ m_project

Project* Isis::ImageList::XmlHandler::m_project
private

This stores a pointer to the project that the images in the image list will be a part of.

Definition at line 152 of file ImageList.h.


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