Implementing Classes in SOM
Appearance
Reprint Courtesy of International Business Machines Corporation, © International Business Machines Corporation
The SOM Run-Time Environment Run-time environment initialization SOMObject class object SOMClass class object SOMClassMgr class object and SOMClassMgrObject Parent class vs. metaclass SOM-derived metaclasses Inheritance Method Resolution Offset resolution Name-lookup resolution Dispatch-function resolution Customizing Method Resolution The four kinds of SOM methods Static methods Nonstatic methods Dynamic methods Direct-call procedures Implementing SOM Classes The implementation template Stub procedures for methods Extending the implementation template Accessing internal instance variables Making parent method calls Converting C++ classes to SOM classes Running incremental updates of the implementation template file Considerations to ensure that updates work If you change the parents of a class... Compiling and linking Initializing and Uninitializing Objects Initializer methods Declaring new initializers in SOM IDL Considerations re: 'somInit' initialization from earlier SOM releases Implementing initializers Selecting non-default ancestor initializer calls Using initializers when creating new objects Uninitialization Using 'somDestruct' A complete example Implementation code Customizing the initialization of class objects Creating a SOM Class Library General guidelines for class library designers Types of class libraries Building export files Specifying the initialization function Using Windows class libraries Creating the import library Customizing Memory Management Customizing Class Loading and Unloading Customizing class initialization Customizing DLL loading Customizing DLL unloading Customizing Character Output Customizing Error Handling Customizing Mutual Exclusion Services (Thread Safety) Customizing Multi-threading Services