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