GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  M3ZUME (1)

NAME

m3zume - create Zeus IE (interesting event) stubs from event specs

CONTENTS

Syntax
Description
File Format
Diagnostics
Bugs
Caveat To Wizards
Retired Features
Author Of Object
Author Of Documentation

SYNTAX

m3zume [-testdir dir] [-Obliq ofile] [-Obliq3D ofile] [-Juno viewname] [-3D] eventfiles...

DESCRIPTION

m3zume takes a relatively terse specification of events for a Zeus animation and produces from it the Modula-3 .i3 and .m3 files that define the Zeus-mediated communication between the algorithm and the views. The event specifications are in files with ".evt" extensions.

With no arguments m3zume reads the event files and for each, combines it with template files to produce derived files:

        <basename>AlgClass.{i3,m3},
        <basename>ViewClass.{i3,m3},
        <basename>IE.{i3,m3},
        <basename>DataView.{i3,m3},
        <basename>TranscriptView.{i3,m3,fv}, and
        <basename>EventData.fv.

where <basename> is the basename of the <eventfile>.

When the -Obliq flag is set, m3zume reads the event file as before, and produces the following derived files:

        <basename><ofile>ObliqView.{i3,m3}

When the -Obliq3D flag is set, m3zume reads the event file as before, and produces the following derived files:

        <basename><ofile>Obliq3DView.{i3,m3}

When the -Juno flag is set, m3zume reads the event file as before, and produces the following derived files:

        <basename><viewname>JunoView.{i3,m3}

When the -3D flag is set, m3zume reads the event file as before, and produces the following derived files:

        <basename>3DViewClass.{i3,m3},

For testing purposes, the template file directory may be overridden using the -testdir command-line option.

If Baz() is an event procedure defined in Foo.evt, then FooIE.Baz is called to signal the occurrence of the event.

FILE FORMAT

The main part of the event file is a list of slightly modified Modula-3 headers for the procedures that the algorithm will call to generate events. Before any of these procedure headers, the procedure arguments, followed by a section introduced by the keyword ALGDATA that contains the data fields that should belong to a <basename>AlgClass.T.
The procedure headers use keywords OUTPUT, FEEDBACK, and UPDATE in lieu of PROCEDURE. Output events (PROCEDURE is allowed as a synonym for OUTPUT) are generated by an algorithm and delivered to views; they occur with VBT.mu unlocked and the algorithm Running. Feedback events are delivered to the algorithm; they are typically generated by a view. Feedback events occur with VBT.mu locked and the algorithm Paused. Update events are generated by an algorithm in response to feedback events and are delivered to views; they occur with VBT.mu locked and the algorithm Paused.
Each argument type in a procedure header is followed by the name of a function [in square brackets] that will convert the argument to a printable TEXT. This function name is generally ZFmt.<something>, or the empty string if the argument type is TEXT. The square brackets are necessary, even if the argument type is TEXT. You don’t need to IMPORT the ZFmt interface, but you should IMPORT any other interfaces needed for format conversion.

m3zume allows only a restricted set of argument types. The names of argument types may not contain blanks (for example, "REF BOOLEAN" is not allowed); you may need to create an auxiliary interface that gives names to the types you want to use in your .evt file. Open arrays are not allowed. Default values for arguments are not allowed.

DIAGNOSTICS

Poor. Malformed event files may be accepted by the first phase of m3zume processing, only to be rejected during the second phase (m3pp). Even worse, if the first phase detects an error, the error message it produces will only show up in the output file as an unparsable statement flagged by m3pp.

BUGS

The derived modules that m3zume produces may have unused interfaces, variables, and/or procedures. Expect a few warnings from the compiler.

CAVEAT TO WIZARDS

(Ignore this unless you have to modify a template file.) The IMPORT statements in template files must have the word "IMPORT" at the head of the line and have all the imports on a single line. This simplifies the task of complying with Modula-3’s restriction that interfaces may be imported only once.

RETIRED FEATURES

The -GEF flag is no longer supported. See Steve Glassman if you’d like to take over the GEF package.

AUTHOR OF OBJECT

John Hershberger

AUTHOR OF DOCUMENTATION

John Hershberger and Marc H. Brown

Search for    or go to Top of page |  Section 1 |  Main Index


M3ZUME (1) -->

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.