Workspace 6.21.5
Public Member Functions | List of all members
MergeInput Class Reference

#include <Tools/WorkflowMerge/mergeinput.h>

Inheritance diagram for MergeInput:
[legend]

Public Member Functions

 MergeInput ()=default
 
 MergeInput (const InputDifference &difference, MergeProposal proposal, const QDomElement &input, const QString &opGuid, const QString &wspGuid, int arrayIndex)
 
 MergeInput (const InputDifference &difference1, const InputDifference &difference2, MergeProposal proposal, const QDomElement &input, const QString &opGuid, const QString &wspGuid, int arrayIndex)
 
 MergeInput (const MergeInput &other)
 
 MergeInput (MergeProposal proposal, const QDomElement &input, const QString &opGuid, const QString &wspGuid, int arrayIndex)
 
size_type addTo (CSIRO::DataExecution::ObjectArray &array) override
 
bool applyTo (QDomDocument &baseDocument) const override
 
bool areEditedDifferently (const ItemDifference &workflow1Change, const ItemDifference &workflow2Change) const override
 
bool areEquivalent (const ItemDifference &workflow1Change, const ItemDifference &workflow2Change) const override
 
MergeItemcreateAttributeItem (const QString &opId, const QDomDocument &refDocument, const ElementDifference &difference, size_type index, MergeProposal &proposal) const override
 
MergeItemcreateItem (const QString &opId, const QDomDocument &refDocument, ItemDifference &difference, MergeProposal &proposal) const override
 
MergeItemcreateItem (const QString &opId, const QDomDocument &refDocument, ItemDifference &difference1, ItemDifference &difference2, MergeProposal &proposal) const override
 
QList< MergeItem * > createItems (const QString &opId, const QDomDocument &baseDocument, const QDomDocument &refDocument, ItemDifference &difference, MergeProposal &proposal) const override
 
QList< MergeItem * > createItems (const QString &opId, const QDomDocument &baseDocument, const QDomDocument &refDocument, ItemDifference &difference1, ItemDifference &difference2, MergeProposal &proposal) const override
 
QString description () const override
 
bool determineAttributeAction (const ElementDifference &difference, size_type index, bool inputAvailable, MergeProposal &proposal, const MergeSettings &settings, ErrorType &errors) const override
 
ElementDifferencegetElementDifference (const DataExecution::ObjectArray &differences, size_type index) const override
 
ElementDifferencegetElementDifference (DataExecution::DataObject &dataObject) const override
 
QList< AutoMerge * > getMergeTypes () const override
 
int index () const
 
const InputDifferenceinputDifference () const
 
const InputDifferenceinputDifference2 () const
 
bool isEdited (const ItemDifference &workflowChange) const override
 
MergeInputoperator= (const MergeInput &rhs)
 
QString opGuid () const
 
QString type () const override
 
QString wspGuid () const
 
- Public Member Functions inherited from MergeItem
 MergeItem ()
 
 MergeItem (const MergeItem &other)
 
 MergeItem (MergeProposal proposal, const QDomElement &element)
 
 ~MergeItem () override=default
 
MergeAction action () const
 
QString actionString () const
 
virtual size_type addTo (CSIRO::DataExecution::ObjectArray &array)=0
 
virtual bool applyTo (QDomDocument &baseDocument) const =0
 
AutoMergeType autoMergeType () const
 
virtual QString description () const
 
bool determineAndAppendMerge (WorkflowChoice workflow, const QString &opGuid, const QDomDocument &baseDocument, const QDomDocument &refDocument, DataExecution::DataObject &dataObject, QList< MergeItem * > &mergeList, const MergeSettings &settings, ErrorType &errors) const
 
virtual bool determineAndAppendMerge (WorkflowChoice workflow, const QString &opGuid, const QDomDocument &baseDocument, const QDomDocument &refDocument, ElementDifference &difference, QList< MergeItem * > &mergeList, const MergeSettings &settings, ErrorType &errors) const
 
virtual bool determineAndAppendMerges (const QString &opGuid, const DataExecution::ObjectArray &differences1, const DataExecution::ObjectArray &differences2, const QDomDocument &baseDocument, const QDomDocument &refDocument1, const QDomDocument &refDocument2, QList< MergeItem * > &mergeList, const MergeSettings &settings, ErrorType &errors) const
 
QDomElement & element ()
 
ErrorTypeerrors ()
 
ItemDifferencegetDifference1 () const
 
ItemDifferencegetDifference2 () const
 
virtual ElementDifferencegetElementDifference (const DataExecution::ObjectArray &differences, size_type index) const =0
 
const QUuid & getId () const
 
virtual QList< AutoMerge * > getMergeTypes () const
 
QString mergeType () const
 
MergeItemoperator= (const MergeItem &rhs)
 
AutoMergeRole role () const
 
void setAction (MergeAction action)
 
virtual QString type () const
 
- Public Member Functions inherited from BasicTextLogger
 BasicTextLogger ()
 
virtual ~BasicTextLogger ()
 
void logLine (const Application::LogManager::MessageCategory &category, const QString &msg) const
 
void logLine (const QString &msg) const
 
void logText (const Application::LogManager::MessageCategory &category, const QString &msg) const
 
void logText (const QString &msg) const
 

Additional Inherited Members

- Public Types inherited from MergeItem
using size_type = DataExecution::ObjectArray::size_type
 
- Protected Member Functions inherited from MergeItem
bool addCreatedItems (const QString &opGuid, const QList< MergeItem * > newItems, QList< MergeItem * > &mergeList, ErrorType &errors) const
 
bool appendAttributeMerge (const QString &opGuid, const QDomDocument &refDocument, const ElementDifference &difference, size_type index, MergeProposal proposal, QList< MergeItem * > &mergeList, ErrorType &errors) const
 
bool appendMerge (const QString &opGuid, const QDomDocument &baseDocument, const QDomDocument &refDocument, ItemDifference &difference, MergeProposal proposal, QList< MergeItem * > &mergeList, ErrorType &errors) const
 
bool appendMerge (const QString &opGuid, const QDomDocument &baseDocument, const QDomDocument &refDocument, ItemDifference &difference1, ItemDifference &difference2, MergeProposal proposal, QList< MergeItem * > &mergeList, ErrorType &errors) const
 
virtual bool areEditedDifferently (const ItemDifference &, const ItemDifference &) const
 
virtual bool areEquivalent (const ItemDifference &workflow1Change, const ItemDifference &workflow2Change) const =0
 
virtual MergeItemcreateAttributeItem (const QString &opId, const QDomDocument &refDocument, const ElementDifference &difference, size_type index, MergeProposal &proposal) const =0
 
virtual MergeItemcreateItem (const QString &opId, const QDomDocument &refDocument, ItemDifference &difference, MergeProposal &proposal) const =0
 
virtual MergeItemcreateItem (const QString &opId, const QDomDocument &refDocument, ItemDifference &difference1, ItemDifference &difference2, MergeProposal &proposal) const =0
 
virtual QList< MergeItem * > createItems (const QString &opId, const QDomDocument &baseDocument, const QDomDocument &refDocument, ItemDifference &difference, MergeProposal &proposal) const
 
virtual QList< MergeItem * > createItems (const QString &opId, const QDomDocument &baseDocument, const QDomDocument &refDocument, ItemDifference &difference1, ItemDifference &difference2, MergeProposal &proposal) const
 
virtual bool determineAction (const ElementDifference &workflow1Change, const ElementDifference &workflow2Change, bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors) const
 
virtual bool determineAction (const ElementDifference &workflowChange, bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors) const
 
bool determineAction_AddRemoveOrEdit (const ElementDifference &workflow1Change, const ElementDifference &workflow2Change, bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors) const
 
bool determineAction_AddRemoveOrEdit (const ElementDifference &workflowChange, bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors) const
 
virtual bool determineAndAppendAttributeMerge (const QString &opId, WorkflowChoice workflow, const QDomDocument &refDocument, const ElementDifference &difference, size_type index, const MergeSettings &mergeSettings, QList< MergeItem * > &mergeList, ErrorType &errors) const
 
virtual bool determineAndAppendAttributeMerges (const QString &opGuid, const ElementDifference &difference1, const ElementDifference &difference2, const QDomDocument &refDocument1, const QDomDocument &refDocument2, QList< MergeItem * > &mergeList, const MergeSettings &settings, ErrorType &errors) const
 
virtual bool determineAndAppendAttributeMerges (const QString &opGuid, WorkflowChoice workflow, const ElementDifference &difference, const QDomDocument &refDocument, QList< MergeItem * > &mergeList, const MergeSettings &settings, ErrorType &errors) const
 
virtual bool determineAndAppendMerges (const QString &opGuid, const DataExecution::ObjectArray &differences, WorkflowChoice workflow, const QDomDocument &baseDocument, const QDomDocument &refDocument, QList< MergeItem * > &mergeList, const MergeSettings &settings, ErrorType &errors) const
 
virtual bool determineAttributeAction (const AttributeDifference &workflow1Change, const AttributeDifference &workflow2Change, bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors) const
 
virtual bool determineAttributeAction (const ElementDifference &difference, size_type index, bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors) const
 
virtual ElementDifferencegetElementDifference (DataExecution::DataObject &dataObject) const =0
 
QList< AutoMerge * > getStandardMergeTypes (const QString &elementTag, const QString &displayTag="") const
 
virtual bool isEdited (const ItemDifference &) const
 
void setDifference1 (std::shared_ptr< ItemDifference > difference)
 
void setDifference2 (std::shared_ptr< ItemDifference > difference)
 
virtual bool treatAttributesIndependently () const
 
- Static Protected Member Functions inherited from MergeItem
static bool assessConfirmation (bool inputAvailable, MergeProposal &proposal, const MergeSettings &mergeSettings, ErrorType &errors)
 
static void removeHangingConnections (QDomElement &wspElement)
 
static QList< AutoMerge * > removeRoles (const QList< AutoMerge * > typeList, const QList< AutoMergeRole > unwantedRoles)
 
static QString toString (MergeAction action)
 
- Protected Attributes inherited from MergeItem
MergeAction action_
 
QDomElement element_
 
ErrorType errors_
 
QUuid id_
 
AutoMergeType type_
 
- Static Protected Attributes inherited from MergeItem
static const QList< MergeActionreferenceActions_ = {MergeAction_Append, MergeAction_Replace, MergeAction_Modify}
 These are actions where a QDomElement needs to be copied from one of the new workflows and stored so that the merge can be applied to the base document.
 

Constructor & Destructor Documentation

◆ MergeInput() [1/5]

MergeInput ( )
default

◆ MergeInput() [2/5]

MergeInput ( const MergeInput other)
default

◆ MergeInput() [3/5]

MergeInput ( MergeProposal  proposal,
const QDomElement &  input,
const QString &  opGuid,
const QString &  wspGuid,
int  arrayIndex 
)
inline

◆ MergeInput() [4/5]

MergeInput ( const InputDifference difference,
MergeProposal  proposal,
const QDomElement &  input,
const QString &  opGuid,
const QString &  wspGuid,
int  arrayIndex 
)
inline

◆ MergeInput() [5/5]

MergeInput ( const InputDifference difference1,
const InputDifference difference2,
MergeProposal  proposal,
const QDomElement &  input,
const QString &  opGuid,
const QString &  wspGuid,
int  arrayIndex 
)
inline

Member Function Documentation

◆ addTo()

MergeInput::size_type addTo ( CSIRO::DataExecution::ObjectArray array)
overridevirtual

Implements MergeItem.

◆ applyTo()

bool applyTo ( QDomDocument &  baseDocument) const
overridevirtual

Implements MergeItem.

◆ areEditedDifferently()

bool areEditedDifferently ( const ItemDifference workflow1Change,
const ItemDifference workflow2Change 
) const
overridevirtual

Reimplemented from MergeItem.

◆ areEquivalent()

bool areEquivalent ( const ItemDifference workflow1Change,
const ItemDifference workflow2Change 
) const
overridevirtual

Implements MergeItem.

◆ createAttributeItem()

MergeItem * createAttributeItem ( const QString &  opId,
const QDomDocument &  refDocument,
const ElementDifference difference,
size_type  index,
MergeProposal proposal 
) const
overridevirtual

Implements MergeItem.

◆ createItem() [1/2]

MergeItem * createItem ( const QString &  opId,
const QDomDocument &  refDocument,
ItemDifference difference,
MergeProposal proposal 
) const
inlineoverridevirtual

Implements MergeItem.

◆ createItem() [2/2]

MergeItem * createItem ( const QString &  opId,
const QDomDocument &  refDocument,
ItemDifference difference1,
ItemDifference difference2,
MergeProposal proposal 
) const
inlineoverridevirtual

Implements MergeItem.

◆ createItems() [1/2]

QList< MergeItem * > createItems ( const QString &  opId,
const QDomDocument &  baseDocument,
const QDomDocument &  refDocument,
ItemDifference difference,
MergeProposal proposal 
) const
overridevirtual

Reimplemented from MergeItem.

◆ createItems() [2/2]

QList< MergeItem * > createItems ( const QString &  opId,
const QDomDocument &  baseDocument,
const QDomDocument &  refDocument,
ItemDifference difference1,
ItemDifference difference2,
MergeProposal proposal 
) const
overridevirtual

Reimplemented from MergeItem.

◆ description()

QString description ( ) const
overridevirtual

Reimplemented from MergeItem.

◆ determineAttributeAction()

bool determineAttributeAction ( const ElementDifference difference,
size_type  index,
bool  inputAvailable,
MergeProposal proposal,
const MergeSettings settings,
ErrorType errors 
) const
overridevirtual

Reimplemented from MergeItem.

◆ getElementDifference() [1/2]

ElementDifference * getElementDifference ( const DataExecution::ObjectArray differences,
size_type  index 
) const
overridevirtual

Implements MergeItem.

◆ getElementDifference() [2/2]

ElementDifference * getElementDifference ( DataExecution::DataObject dataObject) const
overridevirtual

Implements MergeItem.

◆ getMergeTypes()

QList< AutoMerge * > getMergeTypes ( ) const
overridevirtual

Reimplemented from MergeItem.

◆ index()

int index ( ) const
inline

◆ inputDifference()

const InputDifference & inputDifference ( ) const
inline

◆ inputDifference2()

const InputDifference & inputDifference2 ( ) const
inline

◆ isEdited()

bool isEdited ( const ItemDifference workflowChange) const
overridevirtual

Reimplemented from MergeItem.

◆ operator=()

MergeInput & operator= ( const MergeInput rhs)
default

◆ opGuid()

QString opGuid ( ) const
inline

◆ type()

QString type ( ) const
overridevirtual

Reimplemented from MergeItem.

◆ wspGuid()

QString wspGuid ( ) const
inline