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

References AddPoint(), ControlPoint, and newPoint().

◆ 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

◆ 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().

◆ CreatedDate()

QString Isis::ControlNet::CreatedDate ( ) const

Return the Created Date.

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

◆ 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(), DeletePoint(), and Isis::AbstractPointItem::deleteSource().

◆ 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

◆ 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_, 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::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.

◆ 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().

◆ 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()

QString Isis::ControlNet::GetNetworkId ( ) const

◆ 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

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

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

◆ GetNumMeasures()

int Isis::ControlNet::GetNumMeasures ( ) const

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

Returns
Number of control measures

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

◆ GetNumValidPoints()

int Isis::ControlNet::GetNumValidPoints ( )

Returns the number of non-ignored control points.

Returns
Number of valid control points

◆ 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.

◆ GetUserName()

QString Isis::ControlNet::GetUserName ( ) const

Return the user name.

◆ 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().

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::Progress::SetMaximumSteps(), SetTarget(), and Isis::Progress::SetText().

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::SerialNumberList::hasSerialNumber(), Isis::SerialNumberList::serialNumber(), 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)

◆ 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::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(), 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=().

◆ 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, and Isis::IException::Programmer.

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

Friends And Related Symbol 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: