OpenStudioCore:analysis
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Protected Member Functions | Related Functions | List of all members
openstudio::analysis::WorkflowStep Class Reference

#include <WorkflowStep.hpp>

+ Inheritance diagram for openstudio::analysis::WorkflowStep:

Public Member Functions

Constructors and Destructors
 WorkflowStep (const InputVariable &inputVariable)
 
 WorkflowStep (const runmanager::WorkItem &workItem)
 
 WorkflowStep (const boost::optional< InputVariable > &inputVariable, const boost::optional< runmanager::WorkItem > &workItem)
 Constructor provided for deserialization; not for general use. More...
 
virtual ~WorkflowStep ()
 
Getters and Queries
bool isInputVariable () const
 
bool isWorkItem () const
 
InputVariable inputVariable () const
 Returns this step's InputVariable. More...
 
runmanager::WorkItem workItem () const
 Returns a dis-attached copy of this step's WorkItem. More...
 
runmanager::JobType workItemType () const
 Shortcut method for retrieving this WorkItem's runmanager::JobType. More...
 
boost::optional
< FileReferenceType > 
inputFileType () const
 Returns the type of the primary input file for this WorkflowStep. More...
 
boost::optional
< FileReferenceType > 
outputFileType () const
 Returns the type of the primary output file for this WorkflowStep. More...
 
bool fileTypesAreCompatible (const boost::optional< FileReferenceType > &proposedInputFileType, const boost::optional< FileReferenceType > &proposedOutputFileType) const
 Returns true if the proposedInputFileType and proposedOutputFileType would be acceptable for the current use of this WorflowStep. More...
 
Setters
bool set (const InputVariable &inputVariable)
 Sets this step to use inputVariable if such a change is compatible with this WorkflowStep's current use (in its parent Problem). More...
 
bool set (const runmanager::WorkItem &workItem)
 Sets this step to use workItem if such a change is compatible with this WorkflowStep's current use (in its parent Problem). More...
 
- Public Member Functions inherited from openstudio::analysis::AnalysisObject
virtual ~AnalysisObject ()
 
AnalysisObject clone () const
 Deep copy. More...
 
std::string name () const
 
std::string displayName () const
 
std::string description () const
 
openstudio::UUID uuid () const
 
openstudio::UUID versionUUID () const
 
bool isDirty () const
 Returns true if this object has been changed since its dirty flag was last cleared. More...
 
bool operator== (const AnalysisObject &other) const
 Compare impls. More...
 
bool operator!= (const AnalysisObject &other) const
 
bool uuidEqual (const AnalysisObject &other) const
 
bool uuidAndVersionEqual (const AnalysisObject &other) const
 
boost::optional< AnalysisObjectparent () const
 
void setName (const std::string &newName)
 
void setDisplayName (const std::string &newDisplayName)
 
void setDescription (const std::string &newDescription)
 
bool clearDirtyFlag ()
 Call this method to reset the dirty flag of this object and all its children. More...
 
bool connect (const char *signal, const QObject *receiver, const char *slot, Qt::ConnectionType type=Qt::AutoConnection) const
 Connect signal from this AnalysisObject to slot on receiver. More...
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *slot=nullptr) const
 
template<typename T >
cast () const
 Cast to type T. More...
 
template<typename T >
boost::optional< T > optionalCast () const
 Cast to boost::optional<T>. More...
 

Protected Member Functions

virtual void onChange () override
 Specialization of public method onChange so WorkflowStep can make the call on InputVariable (its child) if appropriate. More...
 

Related Functions

(Note that these are not member functions.)

typedef boost::optional
< WorkflowStep
OptionalWorkflowStep
 
typedef std::vector< WorkflowStepWorkflowStepVector
 

Detailed Description

WorkflowStep is an AnalysisObject that describes an individual step in a Problem's overall Workflow.

Workflow is not a standard AnalysisObject in that its individual identifying data (name, UUIDs, description) is not retained, rather, UIs should defer to its composite data, which is either an InputVariable or a runmanager::WorkItem.

Constructor & Destructor Documentation

openstudio::analysis::WorkflowStep::WorkflowStep ( const InputVariable inputVariable)
openstudio::analysis::WorkflowStep::WorkflowStep ( const runmanager::WorkItem &  workItem)
openstudio::analysis::WorkflowStep::WorkflowStep ( const boost::optional< InputVariable > &  inputVariable,
const boost::optional< runmanager::WorkItem > &  workItem 
)

Constructor provided for deserialization; not for general use.

virtual openstudio::analysis::WorkflowStep::~WorkflowStep ( )
inlinevirtual

Member Function Documentation

bool openstudio::analysis::WorkflowStep::fileTypesAreCompatible ( const boost::optional< FileReferenceType > &  proposedInputFileType,
const boost::optional< FileReferenceType > &  proposedOutputFileType 
) const

Returns true if the proposedInputFileType and proposedOutputFileType would be acceptable for the current use of this WorflowStep.

Returns false otherwise.

boost::optional<FileReferenceType> openstudio::analysis::WorkflowStep::inputFileType ( ) const

Returns the type of the primary input file for this WorkflowStep.

InputVariable openstudio::analysis::WorkflowStep::inputVariable ( ) const

Returns this step's InputVariable.

Modifications will automatically apply to and be registered by this WorkflowStep. Throws if not isInputVariable.

bool openstudio::analysis::WorkflowStep::isInputVariable ( ) const
bool openstudio::analysis::WorkflowStep::isWorkItem ( ) const
virtual void openstudio::analysis::WorkflowStep::onChange ( )
overrideprotectedvirtual

Specialization of public method onChange so WorkflowStep can make the call on InputVariable (its child) if appropriate.

boost::optional<FileReferenceType> openstudio::analysis::WorkflowStep::outputFileType ( ) const

Returns the type of the primary output file for this WorkflowStep.

bool openstudio::analysis::WorkflowStep::set ( const InputVariable inputVariable)

Sets this step to use inputVariable if such a change is compatible with this WorkflowStep's current use (in its parent Problem).

bool openstudio::analysis::WorkflowStep::set ( const runmanager::WorkItem &  workItem)

Sets this step to use workItem if such a change is compatible with this WorkflowStep's current use (in its parent Problem).

runmanager::WorkItem openstudio::analysis::WorkflowStep::workItem ( ) const

Returns a dis-attached copy of this step's WorkItem.

To change this step's data, modify the returned WorkItem and then pass the edited copy into set. Throws if not isWorkItem().

runmanager::JobType openstudio::analysis::WorkflowStep::workItemType ( ) const

Shortcut method for retrieving this WorkItem's runmanager::JobType.

Throws if not isWorkItem().

Friends And Related Function Documentation

typedef boost::optional<WorkflowStep> OptionalWorkflowStep
related
typedef std::vector<WorkflowStep> WorkflowStepVector
related