|
Isis 3 Programmer Reference
|
18 #include <QUndoCommand>
22 #include "CorrelationMatrix.h"
25 #include "TargetBody.h"
26 #include "XmlStackedHandler.h"
30 class QXmlStreamWriter;
42 class XmlStackedHandlerReader;
322 WorkOrderUnknownStatus = 0,
361 void save(QXmlStreamWriter &stream)
const;
364 virtual void setData(QString data);
501 virtual bool startElement(
const QString &namespaceURI,
const QString &localName,
502 const QString &qName,
const QXmlAttributes &atts);
575 QPointer<ImageList> m_imageList;
576 QPointer<ShapeList> m_shapeList;
577 QPointer<ControlList> m_controlList;
void setProgressToFinalText()
Sets the ProgressBar to display the final status of the operation.
bool isSynchronous() const
Returns true if this work order is run synchronously, otherwise false.
bool isUndoable() const
Returns true if this work order is undoable, otherwise false.
virtual bool dependsOn(WorkOrder *other) const
Indicate workorder dependency This is a virtual function whose role in child classes is to determine ...
FileItemQsp m_fileItem
A QSharedPointer to the FileItem.
bool isInStableState() const
Determines if the WorkOrder is in a stable state, or if it's busy doing something.
virtual bool setupExecution()
This sets up the state for the work order.
bool isRedone() const
Returns the WorkOrder redone status.
void addCloneToProject()
Runs a copy of the current WorkOrder and stores it in the project.
int m_progressRangeMinValue
The miniumum value of the Progess Bar.
Provide Undo/redo abilities, serialization, and history for an operation.
QStringList m_imageIds
A QStringList of unique image identifiers for all of the images this WorkOrder is dealing with.
GuiCameraQsp m_guiCamera
A QSharedPointer to the GuiCamera (the Camera object but encapsulated within a Gui framework.
QPointer< QTimer > m_progressBarUpdateTimer
A pointer to the QTimer which updates the ProgressBar.
int progressMax() const
Gets the maximum value of the progress range of the WorkOrder.
bool isRedoing() const
Returns the redoing status of this WorkOrder.
virtual void redo()
Starts (or enqueues) a redo.
QPointer< ControlList > controlList()
Returns the Control List for this WorkOrder (a list of control networks).
virtual bool isExecutable(Context)
Re-implement this method if your work order utilizes controls for data in order to operate.
ImageList * imageList()
Returns a pointer to the ImageList for this WorkOrder.
WorkOrder * m_workOrder
This is a pointer to the WorkOrder the XmlHandler is filling with information it parses from an XML f...
void updateProgress()
Updates the progress bar.
bool m_isSavedToHistory
Set the work order to be shown in the HistoryTreeWidget.
QStringList m_shapeIds
A QStringList of unique shape identifiers for all of the shapes this WorkOrder is dealing with.
Maintains a list of Controls so that control nets can easily be copied from one Project to another,...
virtual void postExecution()
Perform any necessary actions after execution of a workorder.
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.
static QString toString(WorkOrderStatus)
Gets the current status of the WorkOrder.
void save(QXmlStreamWriter &stream) const
: Saves a WorkOrder to a data stream.
Directory * directory() const
return the workorder project directory Returns the Directory object of the Project this WorkOrder is ...
WorkOrder * next() const
Gets the next WorkOrder.
bool createsCleanState() const
Returns the CleanState status (whether the Project has been saved to disk or not).
XmlHandler(WorkOrder *workOrder)
Passes a pointer to a WorkOrder to the WorkOrder::XmlHandler class.
bool modifiesDiskState() const
Returns the modified disk state.
void read(XmlStackedHandlerReader *xmlReader)
Read this work order's data from disk.
void listenForShapeDestruction()
Checks to see if we have lost any shapes in the ShapeList.
bool m_isSynchronous
This is defaulted to true.
Manage a stack of content handlers for reading XML files.
This is a container for the correlation matrix that comes from a bundle adjust.
The main project for ipce.
bool isFinished() const
Returns the finished state of this WorkOrder.
Internalizes a list of images and allows for operations on the entire list.
ShapeList * shapeList()
@briefReturns a pointer to the ShapeList for this WorkOrder.
void disableWorkOrder()
Disables the work order.
QStringList m_internalData
A QStringList of internal properties for this WorkOrder.
QPointer< WorkOrder > m_previousWorkOrder
A pointer to the previous WorkOrder in the queue.
WorkOrder(Project *project)
Create a work order that will work with the given project.
QPointer< QFutureWatcher< void > > m_futureWatcher
A pointer to a QFutureWatcher object which monitors a QFuture object using signals and slots.
This class is used for processing an XML file containing information about a WorkOrder.
int m_progressValue
The current value of the Progress Bar.
bool m_isUndoable
Set the workorder to be undoable/redoable This is defaulted to true - his will allow the workorder to...
bool isSavedToHistory() const
Returns true if this work order is to be shown in History, otherwise false.
virtual void setData(Context)
Sets the context data for this WorkOrder.
QString statusText() const
WorkOrder::statusText.
bool isUndone() const
Returns the WorkOrder undo status.
TargetBodyQsp targetBody()
WorkOrder::targetBody.
QTime * m_elapsedTimer
A QTime object holding the excecution time of the WorkOrder.
QDateTime m_executionTime
This is the date/time that setupExecution() was called.
virtual void postUndoExecution()
Perform any steps necessary after an undo of a workorder.
QueuedWorkOrderAction
This enum describes the current state of a Queued WorkOrder.
virtual void undo()
Starts (or enqueues) an undo.
QPointer< QTimer > m_progressBarDeletionTimer
A pointer to the ProgressBar deletion timer.
Template * getTemplate()
WorkOrder::getTemplate.
Project * project() const
Returns 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 ...
Template * m_template
A QSharedPointer to the Template (A Template object but encapsulated within a Gui framework.
virtual void undoExecution()
Execute the steps necessary to undo this workorder.
int progressValue() const
Gets the current progress value of the WorkOrder.
WorkOrder * previous() const
Gets the previous WorkOrder.
Internalizes a list of shapes and allows for operations on the entire list.
bool m_createsCleanState
This is defaulted to false.
static WorkOrderStatus fromStatusString(QString)
Attempts to query the current status of the WorkOrder.
virtual ~WorkOrder()
The Destructor.
FileItemQsp fileItem()
WorkOrder::fileItem.
void setNext(WorkOrder *nextWorkOrder)
Sets the next WorkOrder in the sequence.
QPointer< ProgressBar > m_progressBar
A pointer to the ProgressBar.
int m_progressRangeMaxValue
The maximum value of the Progess Bar.
void clearImageList()
Clears the list of images.
void setProgressRange(int, int)
Sets the progress range of the WorkOrder.
void startRedo()
WorkOrder::startRedo This function is currently empty.
QPointer< Project > m_project
A pointer to the Project this WorkOrder is attached to.
void listenForImageDestruction()
Checks to see if we have lost any images in the ImageList.
QString bestText() const
Generate unique action names We don't use action text anymore because Directory likes to rename our a...
QPointer< WorkOrder > m_nextWorkOrder
A pointer to the next WorkOrder in the queue.
void clearShapeList()
Clears the list of shapes.
GuiCameraQsp guiCamera()
WorkOrder::guiCamera.
void executionFinished()
Signals the Project that the WorkOrder is finished, deletes the update time for the Progress bar,...
@ WorkOrderFinished
This is used for work orders that will not undo or redo (See createsCleanState())
void setProgressValue(int)
Sets the current progress value for the WorkOrder.
ProgressBar * progressBar()
Returns the ProgressBar.
TargetBodyQsp m_targetBody
A QSharedPointer to the TargetBody (A Target object but encapsulated within a Gui framework.
XML Handler that parses XMLs in a stack-oriented way.
WorkOrderStatus
This enumeration is used by other functions to set and retrieve the current state of the WorkOrder.
This is free and unencumbered software released into the public domain.
void resetProgressBar()
Resets the ProgressBar.
QStringList internalData() const
Gets the internal data for this WorkOrder.
virtual void execute()
Execute the workorder.
void setModifiesDiskState(bool changesProjectOnDisk)
CorrelationMatrix correlationMatrix()
Returns the CorrleationMatrix for this WorkOrder.
void setPrevious(WorkOrder *previousWorkOrder)
Sets the previous WorkOrder in the sequence.
void setCreatesCleanState(bool createsCleanState)
Declare that this work order is saving the project.
void attemptQueuedAction()
Attempts to execute an action on the action queue.
Context
This enumeration is for recording the context of the current Workorder (whether it is part of a proje...
bool m_modifiesDiskState
This is defaulted to false.
virtual bool startElement(const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)
The XML reader invokes this method at the start of every element in the XML document.
bool isUndoing() const
Returns the WorkOrderUndoing state.
void enableWorkOrder()
Enables the work order.
QDateTime executionTime() const
Gets the execution time of this WorkOrder.
double m_secondsElapsed
The seconds that have elapsed since the WorkOrder started executing.
This is free and unencumbered software released into the public domain.
Q_DECLARE_METATYPE(Isis::PlotWindow *)
We have plot windows as QVariant data types, so here it's enabled.
Represents an item of a ProjectItemModel in Qt's model-view framework.