Isis Developer Reference
Isis::ControlNet Class Reference

a control network More...

#include <ControlNet.h>

Inheritance diagram for Isis::ControlNet:
Inheritance graph
Collaboration diagram for Isis::ControlNet:
Collaboration graph

Public Types

enum  ModType { Swapped , GraphModified }
 Control Point Modification Types. More...
 

Signals

void networkStructureModified ()
 
void networkModified (ControlNet::ModType type)
 
void pointModified (ControlPoint *point, ControlPoint::ModType type, QVariant oldValue, QVariant newValue)
 
void measureModified (ControlMeasure *measure, ControlMeasure::ModType type, QVariant oldValue, QVariant newValue)
 
void pointDeleted (ControlPoint *point)
 
void newPoint (ControlPoint *)
 
void newMeasure (ControlMeasure *)
 
void measureRemoved (ControlMeasure *)
 

Public Member Functions

 ControlNet (SurfacePoint::CoordinateType=SurfacePoint::Latitudinal)
 Creates an empty ControlNet object. More...
 
 ControlNet (const ControlNet &other)
 
 ControlNet (const QString &filename, Progress *progress=0, SurfacePoint::CoordinateType=SurfacePoint::Latitudinal)
 Creates a ControlNet object from the given file. More...
 
 ~ControlNet ()
 Destructor removes allocated memory. More...
 
void clear ()
 Clear the contents of this object. More...
 
QList< ControlPoint * > take ()
 Transfer ownership of all points to caller. More...
 
void ReadControl (const QString &filename, Progress *progress=0)
 Reads in the control points from the given file. More...
 
void Write (const QString &filename, bool pvl=false)
 Writes out the control network. More...
 
void AddPoint (ControlPoint *point)
 Adds a ControlPoint to the ControlNet. More...
 
int DeletePoint (ControlPoint *point)
 Delete a ControlPoint from the network by the point's address. More...
 
int DeletePoint (QString pointId)
 Delete a ControlPoint from the network using the point's Id. More...
 
int DeletePoint (int index)
 Delete a ControlPoint from the network using the point's index. More...
 
bool ContainsPoint (QString pointId) const
 
QList< QString > GetCubeSerials () const
 Use this method to get a complete list of all the cube serial numbers in the network. More...
 
QString GraphToString () const
 Used for verifying graph intergrity. More...
 
QList< QList< QString > > GetSerialConnections () const
 This method searches through all the cube serial numbers in the network. More...
 
int getEdgeCount () const
 
QList< QString > getAdjacentImages (QString serialNumber) const
 Get all images connected to a given image by common control points. More...
 
QList< ControlMeasure * > GetMeasuresInCube (QString serialNumber)
 Get all the measures pertaining to a given cube serial number. More...
 
QList< ControlMeasure * > GetValidMeasuresInCube (QString serialNumber)
 Get all the valid measures pertaining to a given cube serial number. More...
 
QList< ControlMeasure * > sortedMeasureList (double(ControlMeasure::*statFunc)() const, double min, double max)
 Get a sorted list of all the measures that have values in a given ragen. More...
 
void ComputeResiduals ()
 Compute error for each point in the network. More...
 
void ComputeApriori ()
 Compute aprior values for each point in the network. More...
 
const ControlPointGetPoint (QString pointId) const
 
ControlPointGetPoint (QString pointId)
 
const ControlPointGetPoint (int index) const
 
ControlPointGetPoint (int index)
 
double AverageResidual ()
 Compute the average error of all points in the network. More...
 
Isis::CameraCamera (int index)
 Returns the camera list from the given image number. More...
 
Isis::CameraCamera (QString serialNumber)
 Returns the camera list from the input serial number. More...
 
QString CreatedDate () const
 Return the Created Date. More...
 
QString Description () const
 Return the description of the network. More...
 
ControlPointFindClosest (QString serialNumber, double sample, double line)
 Finds and returns a pointer to the closest ControlPoint to the ControlMeasure with the given serial number and line sample location. More...
 
double GetMaximumResidual ()
 Determine the maximum error of all points in the network. More...
 
QString GetNetworkId () const
 
int GetNumEditLockMeasures ()
 Return the total number of edit locked measures for all control points in the network. More...
 
int GetNumEditLockPoints ()
 Returns the number of edit locked control points. More...
 
int GetNumIgnoredMeasures ()
 Return the total number of ignored measures for all control points in the network. More...
 
int GetNumberOfValidMeasuresInImage (const QString &serialNumber)
 Return the number of measures in image specified by serialNumber. More...
 
int GetNumberOfJigsawRejectedMeasuresInImage (const QString &serialNumber)
 Return the number of jigsaw rejected measures in image specified by serialNumber. More...
 
void ClearJigsawRejected ()
 Sets jigsaw rejected flag to false for all points and measures. More...
 
void IncrementNumberOfRejectedMeasuresInImage (const QString &serialNumber)
 Increment number of jigsaw rejected measures in image specified by serialNumber. More...
 
void DecrementNumberOfRejectedMeasuresInImage (const QString &serialNumber)
 Decrement number of jigsaw rejected measures in image specified by serialNumber. More...
 
int GetNumMeasures () const
 Returns the total number of measures for all control points in the network. More...
 
int GetNumPoints () const
 Return the number of control points in the network. More...
 
int GetNumValidMeasures ()
 Return the number of valid (non-ignored) measures for all control points in the network. More...
 
int GetNumValidPoints ()
 Returns the number of non-ignored control points. More...
 
QString GetTarget () const
 Return the target name. More...
 
QString GetUserName () const
 Return the user name. More...
 
QString GetLastModified () const
 Return the last modified date. More...
 
QList< ControlPoint * > GetPoints ()
 Return QList of all the ControlPoints in the network. More...
 
QList< QString > GetPointIds () const
 Return QList of ControlPoint Ids used in hash, in order of addition. More...
 
SurfacePoint::CoordinateType GetCoordType ()
 Get the control point coordinate type (see the available types in SurfacePoint.h). More...
 
void SetCreatedDate (const QString &date)
 Set the creation time. More...
 
void SetDescription (const QString &newDescription)
 Set the description of the network. More...
 
void SetImages (const QString &imageListFile)
 Creates the ControlNet's image cameras based on an input file. More...
 
void SetImages (SerialNumberList &list, Progress *progress=0)
 Creates the ControlNet's image camera's based on the list of Serial Numbers. More...
 
void SetModifiedDate (const QString &date)
 Set the last modified date. More...
 
void SetMutex (QMutex *mutex)
 Set mutex to lock for making Naif calls. More...
 
void SetNetworkId (const QString &id)
 Set the network id. More...
 
void SetTarget (const QString &target)
 Sets the target name and target radii, if available. More...
 
void SetTarget (Pvl label)
 Sets the target name and radii using values found in the mapping group of the given label, if available. More...
 
void SetTarget (const ControlNet &other)
 
void SetUserName (const QString &name)
 Set the user name of the control network. More...
 
void SetCoordType (SurfacePoint::CoordinateType coordType)
 Sets the control point coordinate type. More...
 
void swap (ControlNet &other)
 Swaps the member data with the given control net. More...
 
ControlNetoperator= (const ControlNet &other)
 Assign other to this. More...
 
const ControlPointoperator[] (QString id) const
 
ControlPointoperator[] (QString id)
 
const ControlPointoperator[] (int id) const
 
ControlPointoperator[] (int id)
 

Friends

class ControlMeasure
 
class ControlPoint
 

Detailed Description

a control network

This class is used to store a network of ControlPoints

Author
2005-07-29 Jeff Anderson
See also
ControlPoint ControlMeasure

Member Enumeration Documentation

◆ ModType

Control Point Modification Types.

This enum is designed to represent the different types of modifications that can be made to a ControlNet.

Swapped means the network was swapped with another network (ControlNet::Swap(ControlNet &other)). GraphModified means that a vertice or edge was added/removed from the graph..

Enumerator
Swapped 
GraphModified 

Constructor & Destructor Documentation

◆ ControlNet() [1/3]

Isis::ControlNet::ControlNet ( SurfacePoint::CoordinateType  coordType = SurfacePoint::Latitudinal)

Creates an empty ControlNet object.

References Isis::Application::DateTime().

◆ ControlNet() [2/3]

Isis::ControlNet::ControlNet ( const ControlNet other)

◆ ControlNet() [3/3]

Isis::ControlNet::ControlNet ( const QString &  ptfile,
Progress progress = 0,
SurfacePoint::CoordinateType  coordType = SurfacePoint::Latitudinal 
)

Creates a ControlNet object from the given file.

Parameters
ptfileName of network file
progressA pointer to the progress of reading in the control points

References _FILEINFO_, Isis::IException::Io, and ReadControl().

◆ ~ControlNet()

Isis::ControlNet::~ControlNet ( )

Destructor removes allocated memory.

Author
Kris Becker

References clear().

Member Function Documentation

◆ AddPoint()

void Isis::ControlNet::AddPoint ( ControlPoint point)

Adds a ControlPoint to the ControlNet.

Parameters
pointControl point to be added
Exceptions
IException::Programmer"Null pointer passed to ControlNet::AddPoint!"
IException::Programmer"ControlPoint must have unique Id"

References _FILEINFO_, ContainsPoint(), Isis::ControlPoint::GetId(), networkStructureModified(), and Isis::IException::Programmer.

Referenced by ControlNet(), and ReadControl().

◆ AverageResidual()

double Isis::ControlNet::AverageResidual ( )

Compute the average error of all points in the network.

Returns
double Average error of points
History:
2010-01-12 Tracie Sucharski - Renamed from AverageError

References Isis::Statistics::Average(), Isis::ControlMeasure::GetResidualMagnitude(), Isis::ControlPoint::GetStatistic(), and Isis::ControlPoint::IsIgnored().

◆ Camera() [1/2]

Isis::Camera * Isis::ControlNet::Camera ( int  index)

Returns the camera list from the given image number.

Parameters
indexThe image number
Returns
Isis::Camera* The pointer to the resultant camera list

Referenced by Isis::QnetCubeDistanceFilter::filter(), Isis::QnetPointDistanceFilter::filter(), and Isis::LidarData::SetImages().

◆ Camera() [2/2]

Isis::Camera * Isis::ControlNet::Camera ( QString  serialNumber)

Returns the camera list from the input serial number.

Parameters
serialNumberSerial number.
Returns
Isis::Camera* The pointer to the resultant camera.

◆ clear()

void Isis::ControlNet::clear ( )

Clear the contents of this object.

The contents of the ControlNet object are deleted. The internal variables that hold the contents are not. See the destructor.

Author
Kris Becker

References GetNumPoints().

Referenced by take(), and ~ControlNet().

◆ ClearJigsawRejected()

void Isis::ControlNet::ClearJigsawRejected ( )

Sets jigsaw rejected flag to false for all points and measures.

Called by BundleAdjust::Init method

References Isis::ControlPoint::ClearJigsawRejected().

◆ ComputeApriori()

void Isis::ControlNet::ComputeApriori ( )

Compute aprior values for each point in the network.

History:
2010-08-23 Ken Edmundson, skipping ignored points

References Isis::ControlPoint::ComputeApriori(), and Isis::ControlPoint::IsIgnored().

◆ ComputeResiduals()

void Isis::ControlNet::ComputeResiduals ( )

Compute error for each point in the network.

History:
2010-01-11 Tracie Sucharski, Renamed from ComputeErrors

◆ ContainsPoint()

bool Isis::ControlNet::ContainsPoint ( QString  pointId) const
Parameters
pointIdthe point Id to check for in the network.
Returns
True if the point is in the network, false otherwise.

Referenced by AddPoint(), and Isis::MatchToolNewPointDialog::MatchToolNewPointDialog().

◆ CreatedDate()

QString Isis::ControlNet::CreatedDate ( ) const

Return the Created Date.

Author
Sharmila Prasad (10/6/2010)
Returns
QString

Referenced by Isis::ControlNetVersioner::ControlNetVersioner().

◆ DecrementNumberOfRejectedMeasuresInImage()

void Isis::ControlNet::DecrementNumberOfRejectedMeasuresInImage ( const QString &  serialNumber)

Decrement number of jigsaw rejected measures in image specified by serialNumber.

◆ DeletePoint() [1/3]

int Isis::ControlNet::DeletePoint ( ControlPoint point)

Delete a ControlPoint from the network by the point's address.

Parameters
pointThe point to delete

References _FILEINFO_, DeletePoint(), Isis::ControlPoint::GetId(), and Isis::IException::User.

Referenced by DeletePoint(), Isis::AbstractPointItem::deleteSource(), and Isis::CnetEditorWidget::filteredNetwork().

◆ DeletePoint() [2/3]

int Isis::ControlNet::DeletePoint ( int  index)

Delete a ControlPoint from the network using the point's index.

Parameters
indexThe index of the Control Point to be deleted.

References _FILEINFO_, DeletePoint(), and Isis::IException::Programmer.

◆ DeletePoint() [3/3]

int Isis::ControlNet::DeletePoint ( QString  pointId)

◆ Description()

QString Isis::ControlNet::Description ( ) const

Return the description of the network.

Returns
The description of this Control Network

Referenced by Isis::ControlNetVersioner::ControlNetVersioner().

◆ FindClosest()

ControlPoint * Isis::ControlNet::FindClosest ( QString  serialNumber,
double  sample,
double  line 
)

Finds and returns a pointer to the closest ControlPoint to the ControlMeasure with the given serial number and line sample location.

Parameters
serialNumberThe serial number of the the file the ControlMeasure is on
sampleThe sample number of the ControlMeasure
lineThe line number of the ControlMeasure
Returns
ControlPoint* Pointer to the ControlPoint closest to the given line, sample position

References _FILEINFO_, Isis::ControlMeasure::GetLine(), Isis::ControlMeasure::GetSample(), Isis::ControlMeasure::Parent(), and Isis::IException::Programmer.

◆ getAdjacentImages()

QList< QString > Isis::ControlNet::getAdjacentImages ( QString  serialNumber) const

Get all images connected to a given image by common control points.

Parameters
serialNumberthe serial number of the image to find images adjacent to.
Returns
QList<QString> The serial numbers of all adjacent images.

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

Referenced by GraphToString().

◆ GetCoordType()

SurfacePoint::CoordinateType Isis::ControlNet::GetCoordType ( )

Get the control point coordinate type (see the available types in SurfacePoint.h).

Returns
the control point coordinate type

Referenced by Isis::ControlPoint::SetAprioriSurfacePoint().

◆ GetCubeSerials()

QList< QString > Isis::ControlNet::GetCubeSerials ( ) const

Use this method to get a complete list of all the cube serial numbers in the network.

Note that the order in which the serials are ordered in the returned list is arbitrary and could change each time this method is called (but the operation is done in constant time).

Returns
A list of the Cube Serial Numbers in the ControlNet.

Referenced by Isis::ControlNetStatistics::GenerateImageStats(), Isis::CnetDisplayProperties::getCubeList(), Isis::ControlNetVitals::getCubeSerials(), Isis::ControlNetVitals::getImagesBelowMeasureThreshold(), GraphToString(), Isis::ControlNetVitals::initializeVitals(), Isis::ControlNetVitals::numImages(), and Isis::ChipViewport::paintEvent().

◆ getEdgeCount()

int Isis::ControlNet::getEdgeCount ( ) const
Returns
The total number of edges in the bi-directional graph for images

◆ GetLastModified()

QString Isis::ControlNet::GetLastModified ( ) const

Return the last modified date.

Referenced by Isis::ControlNetVersioner::ControlNetVersioner().

◆ GetMaximumResidual()

double Isis::ControlNet::GetMaximumResidual ( )

Determine the maximum error of all points in the network.

Returns
double Max error of points
History:
2010-01-12 Tracie Sucharski - Renamed from MaximumError

References Isis::ControlMeasure::GetResidualMagnitude(), Isis::ControlPoint::GetStatistic(), and Isis::Statistics::Maximum().

◆ GetMeasuresInCube()

QList< ControlMeasure * > Isis::ControlNet::GetMeasuresInCube ( QString  serialNumber)

Get all the measures pertaining to a given cube serial number.

Returns
A list of all measures which are in a given cube

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

Referenced by Isis::ControlNetStatistics::GenerateImageStats(), GetValidMeasuresInCube(), and Isis::ChipViewport::paintEvent().

◆ GetNetworkId()

◆ GetNumberOfJigsawRejectedMeasuresInImage()

int Isis::ControlNet::GetNumberOfJigsawRejectedMeasuresInImage ( const QString &  serialNumber)

Return the number of jigsaw rejected measures in image specified by serialNumber.

Returns
Number of jigsaw rejected measures in image

◆ GetNumberOfValidMeasuresInImage()

int Isis::ControlNet::GetNumberOfValidMeasuresInImage ( const QString &  serialNumber)

Return the number of measures in image specified by serialNumber.

Returns
Number of valid measures in image
History:
2013-12-18 Tracie Sucharski - Renamed from GetNumberOfMeasuresInImage, it is returning a count of only valid measures (Ignore=False).

References GetValidMeasuresInCube().

Referenced by Isis::ControlNetVitals::initializeVitals().

◆ GetNumEditLockMeasures()

int Isis::ControlNet::GetNumEditLockMeasures ( )

Return the total number of edit locked measures for all control points in the network.

Returns
Number of edit locked measures

References Isis::ControlPoint::GetNumLockedMeasures().

Referenced by Isis::ControlNetStatistics::GenerateControlNetStats().

◆ GetNumEditLockPoints()

int Isis::ControlNet::GetNumEditLockPoints ( )

Returns the number of edit locked control points.

Returns
Number of edit locked control points

References Isis::ControlPoint::IsEditLocked().

Referenced by Isis::ControlNetStatistics::GenerateControlNetStats().

◆ GetNumIgnoredMeasures()

int Isis::ControlNet::GetNumIgnoredMeasures ( )

Return the total number of ignored measures for all control points in the network.

Returns
Number of valid measures

References Isis::ControlPoint::GetNumMeasures(), and Isis::ControlPoint::GetNumValidMeasures().

◆ GetNumMeasures()

int Isis::ControlNet::GetNumMeasures ( ) const

Returns the total number of measures for all control points in the network.

Returns
Number of control measures

References Isis::ControlPoint::GetNumMeasures().

Referenced by Isis::ControlNetVitals::addPoint(), and Isis::ControlNetVitals::initializeVitals().

◆ GetNumPoints()

◆ GetNumValidMeasures()

int Isis::ControlNet::GetNumValidMeasures ( )

Return the number of valid (non-ignored) measures for all control points in the network.

Returns
Number of valid measures

References Isis::ControlPoint::GetNumValidMeasures(), and Isis::ControlPoint::IsIgnored().

◆ GetNumValidPoints()

int Isis::ControlNet::GetNumValidPoints ( )

Returns the number of non-ignored control points.

Returns
Number of valid control points

References Isis::ControlPoint::IsIgnored().

◆ GetPoint() [1/4]

ControlPoint * Isis::ControlNet::GetPoint ( int  index)

◆ GetPoint() [2/4]

const ControlPoint * Isis::ControlNet::GetPoint ( int  index) const

◆ GetPoint() [3/4]

ControlPoint * Isis::ControlNet::GetPoint ( QString  pointId)

◆ GetPoint() [4/4]

◆ GetPointIds()

QList< QString > Isis::ControlNet::GetPointIds ( ) const

Return QList of ControlPoint Ids used in hash, in order of addition.

◆ GetPoints()

◆ GetSerialConnections()

QList< QList< QString > > Isis::ControlNet::GetSerialConnections ( ) const

This method searches through all the cube serial numbers in the network.

Serials which are connected to other serials through points are grouped together in the same lists. The list containing the lists of strings is nothing more than a list of islands such that each island is a list of serials which are connected to each other. If the control network is completely connected, then this list will only have one element (a list of all the serials in the network).

Returns
A list of cube islands as serial numbers

Referenced by Isis::ControlNetVitals::initializeVitals(), and Isis::ControlNetVitals::validateNetwork().

◆ GetTarget()

QString Isis::ControlNet::GetTarget ( ) const

Return the target name.

Referenced by Isis::ControlNetVersioner::ControlNetVersioner().

◆ GetUserName()

QString Isis::ControlNet::GetUserName ( ) const

Return the user name.

Referenced by Isis::ControlNetVersioner::ControlNetVersioner().

◆ GetValidMeasuresInCube()

QList< ControlMeasure * > Isis::ControlNet::GetValidMeasuresInCube ( QString  serialNumber)

Get all the valid measures pertaining to a given cube serial number.

Returns
A list of all valid measures which are in a given cube

References GetMeasuresInCube(), and Isis::ControlMeasure::IsIgnored().

Referenced by Isis::ControlNetVitals::getImagesBelowMeasureThreshold(), and GetNumberOfValidMeasuresInImage().

◆ GraphToString()

QString Isis::ControlNet::GraphToString ( ) const

Used for verifying graph intergrity.

Returns
A string representation of the ControlNet graph

References getAdjacentImages(), GetCubeSerials(), Isis::ControlPoint::GetId(), Isis::ControlPoint::IsIgnored(), and Isis::toString().

◆ IncrementNumberOfRejectedMeasuresInImage()

void Isis::ControlNet::IncrementNumberOfRejectedMeasuresInImage ( const QString &  serialNumber)

Increment number of jigsaw rejected measures in image specified by serialNumber.

◆ measureModified

void Isis::ControlNet::measureModified ( ControlMeasure measure,
ControlMeasure::ModType  type,
QVariant  oldValue,
QVariant  newValue 
)
signal

◆ measureRemoved

void Isis::ControlNet::measureRemoved ( ControlMeasure )
signal

◆ networkModified

void Isis::ControlNet::networkModified ( ControlNet::ModType  type)
signal

Referenced by swap().

◆ networkStructureModified

void Isis::ControlNet::networkStructureModified ( )
signal

Referenced by AddPoint(), and DeletePoint().

◆ newMeasure

void Isis::ControlNet::newMeasure ( ControlMeasure )
signal

◆ newPoint

void Isis::ControlNet::newPoint ( ControlPoint )
signal

Referenced by ControlNet().

◆ operator=()

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

Assign other to this.

This is an exception-safe assignment operator.

Parameters
otherThe control net to assign to this.

References swap().

◆ operator[]() [1/4]

ControlPoint * Isis::ControlNet::operator[] ( int  id)

References GetPoint().

◆ operator[]() [2/4]

const ControlPoint * Isis::ControlNet::operator[] ( int  id) const

References GetPoint().

◆ operator[]() [3/4]

ControlPoint * Isis::ControlNet::operator[] ( QString  id)

References GetPoint().

◆ operator[]() [4/4]

const ControlPoint * Isis::ControlNet::operator[] ( QString  id) const

References GetPoint().

◆ pointDeleted

void Isis::ControlNet::pointDeleted ( ControlPoint point)
signal

Referenced by DeletePoint().

◆ pointModified

void Isis::ControlNet::pointModified ( ControlPoint point,
ControlPoint::ModType  type,
QVariant  oldValue,
QVariant  newValue 
)
signal

◆ ReadControl()

void Isis::ControlNet::ReadControl ( const QString &  filename,
Progress progress = 0 
)

Reads in the control points from the given file.

Parameters
ptfileName of file containing a Pvl list of control points
progressA pointer to the progress of reading in the control points
Exceptions
Isis::iException::User- "Invalid Network Type"
Isis::iException::User- "Invalid Control Point"
Isis::iException::User- "Invalid Format"

References AddPoint(), Isis::Progress::CheckStatus(), Isis::ControlNetVersioner::creationDate(), Isis::ControlNetVersioner::description(), Isis::ControlNetVersioner::lastModificationDate(), Isis::ControlNetVersioner::netId(), Isis::ControlNetVersioner::numPoints(), Isis::Progress::SetMaximumSteps(), SetTarget(), Isis::Progress::SetText(), Isis::ControlNetVersioner::takeFirstPoint(), Isis::ControlNetVersioner::targetName(), and Isis::ControlNetVersioner::userName().

Referenced by ControlNet().

◆ SetCoordType()

void Isis::ControlNet::SetCoordType ( SurfacePoint::CoordinateType  coordType)

Sets the control point coordinate type.

Parameters
coordTypeControl point coordinate type

◆ SetCreatedDate()

void Isis::ControlNet::SetCreatedDate ( const QString &  date)

Set the creation time.

Parameters
dateThe date this Control Network was created

◆ SetDescription()

void Isis::ControlNet::SetDescription ( const QString &  newDescription)

Set the description of the network.

Parameters
descThe description of this Control Network

◆ SetImages() [1/2]

void Isis::ControlNet::SetImages ( const QString &  imageListFile)

Creates the ControlNet's image cameras based on an input file.

Parameters
imageListFileThe list of images

References SetImages().

Referenced by Isis::QnetFileTool::open(), Isis::Project::setActiveImageList(), and SetImages().

◆ SetImages() [2/2]

void Isis::ControlNet::SetImages ( SerialNumberList list,
Progress progress = 0 
)

Creates the ControlNet's image camera's based on the list of Serial Numbers.

Parameters
listThe list of Serial Numbers
progressA pointer to the progress of creating the cameras
Exceptions
Isis::iException::System- "Unable to create camera for cube file"
Isis::iException::User- "Control point measure does not have a cube with a matching serial number"

References _FILEINFO_, Isis::Progress::CheckStatus(), Isis::CameraFactory::Create(), Isis::SerialNumberList::fileName(), Isis::ControlMeasure::GetCubeSerialNumber(), Isis::ControlPoint::getCubeSerialNumbers(), Isis::ControlPoint::GetId(), Isis::SerialNumberList::hasSerialNumber(), Isis::ControlMeasure::IsIgnored(), Isis::SerialNumberList::serialNumber(), Isis::ControlMeasure::SetCamera(), Isis::Progress::SetMaximumSteps(), Isis::Progress::SetText(), Isis::SerialNumberList::size(), Isis::IException::Unknown, and Isis::IException::User.

◆ SetModifiedDate()

void Isis::ControlNet::SetModifiedDate ( const QString &  date)

Set the last modified date.

Parameters
dateThe last date this Control Network was modified

◆ SetMutex()

void Isis::ControlNet::SetMutex ( QMutex *  mutex)

Set mutex to lock for making Naif calls.

Author
2012-09-11 Tracie Sucharski
Parameters
mutex

Referenced by Isis::Control::openControlNet().

◆ SetNetworkId()

void Isis::ControlNet::SetNetworkId ( const QString &  id)

Set the network id.

Parameters
idThe Id of this Control Network

◆ SetTarget() [1/3]

void Isis::ControlNet::SetTarget ( const ControlNet other)

References swap().

◆ SetTarget() [2/3]

void Isis::ControlNet::SetTarget ( const QString &  target)

Sets the target name and target radii, if available.

Note: The target radii are found using NAIF target codes. If the given target name is not recognized, the target radii vector will be filled with Isis::Null values.

See also
Target::radiiGroup(QString)
Parameters
targetThe name of the target of this Control Network

Referenced by Isis::QnetFileTool::open(), and ReadControl().

◆ SetTarget() [3/3]

void Isis::ControlNet::SetTarget ( Pvl  label)

Sets the target name and radii using values found in the mapping group of the given label, if available.

If this fails, calls SetTarget(QString).

Parameters
labelA PVL Containing Target information (usually in a Mapping group or NaifKeywords object).

References Isis::PvlObject::findGroup(), Isis::PvlObject::findObject(), Isis::PvlObject::hasGroup(), Isis::PvlContainer::hasKeyword(), Isis::PvlObject::hasObject(), and Isis::PvlObject::Traverse.

◆ SetUserName()

void Isis::ControlNet::SetUserName ( const QString &  name)

Set the user name of the control network.

Parameters
nameThe name of the user creating or modifying this ControlNet

Referenced by Isis::QnetFileTool::open().

◆ sortedMeasureList()

QList< ControlMeasure * > Isis::ControlNet::sortedMeasureList ( double(ControlMeasure::*)() const  statFunc,
double  min,
double  max 
)

Get a sorted list of all the measures that have values in a given ragen.

Parameters
statFuncA pointer to a control Measure acessor
minthe minimum value of acessor return for list inclusion
maxthe maximum value of acessor return for list inclusion

References Isis::ControlPoint::GetMeasure(), Isis::ControlPoint::GetNumMeasures(), GetNumPoints(), GetPoint(), Isis::ControlMeasure::IsIgnored(), and Isis::ControlPoint::IsIgnored().

◆ swap()

void Isis::ControlNet::swap ( ControlNet other)

Swaps the member data with the given control net.

This is an optimized form of: ControlNet a = ... ControlNet b = ...

Swap 'a' and 'b' ControlNet tmp = a; a = b; b = tmp;

This is used primarily for the assignment operator in order to do copy-and-swap.

Parameters
otherThe control net to swap with.

References networkModified(), and Swapped.

Referenced by operator=(), and SetTarget().

◆ take()

QList< ControlPoint * > Isis::ControlNet::take ( )

Transfer ownership of all points to caller.

This method is used to transfer ownership to the caller. This method is not reintrant in the sense that if someone else has already made this call, it is an error to attempt to take ownership again.

Note that it now becomes the responsibility of the caller to delete all the pointers to ControlPoints that are returned in the list.

WARNING!!! This call alone can create a situation where the owner could delete point memory after the point list is exported from this class creating a problem. For this reason, the clear() method be called!!!

Author
Kris Becker
Returns
QList<ControlPoint*> Returns the list of all control points to caller

References _FILEINFO_, clear(), GetPoints(), and Isis::IException::Programmer.

◆ Write()

void Isis::ControlNet::Write ( const QString &  ptfile,
bool  pvl = false 
)

Writes out the control network.

Parameters
ptfileName of file containing a Pvl list of control points
pvlBoolean indicating whether to write in pvl format (Default=false)
History:

2010-10-05 Tracie Sucharski - Renamed old WRite method to WritePvl and created this new method to determine format to be written.

2017-12-21 Jesse Mapel - Modified to use new ControlNetVersioner.

References _FILEINFO_, Isis::IException::Io, Isis::IException::Programmer, Isis::ControlNetVersioner::toPvl(), Isis::Pvl::write(), and Isis::ControlNetVersioner::write().

Referenced by Isis::Control::copyToNewProjectRoot(), Isis::QnetFileTool::save(), Isis::QnetFileTool::saveAs(), and Isis::Control::write().

Friends And Related Function Documentation

◆ ControlMeasure

friend class ControlMeasure
friend

◆ ControlPoint

friend class ControlPoint
friend

Referenced by ControlNet().


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