(no subject)

Ewald Salcher ([email protected])
Mon, 19 Jun 95 17:24:00 PDT

I checked back in (and distributed) a version of the OS
with categories.

Assigning a categorie now works as follows.

1. Declare a MM_Name_Symbol in the *_sym.h/*_sym.cc files.
==========================================================

pres_sym.h:
extern MM_Name_Symbol PresentationModel;

pres_sym.cc:
MM_Name_Symbol PresentationModel;

2. In the *_srv.h/*_srv.cc files create the symbol.
All Value/Enum/Attribute/Object definitions get this
symbol as a last parameter.
=======================================================

pres_srv.cc:
PresentationModel = s->create_name_symbol ("PresentationModel");

s-> declare_enum (GuideDirection, "GuideDirection", PresentationModel);
s-> declare_value (GuideDirection, Vertical, "Vertical", PresentationModel);
s-> declare_value (GuideDirection, Horizontal, "Horizontal", PresentationModel);

s-> declare_object (Guide, "guide example", PresentationModel);
s-> declare_attribute (Guide, Direction , MM_Type_Enum, MM_Rule_None, False, False, GuideDirection, " ", PresentationModel);
s-> declare_attribute (Guide, Position , MM_Type_Double, MM_Rule_None, False, False, NoSymbol, " ", PresentationModel);
// .....

3. All definitions have the function:
=====================================

MM_Name_Symbol categorie ();
void categorie (MM_Name_Symbol val);

-------------------------------------------------
Ewald Salcher USC/Information Sciences Institute
4676 Admiralty Way, Marina del Rey, CA 90292
Phone: (310) 822-1511 250 Fax: (310) 823-6714