Loading [MathJax]/jax/output/NativeMML/config.js
Isis Developer Reference
ExportImagesWorkOrder.h
Go to the documentation of this file.
1#ifndef ExportImagesWorkOrder_H
2#define ExportImagesWorkOrder_H
3
4#include "WorkOrder.h"
5
6#include <functional>
7
8#include <QMutex>
9
10namespace Isis {
11 class IException;
12 class Image;
13
34 Q_OBJECT
35 public:
39
40 virtual ExportImagesWorkOrder *clone() const;
41
42 bool isExecutable(ImageList *images);
43
44
45 bool setupExecution();
46
47 void execute();
48 void postExecution();
49
50 private:
61 class ProjectImageExportFunctor : public std::unary_function<Image * const &, void *> {
62 public:
63 ProjectImageExportFunctor(QString destination);
64 ProjectImageExportFunctor(const ProjectImageExportFunctor &other);
65 ~ProjectImageExportFunctor();
66
67 void *operator()(Image * const &imageToExport);
68
69 IException errors() const;
70
71 private:
73 ProjectImageExportFunctor &operator=(const ProjectImageExportFunctor &rhs);
74
75 QString m_destination;
76
77 QMutex m_errorsLock;
79 QSharedPointer<int> m_numErrors;
80 };
81
82 private:
83 ExportImagesWorkOrder &operator=(const ExportImagesWorkOrder &rhs);
84
85 QString m_warning;
86 };
87}
88
89#endif
Write project images to a user-specified location.
Definition: ExportImagesWorkOrder.h:33
void postExecution()
Display any warnings that occurred during the asynchronous computations.
Definition: ExportImagesWorkOrder.cpp:167
bool setupExecution()
Prompts the user for input.
Definition: ExportImagesWorkOrder.cpp:91
ExportImagesWorkOrder(Project *project)
Definition: ExportImagesWorkOrder.cpp:42
virtual ExportImagesWorkOrder * clone() const
Definition: ExportImagesWorkOrder.cpp:63
bool isExecutable(ImageList *images)
Currently, this work order only works with either no data (file menu) or with any number of images.
Definition: ExportImagesWorkOrder.cpp:76
void execute()
Use internalData() and write the images into the output directory.
Definition: ExportImagesWorkOrder.cpp:134
~ExportImagesWorkOrder()
Definition: ExportImagesWorkOrder.cpp:58
Isis exception class.
Definition: IException.h:91
This represents a cube in a project-based GUI interface.
Definition: Image.h:107
Internalizes a list of images and allows for operations on the entire list.
Definition: ImageList.h:55
The main project for ipce.
Definition: Project.h:289
Provide Undo/redo abilities, serialization, and history for an operation.
Definition: WorkOrder.h:311
Project * project() const
Returns the Project this WorkOrder is attached to.
Definition: WorkOrder.cpp:1300
Definition: JigsawWorkOrder.h:28
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16

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 USGS Astrogeology Discussion Board
To report a bug, or suggest a feature go to: ISIS Github
File Modified: 02/21/2025 21:56:25