| OCR Text |
Show 28 • overloaded const ru ctors , destructors, and copy functions All objects in Alpb a_l that can persist are g1ven a unique identify ing type tag by the tt ser creating the class. This type tag id e ntifies t he object's class and also id entifies the base class . The type tag numbers are unique and immutable forever , i. e., they are never deleted. 3.4 Persistent Object Implementation .'\ lplta_l geometric model s con sist of a set of object g ra phs. ~in ce the Alpha_l wurk euv irumnent is l H~ te roge nou s, t he machine un whi ch a model was created may not be t he same as the one on which it is lat er load ed. To facilitate t he conversion from one architectu re to another , the Alpha_l-file contains machine dependent information such as floating point formats and byte ordering characteristics. By cornparing run -time rn achine charac te ri st ics to those read from an Alpha_l-file, app li cat ions can determine if the two architectures differ. The Alpha_l -file also co JtL:tiJtS obj ecLheacl e r_type in stances which desc ribe obj ects in the Alpha_l-fde. If the object descriptor in the Alpha_l-file and the one compiled into the reader's code are different then the object layout has changed. Alph a_l uses a very conservative scheme to convert old objects to new on es . The object members are identified by tt<L IIW. Jll iss i11g tlW lll lw rs arc dele ted. IH'W !ll('m lw rs a.re acld ecl <'U td ini tiali zed to 7. <'1'0 , <l tJd type clashes between the same named rn ernber a re handled with trivial type <·o nv< ' t.s ions (e .g., real to integer convf~ rsion , otherwise bitwise copy). 3.4.1 Binary File Layout T he binary fil e format is for cornpa.ct long term storage of Alpha_l mode ls. It co nsists of file headers, obj ect !waders, and obj ect in st a nces . T hese various Plcme nts a re id ent ified at obj ect load time by f1ags preceeding each item, see Figure :).4. Object in stances co nsist of t he virtual address of the object when it was being |