USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::Control Class Reference

#include <Control.h>

Inheritance diagram for Isis::Control:
Inheritance graph
Collaboration diagram for Isis::Control:
Collaboration graph

Classes

class  XmlHandler
 

Public Slots

void updateFileName (Project *)
 Change the on-disk file name for this control to be where the control ought to be in the given project.
 

Public Member Functions

 Control (QString cnetFileName, QObject *parent=0)
 Create a Control from control net located on disk.
 
 Control (ControlNet *controlNet, QString cnetFileName, QObject *parent=0)
 Create a Control from a control network that has already been created and read from disk.
 
 Control (FileName cnetFolder, XmlStackedHandlerReader *xmlReader, QObject *parent=0)
 Construct this control from XML.
 
ControlNetcontrolNet ()
 
void openControlNet ()
 Get the ControlNet * associated with this display property.
 
void closeControlNet ()
 Cleans up the ControlNet *.
 
ControlDisplayPropertiesdisplayProperties ()
 
const ControlDisplayPropertiesdisplayProperties () const
 
QString fileName () const
 
QString id () const
 
void save (QXmlStreamWriter &stream, const Project *project, FileName newProjectRoot) const
 
void copyToNewProjectRoot (const Project *project, FileName newProjectRoot)
 
void deleteFromDisk ()
 Delete the control net from disk.
 

Private Member Functions

 Control (const Control &other)
 
Controloperator= (const Control &rhs)
 

Private Attributes

ControlNetm_controlNet
 
ControlDisplayPropertiesm_displayProperties
 
QString m_fileName
 
QUuid * m_id
 File name of the control net associated with this control.
 

Detailed Description

Author
2012-06-12 Ken Edmundson and Tracie Sucharski
History:

2012-08-02 Kimberly Oyama - Added comments to some of the methods and member variables.

2012-09-11 Tracie Sucharski - Added new constructor that takes a ControlNet *.

Definition at line 54 of file Control.h.

Constructor & Destructor Documentation

Isis::Control::Control ( QString  cNetFileName,
QObject parent = 0 
)
explicit

Create a Control from control net located on disk.

Parameters
cNetFileNameThe name of the control net on disk
parentThe Qt-relationship parent

Definition at line 25 of file Control.cpp.

References m_id, and openControlNet().

Isis::Control::Control ( ControlNet controlNet,
QString  cnetFileName,
QObject parent = 0 
)
explicit

Create a Control from a control network that has already been created and read from disk.

Parameters
controlNetThe actual control network
cnetFileNameThe name of the control net on disk
parentThe Qt-relationship parent

Definition at line 48 of file Control.cpp.

References m_id.

Isis::Control::Control ( FileName  cnetFolder,
XmlStackedHandlerReader xmlReader,
QObject parent = 0 
)

Construct this control from XML.

TODO: Is this for reading saved project?

Parameters
cnetFolderLocation of control xml - /work/.../projectRoot/cnets/controlNetwork1
xmlReaderAn XML reader that's up to an <control> tag.
parentThe Qt-relationship parent

Definition at line 70 of file Control.cpp.

References m_id.

Member Function Documentation

void Isis::Control::closeControlNet ( )

Cleans up the ControlNet *.

You want to call this once you're sure you are done with the ControlNet because the OS will limit how many of these we have open.

Definition at line 122 of file Control.cpp.

Referenced by updateFileName().

void Isis::Control::deleteFromDisk ( )

Delete the control net from disk.

The control net will no longer be accessible until you call updateFileName().

Definition at line 167 of file Control.cpp.

References _FILEINFO_, and Isis::IException::Io.

Referenced by Isis::ControlList::deleteFromDisk().

void Isis::Control::openControlNet ( )

Get the ControlNet * associated with this display property.

This will allocate the ControlNet * if one is not already present.

Definition at line 105 of file Control.cpp.

References _FILEINFO_, and Isis::IException::Programmer.

Referenced by Control().

void Isis::Control::updateFileName ( Project project)
slot

Change the on-disk file name for this control to be where the control ought to be in the given project.

Parameters
projectThe project that this control is stored in

Definition at line 187 of file Control.cpp.

References closeControlNet(), and Isis::Project::cnetRoot().

Member Data Documentation

QUuid* Isis::Control::m_id
private

File name of the control net associated with this control.

Definition at line 105 of file Control.h.

Referenced by Control().


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