oaChangeRecVisitor Class Reference


Public Methods

virtual void visit (oaHierChangeRec *node)=0
virtual void visit (oaExportMarkerChangeRec *node)=0
virtual void visit (oaTransientMarkerChangeRec *node)=0
virtual void visit (oaSetAttributeChangeRec *node)=0
virtual void visit (oaUnsetAttributeChangeRec *node)=0
virtual void visit (oaCreate1to1RelationshipChangeRec *node)=0
virtual void visit (oaCreate1toNRelationshipChangeRec *node)=0
virtual void visit (oaCreate2DTableRelationshipChangeRec *node)=0
virtual void visit (oaDestroy1to1RelationshipChangeRec *node)=0
virtual void visit (oaDestroy1toNRelationshipChangeRec *node)=0
virtual void visit (oaDestroy2DTableRelationshipChangeRec *node)=0
virtual void visit (oaCreateObjectChangeRec *node)=0
virtual void visit (oaDestroyObjectChangeRec *node)=0
virtual void visit (oaConvertObjectChangeRec *node)=0
virtual oaBoolean startHier (oaHierChangeRec *node)=0
virtual void endHier (oaHierChangeRec *node)=0

Detailed Description

The oaChangeRec classes support visitor design pattern interfaces. A visitor design pattern interface uses a dual dispatch technique. Each concrete node in the data structure has an accept method, which provides access to a visitor. The accept method sends a message to the visitor that includes the node's class. The visitor can then execute its behavior for that element.

The oaChangeRecVisitor class is capable of visiting concrete oaChangeRec nodes. A derived visitor must implement a derived interface that accesses the derived change records and provides specific behaviors.

When a change set is exported in the OpenAccess change management system (CMS), the export process uses an oaChangeRecVisitor to traverse the change records in the change set. After visiting a specific change record, the visitor exports the contents in the change record to the external format, which now represents the change.


Member Function Documentation

void oaChangeRecVisitor::endHier oaHierChangeRec *    node [pure virtual]
 

A change record visitor is notified when the traversal will begin to ascend out of a hierarchical change record. The endHier function allows the caller to control whether or not to ascend.

Parameters:
node A pointer to a concrete node in a hierarchical change record.

oaBoolean oaChangeRecVisitor::startHier oaHierChangeRec *    node [pure virtual]
 

A change record visitor is notified when the traversal will begin to descend into a hierarchical change record. The startHier function allows the caller to control whether or not to descend.

Parameters:
node A pointer to a concrete node of type hierarchical change record.

void oaChangeRecVisitor::visit oaConvertObjectChangeRec *    node [pure virtual]
 

This function provides access to a concrete node in a change record that describes the type conversion an object.

Parameters:
node A pointer to a concrete node in a change record that describes the type conversion of an object.

void oaChangeRecVisitor::visit oaDestroyObjectChangeRec *    node [pure virtual]
 

This function provides access to an oaDestroyObjectChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the destruction of an object.

void oaChangeRecVisitor::visit oaCreateObjectChangeRec *    node [pure virtual]
 

This function provides access to an oaCreateObjectChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the creation of an object.

virtual void oaChangeRecVisitor::visit oaDestroy2DTableRelationshipChangeRec *    node [pure virtual]
 

void oaChangeRecVisitor::visit oaDestroy1toNRelationshipChangeRec *    node [pure virtual]
 

This function provides access to an oaDestroy1toNRelationshipChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the operation of destroying a 1-to-n relationship.

void oaChangeRecVisitor::visit oaDestroy1to1RelationshipChangeRec *    node [pure virtual]
 

This function provides access to an oaDestroy1to1RelationshipChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the operation of destroying a 1-to-1 relationship.

virtual void oaChangeRecVisitor::visit oaCreate2DTableRelationshipChangeRec *    node [pure virtual]
 

virtual void oaChangeRecVisitor::visit oaCreate1toNRelationshipChangeRec *    node [pure virtual]
 

void oaChangeRecVisitor::visit oaCreate1to1RelationshipChangeRec *    node [pure virtual]
 

This function provides access to an oaCreate1to1RelationshipChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the operation of creating a 1-to-1 relationship.

void oaChangeRecVisitor::visit oaUnsetAttributeChangeRec *    node [pure virtual]
 

This function provides access to an oaUnsetAttributeChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the operation of unsetting the value of an attribute.

void oaChangeRecVisitor::visit oaSetAttributeChangeRec *    node [pure virtual]
 

This function provides access to an oaSetAttributeChangeRec node.

Parameters:
node A pointer to a concrete node of type change record that describes the operation of setting the value of an attribute.

void oaChangeRecVisitor::visit oaTransientMarkerChangeRec *    node [pure virtual]
 

This function provides access to an oaTransientMarkerChangeRec node.

Parameters:
node A pointer to a concrete node of type transient marker change record.

void oaChangeRecVisitor::visit oaExportMarkerChangeRec *    node [pure virtual]
 

This function provides access to an oaExportMarkerChangeRec node.

Parameters:
node A pointer to a concrete node of type export marker change record.

void oaChangeRecVisitor::visit oaHierChangeRec *    node [pure virtual]
 

This function provides access to an oaHierChangeRec node.

Parameters:
node A pointer to a concrete node of type hierarchical change record.


The documentation for this class was generated from the following files:

Return to top of page