Using ZOM – the First Time
ZOM keeps track of two types of information about objects:
- object attributes such as the object’s name and type
- object dependencies such as the fact that a program uses (i.e. refers to) other objects
Because object descriptions can be added to the object dictionary at any time, when you invoke a ZOM command, ZOM does a quick check for new objects. New objects are “registered”, meaning they are assigned a unique object key and are known to ZOM. Dependency information is updated by ZOM commands that can change dependencies (e.g. ZOMCompile and ZOMReCreate). Of course, you can still create and compile using the regular Zim commands, meaning that ZOM’s dependency information can be out-of-date. The ZOMTouch command can be used to examine objects and update the dependency information.
With that in mind, the first time you use the ZOM, you will need to make the ZOM “aware” of the objects in your application. The simplest way to do this is to “touch” all objects in your application using the ZOMTouch command.
For each object encountered, ZOMTouch records information such as the object’s name, type, and location. In addition, the object’s current state is recorded along with any dependencies between the object and other objects in the application.
If you have a large number of objects in your application, the process can take a considerable amount of time. Consider executing ZOMTouch overnight or at some other convenient time. Once ZOMTouch has finished processing, ZOM has a complete picture of the objects in your application and the interdependencies between these objects.