Isis 3.0 Programmer Reference
Back | Home
ImportShapesWorkOrder.h
Go to the documentation of this file.
1 #ifndef ImportShapesWorkOrder_H
2 #define ImportShapesWorkOrder_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  class ShapeList;
40 
52  Q_OBJECT
53  public:
57 
58  virtual ImportShapesWorkOrder *clone() const;
59 
60  bool execute();
61 
62  void asyncRedo();
63  void postSyncRedo();
64  void asyncUndo();
65  void postSyncUndo();
66 
67  private:
68  ImportShapesWorkOrder &operator=(const ImportShapesWorkOrder &rhs);
69 
81  public std::unary_function<const FileName &, Cube *> {
82  public:
84  QDir destinationFolder, bool copyDnData);
87 
88  Cube *operator()(const FileName &original);
89 
90  IException errors() const;
91 
92  private:
95 
96  QDir m_destinationFolder;
97  bool m_copyDnData;
98  QThread *m_guiThread;
99 
100  QMutex m_errorsLock;
101  QSharedPointer<IException> m_errors;
102  QSharedPointer<int> m_numErrors;
103  };
104 
105  private:
106  void importConfirmedShapes(QStringList confirmedShapes, bool copyDnData);
107 
108  private:
109  ShapeList *m_newShapes;
110  QString m_warning;
111  };
112 }
113 #endif // ImportShapesWorkOrder_H
Internalizes a list of shapes and allows for operations on the entire list.
Definition: ShapeList.h:33
This copies the given shape model cube(s) into the project.
void postSyncUndo()
This method is designed to be implemented by children work orders.
The main project for cnetsuite.
Definition: Project.h:105
void postSyncRedo()
This method is designed to be implemented by children work orders.
File name manipulation and expansion.
Definition: FileName.h:111
Add shape model cubes to a project.
Project * project() const
Returns the Project this WorkOrder is attached to.
Definition: WorkOrder.cpp:1116
OriginalFileToProjectCubeFunctor & operator=(const OriginalFileToProjectCubeFunctor &rhs)
Not implemented.
void importConfirmedShapes(QStringList confirmedShapes, bool copyDnData)
Creates a project shape folder and copies the shape cubes into it.
bool execute()
The (child) implementation of this method should prompt the user/gather state by any means necessary...
Parent class for anything that performs an action in Project.
Definition: WorkOrder.h:104
void asyncUndo()
This method is designed to be implemented by children work orders.
Isis exception class.
Definition: IException.h:99
void asyncRedo()
This method is designed to be implemented by children work orders.
IO Handler for Isis Cubes.
Definition: Cube.h:158

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:20:29