History and Roll Overview
List of: Discussion Topic
Subjects: History and Roll
Contents: Kernel

When ACIS entities and APIs are used, history and roll back are supported. The history and roll functionality tracks all changes that occur in an ACIS session, which permits rapid change between states of an ACIS model. The history manager allows both branched histories and linear histories, which provides even more flexibility for rolling between states.

ACIS history and roll uses four levels:

Bulletin Holds the changes to a single ACIS entity. Individual bulletins are not used outside the context of a bulletin board or delta state.

Bulletin board Holds all bulletins resulting from an API call.

Delta state The delta state is a user-definable, change-tracking structure of arbitrary size. It holds all bulletin boards resulting from a modification to a model. The delta state also has pointers to the previous, next, and partner delta states. The partner is a branch delta state at the same "sublevel."

History stream Contains pointers to the initial delta state, to the last noted active delta state, and to the delta state under construction. The history manager handles the history streams.

History streams for a given model can be saved with the model in its save file. Later, this entire structure can be restored, permitting roll back to any point in development. Saving and restoring history streams is covered in more detail in 3D ACIS SAT Format.

The application developer uses the bulletin board to monitor changes to models throughout the modeling process. This is particularly effective for incrementally updating application models, such as finite element mesh or graphical representation maintained for display purposes.