Isis 3 Programmer Reference
Isis::ConcurrentControlNetReader Class Reference

This reads a control net in the background. More...

#include <ConcurrentControlNetReader.h>

Inheritance diagram for Isis::ConcurrentControlNetReader:
Inheritance graph
Collaboration diagram for Isis::ConcurrentControlNetReader:
Collaboration graph

Classes

class  FileNameToControlFunctor
 

Signals

void networksReady (QList< Control * >)
 

Public Member Functions

 ConcurrentControlNetReader ()
 Allocates memory at construction instead of as needed.
 
 ~ConcurrentControlNetReader ()
 This destructor will cancel all running threads and block.
 
void read (QString filename)
 
void read (QStringList filenames)
 
ProgressBarprogressBar ()
 

Private Slots

void updateProgressValue ()
 
void mappedFinished ()
 

Private Member Functions

void nullify ()
 Initializes members to NULL.
 
void start ()
 
void initProgress ()
 

Private Attributes

QFutureWatcher< Control * > * m_watcher
 provides SIGNALS / SLOTS for FileNameToControlFunctor
 
QStringList m_backlog
 
bool m_mappedRunning
 
QList< Progress * > m_progress
 
QPointer< ProgressBarm_progressBar
 
QPointer< QTimer > m_progressUpdateTimer
 

Detailed Description

This reads a control net in the background.

This class provides progress for reading a ControlNet. Reading is done in separate threads using QtConcurrent. When reading large Pvl networks the progress will hang at zero percent for a while.

Author
2012-06-11 Ken Edmundson, Steven Lambright
History
2017-08-09 Summer Stapleton - Added a try-catch block to handle invalid control networks. Fixes #5068.

Definition at line 44 of file ConcurrentControlNetReader.h.

Constructor & Destructor Documentation

◆ ConcurrentControlNetReader()

Isis::ConcurrentControlNetReader::ConcurrentControlNetReader ( )

Allocates memory at construction instead of as needed.

Definition at line 39 of file ConcurrentControlNetReader.cpp.

References m_watcher, and nullify().

◆ ~ConcurrentControlNetReader()

Isis::ConcurrentControlNetReader::~ConcurrentControlNetReader ( )

This destructor will cancel all running threads and block.

Definition at line 56 of file ConcurrentControlNetReader.cpp.

References m_watcher.

Member Function Documentation

◆ initProgress()

void Isis::ConcurrentControlNetReader::initProgress ( )
private

Definition at line 114 of file ConcurrentControlNetReader.cpp.

◆ mappedFinished

void Isis::ConcurrentControlNetReader::mappedFinished ( )
privateslot

Definition at line 203 of file ConcurrentControlNetReader.cpp.

◆ nullify()

void Isis::ConcurrentControlNetReader::nullify ( )
private

Initializes members to NULL.

Definition at line 109 of file ConcurrentControlNetReader.cpp.

References m_watcher.

Referenced by ConcurrentControlNetReader().

◆ progressBar()

ProgressBar * Isis::ConcurrentControlNetReader::progressBar ( )

Definition at line 71 of file ConcurrentControlNetReader.cpp.

◆ read() [1/2]

void Isis::ConcurrentControlNetReader::read ( QString filename)
Parameters
filenameThe filename of the network to read

Definition at line 79 of file ConcurrentControlNetReader.cpp.

◆ read() [2/2]

void Isis::ConcurrentControlNetReader::read ( QStringList filenames)
Parameters
filenamesThe filenames of the networks to read

Definition at line 94 of file ConcurrentControlNetReader.cpp.

◆ start()

void Isis::ConcurrentControlNetReader::start ( )
private

Definition at line 123 of file ConcurrentControlNetReader.cpp.

◆ updateProgressValue

void Isis::ConcurrentControlNetReader::updateProgressValue ( )
privateslot

Definition at line 164 of file ConcurrentControlNetReader.cpp.

Member Data Documentation

◆ m_backlog

QStringList Isis::ConcurrentControlNetReader::m_backlog
private

Definition at line 71 of file ConcurrentControlNetReader.h.

◆ m_mappedRunning

bool Isis::ConcurrentControlNetReader::m_mappedRunning
private

Definition at line 72 of file ConcurrentControlNetReader.h.

◆ m_progress

QList<Progress *> Isis::ConcurrentControlNetReader::m_progress
private

Definition at line 73 of file ConcurrentControlNetReader.h.

◆ m_progressBar

QPointer<ProgressBar> Isis::ConcurrentControlNetReader::m_progressBar
private

Definition at line 74 of file ConcurrentControlNetReader.h.

◆ m_progressUpdateTimer

QPointer<QTimer> Isis::ConcurrentControlNetReader::m_progressUpdateTimer
private

Definition at line 75 of file ConcurrentControlNetReader.h.

◆ m_watcher

QFutureWatcher<Control *>* Isis::ConcurrentControlNetReader::m_watcher
private

provides SIGNALS / SLOTS for FileNameToControlFunctor

Definition at line 70 of file ConcurrentControlNetReader.h.

Referenced by ConcurrentControlNetReader(), nullify(), and ~ConcurrentControlNetReader().


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