CatState
CatState
- Superclass
- Object
- Subclasses
- none
- Referenced By
- DuPontModel
An instance of CatState preserves and caches report values, selection criteria, and open
windows.
Instance Side
A CatState instance should be passed around to all newly created value, model, graph,
and wrapper objects which might need to access the CatState's variables or which might
need to create a class which will need to access the CatState's variables. Most of the
top level financial model classes include a state variable which reference a CatState.
Examples of such class are CatModel, CatModelWrapper, TableGraph, GraphMaker, and
EditorValues.
In the Aurora financial model, a CatState is instantiated by DuPontModel
Instance Variables:
windows <OrderedCollection>
Identifies all windows that are running for the current application. This is used by
CatModelWrappers' menus. Unlike the VisualLauncher's windows menus, this
collection does not include development windows or windows corresponding to
a different running DuPont (thus with a different CatState). Code of interest is in
CatState>>addWindow:, CatState>>removeWindow:, CatModelWrapper>>winListMenu,
and CatModelWrapper>>open. The CatModelWrapper code checks if a window is
open (in the CatState's windows) before opening a new one.
values <Dictionary>
This dictionary caches queried values, calculated values, formula info, userId
and the annualizationFactor. The individual values are accessed through
CatState>>doesNotUnderstand:. CatState is also set up to reference values
through the normal dictionary at:/at:put:/at:ifAbsent: interface.
selectionBox <SelectionBoxValues>
The actual class in selectionBox can be configured in BusinessUnit selectionBox.
See SelectionBoxValues for more details. It might be a requirement that the
values are initialized before selectionBox. That used to be the case, and the
code currently behaves that way.
Instances Stored In: OldCatModelWrapper, SelectionBoxValues, CatModel, CatModelWrapper,
EditorValues, GraphMaker, TableGraph, PIVcosValue, ExecutiveModel, TBUPlanSelection
Developed by Joseph W. Yoder (yoder@cat.ncsa.uiuc.edu)
Questions on windows should be directed to:
Jeff Barcalow (barcalow@cat.ncsa.uiuc.edu)
Questions on selectionBox should be directed to:
Dmitry Zelenko (zelenko@cat.ncsa.uiuc.edu)
Questions on values should be directed to:
Joe Yoder (yoder@cat.ncsa.uiuc.edu) or
John Brant (brant@cs.uiuc.edu)
- Potential problems with this comment:
Variable has invalid type -
#('selectionBox' 'SelectionBoxValues')