Commit 8bdafe4b authored by Jesse Mapel's avatar Jesse Mapel Committed by Makayla Shepherd
Browse files

Added a method to ControlNet to get all of the valid measures in an image

parent 21d7abf8
Loading
Loading
Loading
Loading
+84 −73
Original line number Diff line number Diff line
@@ -1064,6 +1064,17 @@ namespace Isis {
  }


  /**
   * 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
   */
  QList< ControlMeasure * > ControlNet::GetValidMeasuresInCube(QString serialNumber) {
    ValidateSerialNumber(serialNumber);
    return (*cubeGraphNodes)[serialNumber]->getValidMeasures();
  }


  /**
   * Copies the content of the a ControlMeasureLessThanFunctor
   *
+18 −15
Original line number Diff line number Diff line
@@ -28,12 +28,11 @@
#include <QObject> // parent class
#include <QSharedPointer>

#include <map>
#include <vector>

#include "ControlNetFile.h"

#include <QString>
#include <QMap>
#include <QVector>

template< typename A, typename B > class QHash;
template< typename T > class QList;
@@ -42,7 +41,6 @@ template< typename T > class QSet;
class QMutex;
class QString;


namespace Isis {
  class Camera;
  class ControlMeasure;
@@ -206,6 +204,10 @@ namespace Isis {
   *   @history 2017-08-09 Summer Stapleton - Added throw to caught exception for bad control net
   *                           import in constructor. Also removed p_invalid as it was no longer
   *                           being used anywhere. Fixes #5068.
   *   @history 2017-12-12 Kristin Berry - Updated to use QMap and QVector rather than std::map
   *                           and std::vector. Fixes #5259.
   *   @history 2017-01-19 Jesse Mapel - Added a method to get all of the valid measures in an
   *                           image. Previously, this had to be done throug the graph.
   */
  class ControlNet : public QObject {
      Q_OBJECT
@@ -242,6 +244,7 @@ namespace Isis {
      int getEdgeCount() const;
      QString CubeGraphToString() const;
      QList< ControlMeasure * > GetMeasuresInCube(QString serialNumber);
      QList< ControlMeasure * > GetValidMeasuresInCube(QString serialNumber);
      QList< ControlMeasure * > sortedMeasureList(double(ControlMeasure::*statFunc)() const,
                                                  double min,double max);
      void DeleteMeasuresWithId(QString serialNumber);
@@ -434,12 +437,12 @@ namespace Isis {
      QString p_modified;              //!< Date Last Modified
      QString p_description;           //!< Textual Description of network
      QString p_userName;              //!< The user who created the network
      std::map<QString, Isis::Camera *> p_cameraMap; //!< A map from serialnumber to camera
      std::map<QString, int> p_cameraValidMeasuresMap; //!< A map from serialnumber to #measures
      std::map<QString, int> p_cameraRejectedMeasuresMap; //!< A map from serialnumber to
      QMap<QString, Isis::Camera *> p_cameraMap; //!< A map from serialnumber to camera
      QMap<QString, int> p_cameraValidMeasuresMap; //!< A map from serialnumber to #measures
      QMap<QString, int> p_cameraRejectedMeasuresMap; //!< A map from serialnumber to
      //!  #rejected measures
      std::vector<Isis::Camera *> p_cameraList; //!< Vector of image number to camera
      std::vector<Distance> p_targetRadii;        //!< Radii of target body
      QVector<Isis::Camera *> p_cameraList; //!< Vector of image number to camera
      QVector<Distance> p_targetRadii;        //!< Radii of target body

      bool m_ownPoints; //!< Specifies ownership of point list. True if owned by this object.
  };