This function creates the four primitive SOM objects (SOMObject, SOMClass, SOMClassMgr, and SOMClassMgrObject) and initializes global variables used by the SOM run-time environment. This function must be called before using any other SOM functions or methods (with the exception of somSetExpectedIds). If the SOM run-time environment has already been initialized, calling this function has no harmful effect.
Although this function must be called before using other SOM functions or methods, it needn't always be called explicitly, because the New macros, the Renew macros, the new operator, and the NewClass procedures defined by the SOM C and C++ language bindings call somEnvironmentNew if needed.