Isis 3 Programmer Reference
ImportImagesWorkOrder.h
Go to the documentation of this file.
1 #ifndef ImportImagesWorkOrder_H
2 #define ImportImagesWorkOrder_H
3 
25 #include "WorkOrder.h"
26 
27 #include <functional>
28 
29 #include <QDir>
30 #include <QMutex>
31 
32 #include "IException.h"
33 
34 class QString;
35 
36 namespace Isis {
37  class Cube;
38  class FileName;
39 
110  Q_OBJECT
111  public:
115 
116  virtual ImportImagesWorkOrder *clone() const;
117 
118  virtual bool isExecutable(ProjectItem *item);
119  virtual bool setupExecution();
120 
121  virtual void execute();
122 
123  protected:
124  virtual void undoExecution();
125  virtual void postExecution();
126  virtual void postUndoExecution();
127 
128  private:
129  ImportImagesWorkOrder &operator=(const ImportImagesWorkOrder &rhs);
130 
140  public std::unary_function<const FileName &, Cube *> {
141  public:
143  QDir destinationFolder, bool copyDnData);
146 
147  Cube *operator()(const FileName &original);
148 
149  IException errors() const;
150 
151  private:
154 
158 
159  QMutex m_errorsLock;
162  };
163 
164  private:
165  void importConfirmedImages(QStringList confirmedImages, bool copyDnData);
166 
167  private:
170  QString m_warning;
171  };
172 }
173 #endif // ImportImagesWorkOrder_H
bool m_copyDnData
Indicates whether the cube data will be copied to the project.
Cube * operator()(const FileName &original)
Overloads the callable operator to invoke this functor.
Internalizes a list of images and allows for operations on the entire list.
Definition: ImageList.h:55
QSharedPointer< IException > m_errors
Stores any errors that occur during import.
The main project for ipce.
Definition: Project.h:289
IException errors() const
Indicates if any errors occurred during the import.
File name manipulation and expansion.
Definition: FileName.h:116
Add cubes to a project.
QThread * m_guiThread
Pointer to the GUI thread. Not used?
virtual void postUndoExecution()
Cleans up memory (images) after the undo execution occurs.
QSharedPointer< int > m_numErrors
Number of errors that occur during import.
virtual void postExecution()
Associates the imported images to the project.
Provide Undo/redo abilities, serialization, and history for an operation.
Definition: WorkOrder.h:322
Unless noted otherwise, the portions of Isis written by the USGS are public domain.
OriginalFileToProjectCubeFunctor(QThread *guiThread, QDir destinationFolder, bool copyDnData)
Creates the internal functor.
OriginalFileToProjectCubeFunctor & operator=(const OriginalFileToProjectCubeFunctor &rhs)
Not implemented.
ImageList * m_list
List of images that was succesfully imported into project.
virtual bool isExecutable(ProjectItem *item)
This method returns true if the user clicked on a project tree node with the text "Images"...
void importConfirmedImages(QStringList confirmedImages, bool copyDnData)
Imports the images.
QDir m_destinationFolder
Directory where to import the images to.
ImageList * m_newImages
List of images that are being imported in this work order.
Represents an item of a ProjectItemModel in Qt&#39;s model-view framework.
Definition: ProjectItem.h:146
Isis exception class.
Definition: IException.h:107
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
This copies the given cube(s) into the project.
Project * project() const
Returns the Project this WorkOrder is attached to.
Definition: WorkOrder.cpp:1314
QString m_warning
String of any errors/warnings that occurred during import.
virtual bool setupExecution()
Sets up this work order before being executed.
virtual void execute()
Executes the work order.
QMutex m_errorsLock
Mutex lock for appending errors and incrementing error count.
ImportImagesWorkOrder(Project *project)
Creates an asynchronous WorkOrder for importing images to the project.
virtual ImportImagesWorkOrder * clone() const
Creates a clone of this work order.
IO Handler for Isis Cubes.
Definition: Cube.h:170
virtual void undoExecution()
Undoes the work order&#39;s execute.