osf1 man page for classes

Query: classes

OS: osf1

Section: 3u

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

classes(3U)						    InterViews Reference Manual 					       classes(3U)

NAME
classes - unique identifiers for catalog-managed objects and component views
SYNOPSIS
#include <Unidraw/classes.h>
DESCRIPTION
Classes for catalog-managed objects, including components, commands, tools, state variables, and transfer functions, must be associated with mutually-unique class identifiers that can be written onto disk. This allows a creator object to call the appropriate constructor as part of recreating an object from disk. Also, there must be a mechanism for creating an appropriate view given a subject; that is, there must be an association between a subject class and allowable view classes for that subject. This association is established by defining class identifiers for component views. These identifiers are formed by concatenating the identifier for a given component subject class with an identifier that specifies a ``view category.'' For example, the class identifier for the PostScript external view of a line component is the concatenation of the identifier for the line component subject class and POSTSCRIPT_VIEW identifier, which specifies the category of external views for generating Post- Script. This makes it possible to create an instance of the appropriate PostScript external view subclass given a line component subject. The class identifiers for the Unidraw base and predefined derived classes are specified in the classes.h include file. Applications that define new catalog-managed objects or component views should define unique class identifiers in a similar manner. Class identifiers for catalog-managed objects are simply integers with mnemonic macro definitions, usually the class name in all-uppercase. For example, the identifier for the LineComp component subject class is #define LINE_COMP 9030 View class identifiers are specified using the Combine macro, which takes as its first argument the macro definition of the corresponding component subject identifier; its second argument is an identifier for the view category. The Combine macro itself is then defined with a mnemonic name. For example, the identifier for the PostScript external view class PSLine (which generates PostScript for the line compo- nent subject) is defined as #define PS_LINE Combine(LINE_COMP, POSTSCRIPT_VIEW) where the POSTSCRIPT_VIEW view category identifier is defined as #define POSTSCRIPT_VIEW 9103 N.B.: All class identifiers in a given application must be unique.
SEE ALSO
Catalog(3U), Creator(3U) Unidraw 12 June 1990 classes(3U)
Related Man Pages
classes(3u) - debian
classes(3u) - minix
classes(3u) - bsd
classes(3u) - osf1
classes(3u) - centos
Similar Topics in the Unix Linux Community
Combine 3.10 (Default branch)
Combine 3.11 (Default branch)
Combine 3.12 (Default branch)
How to funnel stdout into call arguments?
OOP in FORTRAN derived classes