Isis 3 Programmer Reference
|
Add cubes to a project. More...
#include <ImportImagesWorkOrder.h>
Classes | |
class | OriginalFileToProjectCubeFunctor |
This copies the given cube(s) into the project. More... | |
Public Types | |
enum | WorkOrderStatus { WorkOrderUnknownStatus = 0 , WorkOrderNotStarted , WorkOrderRedoing , WorkOrderRedone , WorkOrderUndoing , WorkOrderUndone , WorkOrderFinished , WorkOrderLastStatus = WorkOrderFinished } |
This enumeration is used by other functions to set and retrieve the current state of the WorkOrder. More... | |
enum | Context { NoContext , ProjectContext } |
This enumeration is for recording the context of the current Workorder (whether it is part of a project or not). More... | |
Public Slots | |
void | enableWorkOrder () |
Enables the work order. | |
void | disableWorkOrder () |
Disables the work order. | |
virtual void | redo () |
Starts (or enqueues) a redo. | |
virtual void | undo () |
Starts (or enqueues) an undo. | |
Signals | |
void | creatingProgress (WorkOrder *) |
void | deletingProgress (WorkOrder *) |
void | finished (WorkOrder *) |
void | statusChanged (WorkOrder *) |
Public Member Functions | |
ImportImagesWorkOrder (Project *project) | |
Creates an asynchronous WorkOrder for importing images to the project. | |
ImportImagesWorkOrder (const ImportImagesWorkOrder &other) | |
Copies the WorkOrder. | |
~ImportImagesWorkOrder () | |
Destructor. | |
virtual ImportImagesWorkOrder * | clone () const |
Creates a clone of this work order. | |
virtual bool | isExecutable (ProjectItem *item) |
This method returns true if the user clicked on a project tree node with the text "Images". | |
virtual bool | setupExecution () |
Sets up this work order before being executed. | |
virtual void | execute () |
Executes the work order. | |
virtual bool | isExecutable (Context) |
Re-implement this method if your work order utilizes controls for data in order to operate. | |
virtual bool | isExecutable (ImageList *images) |
Re-implement this method if your work order utilizes images for data in order to operate. | |
virtual bool | isExecutable (ShapeList *shapes) |
Re-implement this method if your work order utilizes shapes for data in order to operate. | |
virtual bool | isExecutable (ControlList *controls) |
Re-implement this method if your work order utilizes a control for data in order to operate. | |
virtual bool | isExecutable (CorrelationMatrix) |
virtual bool | isExecutable (TargetBodyQsp targetBody) |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate. | |
virtual bool | isExecutable (Template *currentTemplate) |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate. | |
virtual bool | isExecutable (GuiCameraQsp guiCamera) |
Re-implement this method if your WorkOrder utilizes GuiCameraQsp (a QSharedPointer to a GuiCamera object) for data in order to operate. | |
virtual bool | isExecutable (FileItemQsp fileItem) |
Re-implement this method if your WorkOrder utilizes FileItemQsp (a QSharedPointer to a FileItem object) for data in order to operate. | |
void | save (QXmlStreamWriter &stream) const |
: Saves a WorkOrder to a data stream. | |
virtual void | setData (Context) |
Sets the context data for this WorkOrder. | |
virtual void | setData (QString data) |
virtual void | setData (ImageList *images) |
Sets the ImageList data for this WorkOrder. | |
virtual void | setData (ShapeList *shapes) |
Sets the ShapeList data for this WorkOrder. | |
virtual void | setData (ControlList *controls) |
Sets the Control data for this WorkOrder. | |
virtual void | setData (Template *currentTemplate) |
Sets the TargetBody data for this WorkOrder. | |
virtual void | setData (CorrelationMatrix) |
Sets the CorrelationMatrix data for this WorkOrder. | |
virtual void | setData (TargetBodyQsp targetBody) |
Sets the TargetBody data for this WorkOrder. | |
virtual void | setData (GuiCameraQsp guiCamera) |
Sets the GuiCamera data for this WorkOrder. | |
virtual void | setData (FileItemQsp fileItem) |
Sets the FileItem data for this WorkOrder. | |
virtual void | setData (ProjectItem *item) |
Sets the internal data to the data stored in a ProjectItem. | |
void | setNext (WorkOrder *nextWorkOrder) |
Sets the next WorkOrder in the sequence. | |
void | setPrevious (WorkOrder *previousWorkOrder) |
Sets the previous WorkOrder in the sequence. | |
QString | bestText () const |
Generate unique action names We don't use action text anymore because Directory likes to rename our actions. | |
bool | isUndoable () const |
Returns true if this work order is undoable, otherwise false. | |
bool | isSavedToHistory () const |
Returns true if this work order is to be shown in History, otherwise false. | |
bool | isSynchronous () const |
Returns true if this work order is run synchronously, otherwise false. | |
bool | createsCleanState () const |
Returns the CleanState status (whether the Project has been saved to disk or not). | |
QDateTime | executionTime () const |
Gets the execution time of this WorkOrder. | |
bool | isFinished () const |
Returns the finished state of this WorkOrder. | |
bool | isRedoing () const |
Returns the redoing status of this WorkOrder. | |
bool | isRedone () const |
Returns the WorkOrder redone status. | |
bool | isUndoing () const |
Returns the WorkOrderUndoing state. | |
bool | isUndone () const |
Returns the WorkOrder undo status. | |
bool | modifiesDiskState () const |
Returns the modified disk state. | |
WorkOrder * | next () const |
Gets the next WorkOrder. | |
WorkOrder * | previous () const |
Gets the previous WorkOrder. | |
QString | statusText () const |
WorkOrder::statusText. | |
ProgressBar * | progressBar () |
Returns the ProgressBar. | |
Static Public Member Functions | |
static WorkOrderStatus | fromStatusString (QString) |
Attempts to query the current status of the WorkOrder. | |
static QString | toString (WorkOrderStatus) |
Gets the current status of the WorkOrder. | |
Protected Slots | |
void | addCloneToProject () |
Runs a copy of the current WorkOrder and stores it in the project. | |
Protected Member Functions | |
virtual void | undoExecution () |
Undoes the work order's execute. | |
virtual void | postExecution () |
Associates the imported images to the project. | |
virtual void | postUndoExecution () |
Cleans up memory (images) after the undo execution occurs. | |
ImageList * | imageList () |
Returns a pointer to the ImageList for this WorkOrder. | |
const ImageList * | imageList () const |
A thread-safe method for retrieving a pointer to the imageList. | |
ShapeList * | shapeList () |
@briefReturns a pointer to the ShapeList for this WorkOrder. | |
const ShapeList * | shapeList () const |
A thread-safe method for retrieving a pointer to the shapeList. | |
CorrelationMatrix | correlationMatrix () |
Returns the CorrleationMatrix for this WorkOrder. | |
QPointer< ControlList > | controlList () |
Returns the Control List for this WorkOrder (a list of control networks). | |
Template * | getTemplate () |
WorkOrder::getTemplate. | |
TargetBodyQsp | targetBody () |
WorkOrder::targetBody. | |
GuiCameraQsp | guiCamera () |
WorkOrder::guiCamera. | |
FileItemQsp | fileItem () |
WorkOrder::fileItem. | |
virtual bool | dependsOn (WorkOrder *other) const |
Indicate workorder dependency This is a virtual function whose role in child classes is to determine if this WorkOrder depends on the WorkOrder passed in as an argument. | |
Directory * | directory () const |
return the workorder project directory Returns the Directory object of the Project this WorkOrder is attached to. | |
Project * | project () const |
Returns the Project this WorkOrder is attached to. | |
void | setCreatesCleanState (bool createsCleanState) |
Declare that this work order is saving the project. | |
void | setModifiesDiskState (bool changesProjectOnDisk) |
void | setInternalData (QStringList data) |
Sets the internal data for this WorkOrder. | |
int | progressMin () const |
Gets the minimum value of the progress range of the WorkOrder. | |
int | progressMax () const |
Gets the maximum value of the progress range of the WorkOrder. | |
int | progressValue () const |
Gets the current progress value of the WorkOrder. | |
void | setProgressRange (int, int) |
Sets the progress range of the WorkOrder. | |
void | setProgressValue (int) |
Sets the current progress value for the WorkOrder. | |
QStringList | internalData () const |
Gets the internal data for this WorkOrder. | |
Protected Attributes | |
bool | m_isUndoable |
Set the workorder to be undoable/redoable This is defaulted to true - his will allow the workorder to be redone. | |
bool | m_isSynchronous |
This is defaulted to true. | |
bool | m_isSavedToHistory |
Set the work order to be shown in the HistoryTreeWidget. | |
WorkOrderStatus | m_status |
Private Types | |
enum | QueuedWorkOrderAction { NoQueuedAction , RedoQueuedAction , UndoQueuedAction } |
This enum describes the current state of a Queued WorkOrder. More... | |
Private Slots | |
void | attemptQueuedAction () |
Attempts to execute an action on the action queue. | |
void | executionFinished () |
Signals the Project that the WorkOrder is finished, deletes the update time for the Progress bar, and sets the finished status. | |
void | clearImageList () |
Clears the list of images. | |
void | clearShapeList () |
Clears the list of shapes. | |
void | updateProgress () |
Updates the progress bar. | |
void | startRedo () |
WorkOrder::startRedo This function is currently empty. | |
Private Member Functions | |
ImportImagesWorkOrder & | operator= (const ImportImagesWorkOrder &rhs) |
void | importConfirmedImages (QStringList confirmedImages, bool copyDnData) |
Imports the images. | |
bool | isInStableState () const |
Determines if the WorkOrder is in a stable state, or if it's busy doing something. | |
void | listenForImageDestruction () |
Checks to see if we have lost any images in the ImageList. | |
void | listenForShapeDestruction () |
Checks to see if we have lost any shapes in the ShapeList. | |
void | resetProgressBar () |
Resets the ProgressBar. | |
void | setProgressToFinalText () |
Sets the ProgressBar to display the final status of the operation. | |
Private Attributes | |
ImageList * | m_newImages |
List of images that are being imported in this work order. | |
ImageList * | m_list |
List of images that was succesfully imported into project. | |
QString | m_warning |
String of any errors/warnings that occurred during import. | |
bool | m_createsCleanState |
This is defaulted to false. | |
bool | m_modifiesDiskState |
This is defaulted to false. | |
QueuedWorkOrderAction | m_queuedAction |
int | m_progressRangeMinValue |
The miniumum value of the Progess Bar. | |
int | m_progressRangeMaxValue |
The maximum value of the Progess Bar. | |
int | m_progressValue |
The current value of the Progress Bar. | |
Context | m_context |
QString | m_data |
QPointer< ImageList > | m_imageList |
QPointer< ShapeList > | m_shapeList |
QPointer< ControlList > | m_controlList |
CorrelationMatrix | m_correlationMatrix |
GuiCameraQsp | m_guiCamera |
A QSharedPointer to the GuiCamera (the Camera object but encapsulated within a Gui framework. | |
Template * | m_template |
A QSharedPointer to the Template (A Template object but encapsulated within a Gui framework. | |
TargetBodyQsp | m_targetBody |
A QSharedPointer to the TargetBody (A Target object but encapsulated within a Gui framework. | |
FileItemQsp | m_fileItem |
A QSharedPointer to the FileItem. | |
QStringList | m_imageIds |
A QStringList of unique image identifiers for all of the images this WorkOrder is dealing with. | |
QStringList | m_shapeIds |
A QStringList of unique shape identifiers for all of the shapes this WorkOrder is dealing with. | |
QStringList | m_internalData |
A QStringList of internal properties for this WorkOrder. | |
QPointer< WorkOrder > | m_nextWorkOrder |
A pointer to the next WorkOrder in the queue. | |
QPointer< WorkOrder > | m_previousWorkOrder |
A pointer to the previous WorkOrder in the queue. | |
QPointer< Project > | m_project |
A pointer to the Project this WorkOrder is attached to. | |
QMutex * | m_transparentConstMutex |
This is used to protect the integrity of data the WorkOrder is working on so that only one thread at a time cann access it. | |
QDateTime | m_executionTime |
This is the date/time that setupExecution() was called. | |
QPointer< QFutureWatcher< void > > | m_futureWatcher |
A pointer to a QFutureWatcher object which monitors a QFuture object using signals and slots. | |
QPointer< ProgressBar > | m_progressBar |
A pointer to the ProgressBar. | |
QPointer< QTimer > | m_progressBarUpdateTimer |
A pointer to the QTimer which updates the ProgressBar. | |
QPointer< QTimer > | m_progressBarDeletionTimer |
A pointer to the ProgressBar deletion timer. | |
QElapsedTimer * | m_elapsedTimer |
A QElapsedTimer object holding the excecution time of the WorkOrder. | |
double | m_secondsElapsed |
The seconds that have elapsed since the WorkOrder started executing. | |
Add cubes to a project.
Asks the user for a list of cube file names and whether they should be copied into the project. The cubes are then converted to external cube label files inside the project (and cube files if the user said to copy the DN data). These files are then handed off to the project.
2012-08-24 Steven Lambright and Stuart Sides - Removed GUI-thread slowdown of image verification
2012-08-29 Steven Lambright - This work order should now work correctly even when just 1 QtConcurrent thread is enabled.
2012-10-02 Steven Lambright - Image ID's are now guaranteed to be the same after undo/redo. This is a beginning step for making work orders whose images are freed from memory undo/redo correctly.
2012-10-29 Steven Lambright - Added a prompt to save the project if importing a lot of images to a temporary project.
2017-04-05 Ian Humphrey and Makayla Shepherd - Renamed the following: execute() to setupExeuction(), asyncRedo() to execute(), syncUndo() to undoExecution(), postSyncRedo() to postExecution(), and postSyncUndo() to postUndoExecution(). Added isSynchronous(). This is related to the WorkOrder redesign. Fixes #4732.
2017-04-11 Ian Humphrey - Removed isSynchronous() and instead set inherited member m_isSynchronous to false in constructor to indicate this is an asynchronous work order. Updated documentation. References #4732.
2017-05-01 Ian Humphrey - Updated undoExecution() so that when undo, imported images are removed from the project tree. Fixes #4597.
2017-07-06 Cole Neubauer - Added ability to have cube lists without full file path Fixes #4956
2017-07-14 Cole Neubauer - Added ability successfully import after failing to import a set or list of images Fixes #5015
2017-07-14 Cole Neubauer - Made import statement more descriptive when importing a cube list Fixes #5042
2017-07-17 Makayla Shepherd - Added isExecutable(ProjectItem) to allow for importing in the context menu. Fixes #4968.
2017-07-25 Cole Neubauer - Added project()->setClean call #4969
2017-07-26 Makayla Shepherd - Fixed a crash that occurs when a failed image import is undone. Fixes #5043.
2017-07-28 Cole Neubauer - Added a pointer to the project item added by the work order. This pointer is used in the Undo funtions #5064
2017-08-11 Cole Neubauer - Created a try catch around a previously unprotected error to handle errors thrown in the workorder that halted execution. Fixes #5026.
2017-11-02 Tyler Wilson - Added a null pointer check around ProjectItem *item pointer in isExecutable to prevent potential seg faults. References #4492.
2017-11-13 Cole Neubauer - Fixed apsolute paths not being read correctly in cubelis Fixes #4956
2017-09-26 Tracie Sucharski - In importConfirmedImages, pass in the cube pointer to Image constructor rather than the future result. Null out the cube pointer after it is closed in the Image. After output ecub is created reopen created ecub as readOnly. When closing cube, the labels were being re-written because the cube was read/write. This caused a segfault when imported large number of images because of a label template file being opened too many times. Uncommented error checking in functor operator method. Fixes #4955.
2018-01-18 Tracie Sucharski - Add the targets and gui cameras to the project. Fixes #5181.
2018-07-12 Summer Stapleton - Updated how adding the targets and the gui cameras to the project is handled to address segfault. Instead of creating a camera and a target with every new image imported and adding them if needed, they are now no longer created in the first place except when needed. Fixes #5460.
2018-07-19 Tracie Sucharski - Changed default button for importing DN data to "No".
Definition at line 109 of file ImportImagesWorkOrder.h.
|
inherited |
This enumeration is for recording the context of the current Workorder (whether it is part of a project or not).
Definition at line 339 of file WorkOrder.h.
|
privateinherited |
This enum describes the current state of a Queued WorkOrder.
Definition at line 482 of file WorkOrder.h.
|
inherited |
This enumeration is used by other functions to set and retrieve the current state of the WorkOrder.
Enumerator | |
---|---|
WorkOrderFinished | This is used for work orders that will not undo or redo (See createsCleanState()) |
Definition at line 321 of file WorkOrder.h.
Isis::ImportImagesWorkOrder::ImportImagesWorkOrder | ( | Project * | project | ) |
Creates an asynchronous WorkOrder for importing images to the project.
Definition at line 48 of file ImportImagesWorkOrder.cpp.
References Isis::WorkOrder::m_isSynchronous, m_list, m_newImages, and Isis::WorkOrder::setModifiesDiskState().
Referenced by clone().
Isis::ImportImagesWorkOrder::ImportImagesWorkOrder | ( | const ImportImagesWorkOrder & | other | ) |
Copies the WorkOrder.
ImportImagesWorkOrder | &other The other work order to copy state from. |
Definition at line 66 of file ImportImagesWorkOrder.cpp.
References m_list, and m_newImages.
Isis::ImportImagesWorkOrder::~ImportImagesWorkOrder | ( | ) |
Destructor.
Releases the memory for the m_newImages member.
Definition at line 78 of file ImportImagesWorkOrder.cpp.
References m_list, and m_newImages.
|
protectedslotinherited |
Runs a copy of the current WorkOrder and stores it in the project.
Definition at line 1440 of file WorkOrder.cpp.
References Isis::Project::addToProject(), and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateslotinherited |
Attempts to execute an action on the action queue.
Definition at line 1563 of file WorkOrder.cpp.
References Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
|
inherited |
Generate unique action names We don't use action text anymore because Directory likes to rename our actions.
It converts a set of actions that have the same text, like Zoom Fit, to be in a menu named Zoom Fit with items that name their widgets. Widget names are unhelpful as a description of the action.
Definition at line 783 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::save().
|
privateslotinherited |
Clears the list of images.
Definition at line 1611 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::listenForImageDestruction().
|
privateslotinherited |
Clears the list of shapes.
Definition at line 1619 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::listenForShapeDestruction().
|
virtual |
Creates a clone of this work order.
Implements Isis::WorkOrder.
Definition at line 93 of file ImportImagesWorkOrder.cpp.
References ImportImagesWorkOrder().
|
protectedinherited |
Returns the Control List for this WorkOrder (a list of control networks).
Definition at line 694 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::ExportControlNetWorkOrder::execute(), Isis::SetActiveControlWorkOrder::execute(), Isis::WorkOrder::isExecutable(), Isis::WorkOrder::setData(), Isis::ControlHealthMonitorWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), and Isis::SetActiveControlWorkOrder::setupExecution().
|
protectedinherited |
Returns the CorrleationMatrix for this WorkOrder.
Definition at line 684 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::MatrixViewWorkOrder::execute(), Isis::WorkOrder::setData(), and Isis::MatrixViewWorkOrder::setupExecution().
|
inherited |
Returns the CleanState status (whether the Project has been saved to disk or not).
If this is set to true the work order will avoid being put on the undo stack, meaning it will not be undoable. It will also set the undo stack to a clean state, by doing this it makes all previous workorders done before the save to be no longer undoable.
Definition at line 842 of file WorkOrder.cpp.
References Isis::WorkOrder::m_createsCleanState, and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::setCreatesCleanState(), and Isis::WorkOrder::setupExecution().
|
protectedvirtualinherited |
Indicate workorder dependency This is a virtual function whose role in child classes is to determine if this WorkOrder depends on the WorkOrder passed in as an argument.
Reimplemented in Isis::CnetEditorViewWorkOrder, Isis::CubeDnViewWorkOrder, Isis::JigsawWorkOrder, Isis::MatrixViewWorkOrder, Isis::RenameProjectWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::TargetGetInfoWorkOrder, Isis::TemplateEditViewWorkOrder, and Isis::ViewControlNet3DWorkOrder.
Definition at line 769 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::redo().
|
protectedinherited |
return the workorder project directory Returns the Directory object of the Project this WorkOrder is attached to.
Definition at line 1278 of file WorkOrder.cpp.
References Isis::Project::directory(), and Isis::WorkOrder::project().
Referenced by Isis::CnetEditorViewWorkOrder::execute(), Isis::CubeDnViewWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), and Isis::JigsawWorkOrder::isExecutable().
|
slotinherited |
Disables the work order.
Disables the work order so it cannot be triggered (grayed-out).
Definition at line 1218 of file WorkOrder.cpp.
|
slotinherited |
Enables the work order.
Enables the work order so that it can be triggered (clicked).
Definition at line 1206 of file WorkOrder.cpp.
|
virtual |
Executes the work order.
This actually "does" the work order task. In this case, this imports the images into memory and copies any necessary data to disk. This was renamed from asyncRedo() to execute() according to the WorkOrder redesign.
Reimplemented from Isis::WorkOrder.
Definition at line 282 of file ImportImagesWorkOrder.cpp.
References importConfirmedImages(), Isis::WorkOrder::internalData(), Isis::WorkOrder::project(), and Isis::Project::setClean().
|
privateslotinherited |
Signals the Project that the WorkOrder is finished, deletes the update time for the Progress bar, and sets the finished status.
Definition at line 1580 of file WorkOrder.cpp.
References Isis::WorkOrder::attemptQueuedAction(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::m_elapsedTimer, Isis::WorkOrder::m_progressBarUpdateTimer, Isis::WorkOrder::m_secondsElapsed, Isis::WorkOrder::postExecution(), Isis::WorkOrder::postUndoExecution(), and Isis::WorkOrder::setProgressToFinalText().
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
inherited |
Gets the execution time of this WorkOrder.
Definition at line 852 of file WorkOrder.cpp.
References Isis::WorkOrder::m_executionTime, and Isis::WorkOrder::project().
|
protectedinherited |
Definition at line 754 of file WorkOrder.cpp.
References Isis::WorkOrder::m_fileItem, and Isis::WorkOrder::project().
Referenced by Isis::BundleObservationViewWorkOrder::execute(), Isis::BundleObservationViewWorkOrder::isExecutable(), and Isis::WorkOrder::setData().
|
staticinherited |
Attempts to query the current status of the WorkOrder.
statusString | The status we want information about. |
Definition at line 976 of file WorkOrder.cpp.
References Isis::WorkOrder::toString().
|
protectedinherited |
Definition at line 724 of file WorkOrder.cpp.
References Isis::WorkOrder::m_template, and Isis::WorkOrder::project().
Referenced by Isis::TemplateEditViewWorkOrder::execute(), and Isis::TemplateEditViewWorkOrder::setupExecution().
|
protectedinherited |
Definition at line 744 of file WorkOrder.cpp.
References Isis::WorkOrder::m_guiCamera, and Isis::WorkOrder::project().
Referenced by Isis::SensorGetInfoWorkOrder::execute(), Isis::SensorGetInfoWorkOrder::isExecutable(), Isis::WorkOrder::setData(), and Isis::SensorGetInfoWorkOrder::setupExecution().
|
protectedinherited |
Returns a pointer to the ImageList for this WorkOrder.
Definition at line 619 of file WorkOrder.cpp.
References Isis::Project::image(), Isis::WorkOrder::listenForImageDestruction(), Isis::WorkOrder::m_imageIds, and Isis::WorkOrder::project().
Referenced by Isis::RemoveImagesWorkOrder::execute(), Isis::SetActiveImageListWorkOrder::execute(), Isis::ImageListActionWorkOrder::execute(), Isis::WorkOrder::imageList(), Isis::SetActiveImageListWorkOrder::isExecutable(), Isis::WorkOrder::isExecutable(), Isis::ImageListActionWorkOrder::qualifyString(), Isis::WorkOrder::redo(), Isis::ImageListActionWorkOrder::setData(), Isis::WorkOrder::setData(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::RemoveImagesWorkOrder::setupExecution(), Isis::ImageListActionWorkOrder::setupExecution(), and Isis::ImageListActionWorkOrder::undoExecution().
|
protectedinherited |
A thread-safe method for retrieving a pointer to the imageList.
Definition at line 704 of file WorkOrder.cpp.
References Isis::WorkOrder::imageList(), and Isis::WorkOrder::m_transparentConstMutex.
|
private |
Imports the images.
Creates a project image folder and copies the cubes into it. This will create the *.ecub and *.cub files inside of the project. This can be thought of as:
mkdir project/images/import1 cp in1.cub in2.cub project/images/import1
This should be called in a non-GUI thread.
confirmedImages | This is a list of cube file names outside of the project folder |
copyDnData | If this is true, this will create both the *.cub and *.ecub files in the project. Otherwise, only the external label files (*.ecub) will be created inside of the project. |
Definition at line 482 of file ImportImagesWorkOrder.cpp.
References Isis::Project::addCamera(), Isis::Project::addImageFolder(), Isis::Project::addTarget(), Isis::ImageList::append(), Isis::Cube::camera(), Isis::Image::closeCube(), Isis::Image::displayProperties(), Isis::PvlObject::findGroup(), Isis::Image::id(), Isis::WorkOrder::internalData(), Isis::Cube::label(), m_newImages, m_warning, Isis::WorkOrder::project(), Isis::Image::setId(), Isis::WorkOrder::setInternalData(), Isis::WorkOrder::setProgressRange(), Isis::WorkOrder::setProgressValue(), Isis::Spice::target(), and Isis::PvlObject::Traverse.
Referenced by execute().
|
protectedinherited |
Gets the internal data for this WorkOrder.
Definition at line 1365 of file WorkOrder.cpp.
References Isis::WorkOrder::m_internalData, and Isis::WorkOrder::project().
Referenced by Isis::CubeDnViewWorkOrder::execute(), Isis::ExportControlNetWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), execute(), Isis::ImportMapTemplateWorkOrder::execute(), Isis::ImportRegistrationTemplateWorkOrder::execute(), Isis::ImportShapesWorkOrder::execute(), Isis::RenameProjectWorkOrder::execute(), Isis::SaveProjectAsWorkOrder::execute(), Isis::ImageListActionWorkOrder::execute(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::ImageListActionWorkOrder::setData(), Isis::CubeDnViewWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::ImportControlNetWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::setupExecution(), Isis::RenameProjectWorkOrder::setupExecution(), Isis::SensorGetInfoWorkOrder::setupExecution(), Isis::TargetGetInfoWorkOrder::setupExecution(), Isis::TemplateEditViewWorkOrder::setupExecution(), Isis::ImageListActionWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::undoExecution(), Isis::RenameProjectWorkOrder::undoExecution(), and Isis::ImageListActionWorkOrder::undoExecution().
|
virtualinherited |
Re-implement this method if your work order utilizes controls for data in order to operate.
For example, "CnetEditorViewWorkOrder" works sometimes on controls
context | This is an enum variable with two values: NoContext,ProjectContext. |
Reimplemented in Isis::RenameProjectWorkOrder.
Definition at line 179 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::isExecutable().
|
virtualinherited |
Re-implement this method if your work order utilizes a control for data in order to operate.
control | A control networks. |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.
controls | A list of control networks. |
Reimplemented in Isis::CnetEditorViewWorkOrder, Isis::ControlHealthMonitorWorkOrder, Isis::ExportControlNetWorkOrder, Isis::SetActiveControlWorkOrder, and Isis::ViewControlNet3DWorkOrder.
Definition at line 231 of file WorkOrder.cpp.
|
virtualinherited |
Reimplemented in Isis::MatrixViewWorkOrder.
Definition at line 236 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your WorkOrder utilizes FileItemQsp (a QSharedPointer to a FileItem object) for data in order to operate.
FileItemQsp |
Reimplemented in Isis::BundleObservationViewWorkOrder.
Definition at line 443 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your WorkOrder utilizes GuiCameraQsp (a QSharedPointer to a GuiCamera object) for data in order to operate.
GuiCameraQsp |
Reimplemented in Isis::SensorGetInfoWorkOrder.
Definition at line 431 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes images for data in order to operate.
For example, "Footprint2DViewWorkOrder" works sometimes on images - the logic in side of Footprint2DViewWorkOrder::isExecutable(ImageList) determines whethere or not a user is prompted with this work order as a possibility.
images | An image list that this work order should execute on |
Reimplemented in Isis::SetActiveImageListWorkOrder, Isis::CubeDnViewWorkOrder, Isis::ExportImagesWorkOrder, Isis::Footprint2DViewWorkOrder, Isis::ImageFileListViewWorkOrder, Isis::RemoveImagesWorkOrder, and Isis::ImageListActionWorkOrder.
Definition at line 193 of file WorkOrder.cpp.
|
virtual |
This method returns true if the user clicked on a project tree node with the text "Images".
This is used by Directory::supportedActions(DataType data) to determine what actions are appended to context menus.
item | The ProjectItem that was clicked |
Reimplemented from Isis::WorkOrder.
Definition at line 107 of file ImportImagesWorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes shapes for data in order to operate.
For example, "ImportShapeWorkOrder" works on shapes - the logic in side of ImportShapeWorkOrder::isExecutable(ShapeList) determines whethere or not a user is prompted with this work order as a possibility.
shapes | A shape list that this work order should execute on |
Reimplemented in Isis::CubeDnViewWorkOrder, and Isis::Footprint2DViewWorkOrder.
Definition at line 207 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.
controls | A list of control networks. |
Reimplemented in Isis::TargetGetInfoWorkOrder.
Definition at line 407 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.
controls | A list of control networks. |
Definition at line 419 of file WorkOrder.cpp.
|
inherited |
Returns the finished state of this WorkOrder.
Definition at line 862 of file WorkOrder.cpp.
References Isis::WorkOrder::WorkOrderFinished.
|
privateinherited |
Determines if the WorkOrder is in a stable state, or if it's busy doing something.
Definition at line 1451 of file WorkOrder.cpp.
References Isis::WorkOrder::isRedoing(), and Isis::WorkOrder::isUndoing().
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::save(), and Isis::WorkOrder::undo().
|
inherited |
Returns the redoing status of this WorkOrder.
Definition at line 871 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::isInStableState(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().
|
inherited |
Returns the WorkOrder redone status.
Definition at line 881 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::setProgressToFinalText().
|
inherited |
Returns true if this work order is to be shown in History, otherwise false.
Definition at line 818 of file WorkOrder.cpp.
References Isis::WorkOrder::m_isSavedToHistory, and Isis::WorkOrder::project().
|
inherited |
Returns true if this work order is run synchronously, otherwise false.
Definition at line 829 of file WorkOrder.cpp.
References Isis::WorkOrder::m_isSynchronous, and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
|
inherited |
Returns true if this work order is undoable, otherwise false.
This needs to be set to true and createsCleanState needs to be set to false in order for a WorkOrder to appear on the undoStack. This should be done by setting the member variable and should not be overloading this function.
Definition at line 807 of file WorkOrder.cpp.
References Isis::WorkOrder::m_isUndoable, and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::setupExecution().
|
inherited |
Returns the WorkOrderUndoing state.
Definition at line 891 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().
|
inherited |
Returns the WorkOrder undo status.
Definition at line 901 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::undo().
|
privateinherited |
Checks to see if we have lost any images in the ImageList.
If we have, then destroy the entire list. This will send a signal that the list needs to be rebuilt if requested.
Definition at line 1467 of file WorkOrder.cpp.
References Isis::WorkOrder::clearImageList(), Isis::Image::id(), and Isis::WorkOrder::m_imageIds.
Referenced by Isis::WorkOrder::imageList(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
Checks to see if we have lost any shapes in the ShapeList.
If we have, then destroy the entire list. This will send a signal that the list needs to be rebuilt if requested.
TODO 2016-07-26 TLS Combine this with listenForImageDestruction() - Basically duplicate code.
Definition at line 1490 of file WorkOrder.cpp.
References Isis::WorkOrder::clearShapeList(), Isis::Shape::id(), and Isis::WorkOrder::m_shapeIds.
Referenced by Isis::WorkOrder::setData(), Isis::WorkOrder::shapeList(), and Isis::WorkOrder::WorkOrder().
|
inherited |
Returns the modified disk state.
Definition at line 912 of file WorkOrder.cpp.
References Isis::WorkOrder::m_modifiesDiskState, and Isis::WorkOrder::project().
|
inherited |
Gets the next WorkOrder.
Definition at line 922 of file WorkOrder.cpp.
References Isis::WorkOrder::m_nextWorkOrder, and Isis::WorkOrder::project().
|
protectedvirtual |
Associates the imported images to the project.
After execute finishes, associates the imported images to the project. This will also notify the project if there are any warnings that occurred related to the import. This was renamed from postSyncRedo() to postExecution() according to the WorkOrder redesign.
Reimplemented from Isis::WorkOrder.
Definition at line 308 of file ImportImagesWorkOrder.cpp.
References Isis::Project::addImages(), Isis::Project::images(), m_list, m_newImages, m_warning, Isis::WorkOrder::project(), and Isis::WorkOrder::WorkOrderFinished.
|
protectedvirtual |
Cleans up memory (images) after the undo execution occurs.
After the undoExecution() occurs, this cleans up memory that was allocated for the images from this import. This was renamed from postSyncUndo() to postUndoExecution() according to the WorkOrder redesign.
Reimplemented from Isis::WorkOrder.
Definition at line 262 of file ImportImagesWorkOrder.cpp.
References m_list, and Isis::WorkOrder::project().
|
inherited |
Gets the previous WorkOrder.
Definition at line 932 of file WorkOrder.cpp.
References Isis::WorkOrder::m_previousWorkOrder, and Isis::WorkOrder::project().
Referenced by Isis::Project::lastNotUndoneWorkOrder(), Isis::Project::lastNotUndoneWorkOrder(), and Isis::WorkOrder::redo().
|
inherited |
Returns the ProgressBar.
Definition at line 963 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressBar, and Isis::WorkOrder::project().
Referenced by Isis::OpenProjectWorkOrder::setupExecution().
|
protectedinherited |
Gets the maximum value of the progress range of the WorkOrder.
Definition at line 1325 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressRangeMaxValue, and Isis::WorkOrder::project().
|
protectedinherited |
Gets the minimum value of the progress range of the WorkOrder.
Definition at line 1315 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressRangeMinValue, and Isis::WorkOrder::project().
|
protectedinherited |
Gets the current progress value of the WorkOrder.
Definition at line 1335 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressValue, and Isis::WorkOrder::project().
|
protectedinherited |
Returns the Project this WorkOrder is attached to.
IException::Programmer | "This work order no longer has a project." |
Definition at line 1288 of file WorkOrder.cpp.
References Isis::WorkOrder::m_project, and Isis::IException::Programmer.
Referenced by Isis::WorkOrder::addCloneToProject(), Isis::ImportControlNetWorkOrder::cnetReady(), Isis::WorkOrder::controlList(), Isis::WorkOrder::correlationMatrix(), Isis::ImportControlNetWorkOrder::CreateControlsFunctor::CreateControlsFunctor(), Isis::WorkOrder::createsCleanState(), Isis::WorkOrder::directory(), Isis::BundleObservationViewWorkOrder::execute(), Isis::CloseProjectWorkOrder::execute(), Isis::ControlHealthMonitorWorkOrder::execute(), Isis::CubeDnViewWorkOrder::execute(), Isis::ExportControlNetWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), execute(), Isis::ImportMapTemplateWorkOrder::execute(), Isis::ImportRegistrationTemplateWorkOrder::execute(), Isis::ImportShapesWorkOrder::execute(), Isis::JigsawWorkOrder::execute(), Isis::MatrixViewWorkOrder::execute(), Isis::OpenProjectWorkOrder::execute(), Isis::RemoveImagesWorkOrder::execute(), Isis::RenameProjectWorkOrder::execute(), Isis::SaveProjectAsWorkOrder::execute(), Isis::SensorGetInfoWorkOrder::execute(), Isis::SetActiveControlWorkOrder::execute(), Isis::SetActiveImageListWorkOrder::execute(), Isis::TargetGetInfoWorkOrder::execute(), Isis::TemplateEditViewWorkOrder::execute(), Isis::WorkOrder::executionTime(), Isis::WorkOrder::fileItem(), Isis::WorkOrder::getTemplate(), Isis::WorkOrder::guiCamera(), Isis::WorkOrder::imageList(), importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::WorkOrder::internalData(), Isis::JigsawWorkOrder::isExecutable(), Isis::SetActiveControlWorkOrder::isExecutable(), Isis::SensorGetInfoWorkOrder::isExecutable(), Isis::SetActiveImageListWorkOrder::isExecutable(), Isis::TemplateEditViewWorkOrder::isExecutable(), Isis::TargetGetInfoWorkOrder::isExecutable(), Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isRedone(), Isis::WorkOrder::isSavedToHistory(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::isUndoable(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::isUndone(), Isis::WorkOrder::modifiesDiskState(), Isis::WorkOrder::next(), Isis::ExportControlNetWorkOrder::postExecution(), Isis::ImportControlNetWorkOrder::postExecution(), postExecution(), Isis::ImportShapesWorkOrder::postExecution(), postUndoExecution(), Isis::ImportShapesWorkOrder::postUndoExecution(), Isis::WorkOrder::previous(), Isis::WorkOrder::progressBar(), Isis::WorkOrder::progressMax(), Isis::WorkOrder::progressMin(), Isis::WorkOrder::progressValue(), Isis::WorkOrder::redo(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::CloseProjectWorkOrder::setupExecution(), Isis::CubeDnViewWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), setupExecution(), Isis::MatrixViewWorkOrder::setupExecution(), Isis::OpenProjectWorkOrder::setupExecution(), Isis::RemoveImagesWorkOrder::setupExecution(), Isis::RenameProjectWorkOrder::setupExecution(), Isis::SaveProjectWorkOrder::setupExecution(), Isis::SetActiveControlWorkOrder::setupExecution(), Isis::WorkOrder::shapeList(), Isis::WorkOrder::statusText(), Isis::WorkOrder::targetBody(), undoExecution(), Isis::ImportMapTemplateWorkOrder::undoExecution(), Isis::ImportRegistrationTemplateWorkOrder::undoExecution(), Isis::ImportShapesWorkOrder::undoExecution(), Isis::MatrixViewWorkOrder::undoExecution(), Isis::RenameProjectWorkOrder::undoExecution(), and Isis::WorkOrder::WorkOrder().
|
virtualslotinherited |
Starts (or enqueues) a redo.
This should not be re-implemented by children.
Definition at line 1031 of file WorkOrder.cpp.
References Isis::WorkOrder::attemptQueuedAction(), Isis::WorkOrder::dependsOn(), Isis::WorkOrder::execute(), Isis::WorkOrder::executionFinished(), Isis::WorkOrder::imageList(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isRedone(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::m_elapsedTimer, Isis::WorkOrder::m_futureWatcher, Isis::WorkOrder::m_progressBar, Isis::WorkOrder::previous(), Isis::WorkOrder::project(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::shapeList().
Referenced by Isis::WorkOrder::attemptQueuedAction().
|
privateinherited |
Resets the ProgressBar.
Definition at line 1508 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressBar, Isis::WorkOrder::m_progressBarDeletionTimer, Isis::WorkOrder::m_progressBarUpdateTimer, Isis::WorkOrder::m_progressRangeMaxValue, Isis::WorkOrder::m_progressRangeMinValue, Isis::WorkOrder::m_progressValue, and Isis::WorkOrder::updateProgress().
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::setupExecution(), and Isis::WorkOrder::undo().
|
inherited |
: Saves a WorkOrder to a data stream.
The XML output format looks like this:
<workOrder actionText="..." undoText="..." type="..." status="..."> <images> <image id="..." > </images> <internalDataValues> <dataValue value="..." > </internalDataValues> </workOrder>
b QXmlStreamWriter stream The data stream we are saving the WorkOrder to.
IException::Unknown | This exception is thrown if save is called while the WorkOrder is currently running. |
Definition at line 532 of file WorkOrder.cpp.
References Isis::WorkOrder::bestText(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::m_executionTime, Isis::WorkOrder::m_imageIds, Isis::WorkOrder::m_internalData, Isis::WorkOrder::m_shapeIds, Isis::IException::Programmer, and Isis::WorkOrder::toString().
Referenced by Isis::CloseProjectWorkOrder::setupExecution(), and Isis::OpenProjectWorkOrder::setupExecution().
|
protectedinherited |
Declare that this work order is saving the project.
This makes the work order not appear in the undo stack (cannot undo/redo), and instead it is marked as a 'clean' state of the project. The QUndoCommand undo/redo will never be called. The default for createsCleanState is false. If this is set to true all wrokorders before this call will be locked.
createsCleanState | True if this work order is going to save the project to disk, False otherwise. |
Definition at line 1651 of file WorkOrder.cpp.
References Isis::WorkOrder::createsCleanState(), and Isis::WorkOrder::m_createsCleanState.
Referenced by Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::OpenProjectWorkOrder::OpenProjectWorkOrder(), Isis::SaveProjectAsWorkOrder::SaveProjectAsWorkOrder(), and Isis::SaveProjectWorkOrder::SaveProjectWorkOrder().
|
virtualinherited |
Sets the context data for this WorkOrder.
context | This is an enum variable with two values: NoContext,ProjectContext. |
Definition at line 245 of file WorkOrder.cpp.
Referenced by Isis::ImageListActionWorkOrder::setData(), Isis::WorkOrder::setData(), Isis::ExportControlNetWorkOrder::setupExecution(), and Isis::Directory::supportedActions().
|
virtualinherited |
Sets the Control data for this WorkOrder.
controls. | A pointer to the Control |
Sets the ControlList data for this WorkOrder.
controls. | A pointer to the ControlList (which is a list of control networks). |
Definition at line 294 of file WorkOrder.cpp.
|
virtualinherited |
Sets the CorrelationMatrix data for this WorkOrder.
correlationMatrix | The matrix data. |
Definition at line 303 of file WorkOrder.cpp.
References Isis::WorkOrder::correlationMatrix().
|
virtualinherited |
Sets the FileItem data for this WorkOrder.
FileItem | A QSharedPointer to the FileItem. |
Definition at line 341 of file WorkOrder.cpp.
References Isis::WorkOrder::fileItem(), and Isis::WorkOrder::m_fileItem.
|
virtualinherited |
Sets the GuiCamera data for this WorkOrder.
guiCamera | A QSharedPointer to the GuiCamera. |
Definition at line 332 of file WorkOrder.cpp.
References Isis::WorkOrder::guiCamera(), and Isis::WorkOrder::m_guiCamera.
|
virtualinherited |
Sets the ImageList data for this WorkOrder.
images | A pointer to the updated ImageList. |
Reimplemented in Isis::ImageListActionWorkOrder.
Definition at line 258 of file WorkOrder.cpp.
References Isis::WorkOrder::listenForImageDestruction(), and Isis::WorkOrder::m_imageIds.
|
virtualinherited |
Sets the internal data to the data stored in a ProjectItem.
item | The item containing the data. |
Definition at line 350 of file WorkOrder.cpp.
References Isis::ImageList::append(), Isis::ShapeList::append(), Isis::ProjectItem::control(), Isis::WorkOrder::controlList(), Isis::ProjectItem::controlList(), Isis::ProjectItem::correlationMatrix(), Isis::ProjectItem::fileItem(), Isis::ProjectItem::getTemplate(), Isis::ProjectItem::guiCamera(), Isis::ProjectItem::image(), Isis::WorkOrder::imageList(), Isis::ProjectItem::imageList(), Isis::ProjectItem::isControl(), Isis::ProjectItem::isControlList(), Isis::ProjectItem::isCorrelationMatrix(), Isis::ProjectItem::isFileItem(), Isis::ProjectItem::isGuiCamera(), Isis::ProjectItem::isImage(), Isis::ProjectItem::isImageList(), Isis::ProjectItem::isProject(), Isis::ProjectItem::isShape(), Isis::ProjectItem::isShapeList(), Isis::ProjectItem::isTargetBody(), Isis::WorkOrder::setData(), Isis::ProjectItem::shape(), Isis::WorkOrder::shapeList(), Isis::ProjectItem::shapeList(), and Isis::ProjectItem::targetBody().
|
virtualinherited |
Definition at line 249 of file WorkOrder.cpp.
|
virtualinherited |
Sets the ShapeList data for this WorkOrder.
images | A pointer to the updated ShapeList. |
Definition at line 271 of file WorkOrder.cpp.
References Isis::WorkOrder::listenForShapeDestruction(), and Isis::WorkOrder::m_shapeIds.
|
virtualinherited |
Sets the TargetBody data for this WorkOrder.
targetBody | A QSharedPointer to the TargetBody. |
Definition at line 314 of file WorkOrder.cpp.
References Isis::WorkOrder::m_targetBody, and Isis::WorkOrder::targetBody().
|
virtualinherited |
Sets the TargetBody data for this WorkOrder.
targetBody | A QSharedPointer to the TargetBody. |
Definition at line 323 of file WorkOrder.cpp.
References Isis::WorkOrder::m_template.
|
protectedinherited |
Sets the internal data for this WorkOrder.
WorkOrders may not use member variables to store data. Any data needed for the workorder should be saved in to the base WorkOrder using setInternalData.
data | The data to set the internal data to. |
Definition at line 1306 of file WorkOrder.cpp.
References Isis::WorkOrder::m_internalData.
Referenced by Isis::ImageListActionWorkOrder::execute(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::ImportMapTemplateWorkOrder::isExecutable(), Isis::ImportRegistrationTemplateWorkOrder::isExecutable(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::CubeDnViewWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::ImportControlNetWorkOrder::setupExecution(), setupExecution(), Isis::ImportMapTemplateWorkOrder::setupExecution(), Isis::ImportRegistrationTemplateWorkOrder::setupExecution(), Isis::ImportShapesWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::setupExecution(), Isis::RenameProjectWorkOrder::setupExecution(), Isis::SaveProjectAsWorkOrder::setupExecution(), Isis::SensorGetInfoWorkOrder::setupExecution(), Isis::TargetGetInfoWorkOrder::setupExecution(), Isis::TemplateEditViewWorkOrder::setupExecution(), Isis::ImageListActionWorkOrder::setupExecution(), and Isis::ImageListActionWorkOrder::undoExecution().
|
protectedinherited |
By default, m_modifiesDiskState is False. If a WorkOrder modifies the Project on disk as a result of it's action, this should be set to true.
changesProjectOnDisk | True if this WorkOrder modifies the Project on disk. False if it does not. |
Definition at line 1662 of file WorkOrder.cpp.
References Isis::WorkOrder::m_modifiesDiskState.
Referenced by Isis::ImportControlNetWorkOrder::ImportControlNetWorkOrder(), ImportImagesWorkOrder(), Isis::ImportMapTemplateWorkOrder::ImportMapTemplateWorkOrder(), Isis::ImportRegistrationTemplateWorkOrder::ImportRegistrationTemplateWorkOrder(), and Isis::ImportShapesWorkOrder::ImportShapesWorkOrder().
|
inherited |
Sets the next WorkOrder in the sequence.
nextWorkOrder | The next WorkOrder. |
Definition at line 601 of file WorkOrder.cpp.
References Isis::WorkOrder::m_nextWorkOrder.
|
inherited |
Sets the previous WorkOrder in the sequence.
previousWorkOrder | The previous WorkOrder. |
Definition at line 610 of file WorkOrder.cpp.
References Isis::WorkOrder::m_previousWorkOrder.
|
protectedinherited |
Sets the progress range of the WorkOrder.
minValue | The progress range minimum value. |
maxValue | The progress range maximum value. |
Definition at line 1346 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressRangeMaxValue, and Isis::WorkOrder::m_progressRangeMinValue.
Referenced by Isis::ImportControlNetWorkOrder::execute(), importConfirmedImages(), and Isis::ImportShapesWorkOrder::importConfirmedShapes().
|
privateinherited |
Sets the ProgressBar to display the final status of the operation.
Definition at line 1532 of file WorkOrder.cpp.
References Isis::WorkOrder::isRedone(), Isis::WorkOrder::isUndone(), Isis::WorkOrder::m_progressBar, and Isis::WorkOrder::m_progressBarDeletionTimer.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::redo(), Isis::WorkOrder::setupExecution(), and Isis::WorkOrder::undo().
|
protectedinherited |
Sets the current progress value for the WorkOrder.
int | value The value to set the current progress to. |
Definition at line 1356 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressValue.
Referenced by Isis::ImportControlNetWorkOrder::execute(), importConfirmedImages(), and Isis::ImportShapesWorkOrder::importConfirmedShapes().
|
virtual |
Sets up this work order before being executed.
First invokes WorkOrder's setupExecution(). Prompts the user for cubes and image list files to import and stores them via a setInternalData() call. If there are more than 100 images to import, the user is prompted if they want to save their project before the import occurs. If yes, a SaveProjectWorkOrder will be executed. This setup is considered successful if the user does not hit cancel on a dialog prompt and if there is at least one image has been selected by the user to import. This method was renamed from execute() to setupExecution() according to the WorkOrder redesign.
Reimplemented from Isis::WorkOrder.
Definition at line 132 of file ImportImagesWorkOrder.cpp.
References Isis::FileName::expanded(), Isis::FileName::extension(), Isis::FileName::original(), Isis::FileName::path(), Isis::WorkOrder::project(), Isis::WorkOrder::setInternalData(), and Isis::WorkOrder::setupExecution().
|
protectedinherited |
@briefReturns a pointer to the ShapeList for this WorkOrder.
Definition at line 651 of file WorkOrder.cpp.
References Isis::WorkOrder::listenForShapeDestruction(), Isis::WorkOrder::m_shapeIds, Isis::WorkOrder::project(), and Isis::Project::shape().
Referenced by Isis::WorkOrder::isExecutable(), Isis::WorkOrder::redo(), Isis::WorkOrder::setData(), and Isis::WorkOrder::shapeList().
|
protectedinherited |
A thread-safe method for retrieving a pointer to the shapeList.
Definition at line 714 of file WorkOrder.cpp.
References Isis::WorkOrder::m_transparentConstMutex, and Isis::WorkOrder::shapeList().
|
privateslotinherited |
WorkOrder::startRedo This function is currently empty.
Definition at line 1638 of file WorkOrder.cpp.
|
inherited |
Definition at line 942 of file WorkOrder.cpp.
References Isis::WorkOrder::m_secondsElapsed, Isis::WorkOrder::project(), and Isis::WorkOrder::toString().
|
protectedinherited |
Definition at line 734 of file WorkOrder.cpp.
References Isis::WorkOrder::m_targetBody, and Isis::WorkOrder::project().
Referenced by Isis::TargetGetInfoWorkOrder::execute(), Isis::TargetGetInfoWorkOrder::isExecutable(), Isis::WorkOrder::setData(), and Isis::TargetGetInfoWorkOrder::setupExecution().
|
staticinherited |
Gets the current status of the WorkOrder.
status | An enumeration of all possible WorkOrder states. |
Definition at line 997 of file WorkOrder.cpp.
References Isis::WorkOrder::WorkOrderFinished.
Referenced by Isis::WorkOrder::fromStatusString(), Isis::WorkOrder::save(), and Isis::WorkOrder::statusText().
|
virtualslotinherited |
Starts (or enqueues) an undo.
This should not be re-implemented by children.
Definition at line 1134 of file WorkOrder.cpp.
References Isis::WorkOrder::attemptQueuedAction(), Isis::WorkOrder::executionFinished(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::isUndone(), Isis::WorkOrder::m_elapsedTimer, Isis::WorkOrder::m_futureWatcher, Isis::WorkOrder::m_progressBar, Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::undoExecution().
Referenced by Isis::WorkOrder::attemptQueuedAction().
|
protectedvirtual |
Undoes the work order's execute.
After this ImportImagesWorkOrder has executed and finished (all the images have been read), this removes the images from this import from disk in the project's directory. This was renamed from asyncUndo() to undoExecution() according to the WorkOrder redesign.
Reimplemented from Isis::WorkOrder.
Definition at line 240 of file ImportImagesWorkOrder.cpp.
References Isis::ImageList::deleteFromDisk(), Isis::Project::directory(), Isis::ProjectItemModel::findItemData(), m_list, Isis::Directory::model(), Isis::WorkOrder::project(), Isis::ProjectItemModel::removeItem(), and Isis::Project::waitForImageReaderFinished().
|
privateslotinherited |
Updates the progress bar.
Definition at line 1627 of file WorkOrder.cpp.
References Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::m_progressBar, Isis::WorkOrder::m_progressRangeMaxValue, Isis::WorkOrder::m_progressRangeMinValue, and Isis::WorkOrder::m_progressValue.
Referenced by Isis::WorkOrder::resetProgressBar().
|
privateinherited |
Definition at line 547 of file WorkOrder.h.
|
privateinherited |
Definition at line 551 of file WorkOrder.h.
|
privateinherited |
Definition at line 552 of file WorkOrder.h.
|
privateinherited |
This is defaulted to false.
If a work order saves the project to disk, this causes a 'clean' (non-dirty) state. These work orders should call setCreatesCleanState(true) in their constructor.
Definition at line 523 of file WorkOrder.h.
Referenced by Isis::WorkOrder::createsCleanState(), Isis::WorkOrder::setCreatesCleanState(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
Definition at line 548 of file WorkOrder.h.
|
privateinherited |
A QElapsedTimer object holding the excecution time of the WorkOrder.
Definition at line 651 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
This is the date/time that setupExecution() was called.
Definition at line 621 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionTime(), Isis::WorkOrder::save(), Isis::WorkOrder::setupExecution(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QSharedPointer to the FileItem.
Definition at line 577 of file WorkOrder.h.
Referenced by Isis::WorkOrder::fileItem(), Isis::WorkOrder::setData(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A pointer to a QFutureWatcher object which monitors a QFuture object using signals and slots.
A QFuture object represents the results of an asynchrounous operation.
Definition at line 628 of file WorkOrder.h.
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), Isis::WorkOrder::WorkOrder(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A QSharedPointer to the GuiCamera (the Camera object but encapsulated within a Gui framework.
Definition at line 557 of file WorkOrder.h.
Referenced by Isis::WorkOrder::guiCamera(), Isis::WorkOrder::setData(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QStringList of unique image identifiers for all of the images this WorkOrder is dealing with.
Definition at line 584 of file WorkOrder.h.
Referenced by Isis::WorkOrder::imageList(), Isis::WorkOrder::listenForImageDestruction(), Isis::WorkOrder::save(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
Definition at line 549 of file WorkOrder.h.
|
privateinherited |
A QStringList of internal properties for this WorkOrder.
Definition at line 595 of file WorkOrder.h.
Referenced by Isis::WorkOrder::internalData(), Isis::WorkOrder::save(), Isis::WorkOrder::setInternalData(), and Isis::WorkOrder::WorkOrder().
|
protectedinherited |
Set the work order to be shown in the HistoryTreeWidget.
This is defaulted to true. If true the work order will be shown in the HistoryTreeWidget if false it will not be shown.
Definition at line 511 of file WorkOrder.h.
Referenced by Isis::BundleObservationViewWorkOrder::BundleObservationViewWorkOrder(), Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::CubeDnViewWorkOrder::CubeDnViewWorkOrder(), Isis::Footprint2DViewWorkOrder::Footprint2DViewWorkOrder(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::WorkOrder::isSavedToHistory(), Isis::MatrixViewWorkOrder::MatrixViewWorkOrder(), Isis::SensorGetInfoWorkOrder::SensorGetInfoWorkOrder(), Isis::TargetGetInfoWorkOrder::TargetGetInfoWorkOrder(), Isis::TemplateEditViewWorkOrder::TemplateEditViewWorkOrder(), Isis::ViewControlNet3DWorkOrder::ViewControlNet3DWorkOrder(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
protectedinherited |
This is defaulted to true.
If true, the work order will be executed on the GUI thread synchronously. If false, then the work order will be queued for execution on a non-GUI thread and will not block the GUI.
Definition at line 504 of file WorkOrder.h.
Referenced by Isis::ExportControlNetWorkOrder::ExportControlNetWorkOrder(), Isis::ImportControlNetWorkOrder::ImportControlNetWorkOrder(), ImportImagesWorkOrder(), Isis::ImportShapesWorkOrder::ImportShapesWorkOrder(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
protectedinherited |
Set the workorder to be undoable/redoable This is defaulted to true - his will allow the workorder to be redone.
Note the workorder undoExecution() method must be implemented. This will result on the workorder being placed on the QUndoStack and being displayed in the history as being undoable. If set to false, the work order will not be put on the QUndoStack and the workorder will not be able to be undone.
Definition at line 497 of file WorkOrder.h.
Referenced by Isis::BundleObservationViewWorkOrder::BundleObservationViewWorkOrder(), Isis::BundleObservationViewWorkOrder::BundleObservationViewWorkOrder(), Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::ControlHealthMonitorWorkOrder::ControlHealthMonitorWorkOrder(), Isis::CubeDnViewWorkOrder::CubeDnViewWorkOrder(), Isis::ExportControlNetWorkOrder::ExportControlNetWorkOrder(), Isis::Footprint2DViewWorkOrder::Footprint2DViewWorkOrder(), Isis::Footprint2DViewWorkOrder::Footprint2DViewWorkOrder(), Isis::ImportControlNetWorkOrder::ImportControlNetWorkOrder(), Isis::ImportMapTemplateWorkOrder::ImportMapTemplateWorkOrder(), Isis::ImportRegistrationTemplateWorkOrder::ImportRegistrationTemplateWorkOrder(), Isis::ImportShapesWorkOrder::ImportShapesWorkOrder(), Isis::WorkOrder::isUndoable(), Isis::JigsawWorkOrder::JigsawWorkOrder(), Isis::OpenProjectWorkOrder::OpenProjectWorkOrder(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::SaveProjectAsWorkOrder::SaveProjectAsWorkOrder(), Isis::SensorGetInfoWorkOrder::SensorGetInfoWorkOrder(), Isis::SetActiveControlWorkOrder::SetActiveControlWorkOrder(), Isis::SetActiveImageListWorkOrder::SetActiveImageListWorkOrder(), Isis::TargetGetInfoWorkOrder::TargetGetInfoWorkOrder(), Isis::TemplateEditViewWorkOrder::TemplateEditViewWorkOrder(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
private |
List of images that was succesfully imported into project.
Definition at line 169 of file ImportImagesWorkOrder.h.
Referenced by ImportImagesWorkOrder(), ImportImagesWorkOrder(), postExecution(), postUndoExecution(), undoExecution(), and ~ImportImagesWorkOrder().
|
privateinherited |
This is defaulted to false.
If a WorkOrder modifies the project on disk to perform its actions (for example, an import WorkOrder), the WorkOrder should call setModifiesDiskState(true) in its constructor.
Definition at line 530 of file WorkOrder.h.
Referenced by Isis::WorkOrder::modifiesDiskState(), Isis::WorkOrder::setModifiesDiskState(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
private |
List of images that are being imported in this work order.
Definition at line 168 of file ImportImagesWorkOrder.h.
Referenced by importConfirmedImages(), ImportImagesWorkOrder(), ImportImagesWorkOrder(), postExecution(), and ~ImportImagesWorkOrder().
|
privateinherited |
A pointer to the next WorkOrder in the queue.
Definition at line 600 of file WorkOrder.h.
Referenced by Isis::WorkOrder::next(), Isis::WorkOrder::setNext(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A pointer to the previous WorkOrder in the queue.
Definition at line 605 of file WorkOrder.h.
Referenced by Isis::WorkOrder::previous(), Isis::WorkOrder::setPrevious(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A pointer to the ProgressBar.
Definition at line 635 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressBar(), Isis::WorkOrder::redo(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), Isis::WorkOrder::setupExecution(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().
|
privateinherited |
A pointer to the ProgressBar deletion timer.
Definition at line 645 of file WorkOrder.h.
Referenced by Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A pointer to the QTimer which updates the ProgressBar.
Definition at line 640 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::resetProgressBar(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
The maximum value of the Progess Bar.
Definition at line 541 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressMax(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressRange(), Isis::WorkOrder::updateProgress(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
The miniumum value of the Progess Bar.
Definition at line 537 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressMin(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressRange(), Isis::WorkOrder::updateProgress(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
The current value of the Progress Bar.
Definition at line 545 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressValue(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressValue(), Isis::WorkOrder::updateProgress(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A pointer to the Project this WorkOrder is attached to.
Definition at line 610 of file WorkOrder.h.
Referenced by Isis::ImportControlNetWorkOrder::CreateControlsFunctor::operator()(), Isis::WorkOrder::project(), Isis::WorkOrder::WorkOrder(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
Definition at line 532 of file WorkOrder.h.
|
privateinherited |
The seconds that have elapsed since the WorkOrder started executing.
Definition at line 656 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::statusText(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QStringList of unique shape identifiers for all of the shapes this WorkOrder is dealing with.
Definition at line 590 of file WorkOrder.h.
Referenced by Isis::WorkOrder::listenForShapeDestruction(), Isis::WorkOrder::save(), Isis::WorkOrder::setData(), Isis::WorkOrder::shapeList(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
Definition at line 550 of file WorkOrder.h.
|
protectedinherited |
Definition at line 513 of file WorkOrder.h.
|
privateinherited |
A QSharedPointer to the TargetBody (A Target object but encapsulated within a Gui framework.
Definition at line 571 of file WorkOrder.h.
Referenced by Isis::WorkOrder::setData(), Isis::WorkOrder::targetBody(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QSharedPointer to the Template (A Template object but encapsulated within a Gui framework.
Definition at line 564 of file WorkOrder.h.
Referenced by Isis::WorkOrder::getTemplate(), Isis::WorkOrder::setData(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
This is used to protect the integrity of data the WorkOrder is working on so that only one thread at a time cann access it.
Definition at line 616 of file WorkOrder.h.
Referenced by Isis::WorkOrder::imageList(), Isis::WorkOrder::shapeList(), Isis::WorkOrder::WorkOrder(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::~WorkOrder().
|
private |
String of any errors/warnings that occurred during import.
Definition at line 170 of file ImportImagesWorkOrder.h.
Referenced by importConfirmedImages(), and postExecution().