Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod Initialize (String integratorid) as stream[Lib3DS_Root] 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    root := null( stream[ Lib3DS_Root ] ); 
 | 
    editor := MDSEditor::Editor(); 
 | 
    editor.LoadedObjectInfos( typeof( Lib3DS_RootDataset ).Name() ); 
 | 
    objinfo := editor.ObjectInfos( typeof( Lib3DS_RootDataset ).Name() ) 
 | 
                     .FindUnique( Lib3DS_RootDataset::DatasetName() ); 
 | 
     
 | 
    if( isnull( objinfo ) ) 
 | 
    { 
 | 
      options := DatasetCreateOptions::Construct( Lib3DS_RootDataset::DatasetName() ).State( DatasetState::MemoryOnly() ); 
 | 
      root := MDSLib3DS_RootDataset::Create( options ); 
 | 
    } 
 | 
    else if( not objinfo.IsLoaded() ) 
 | 
    { 
 | 
      root := MDSLib3DS_RootDataset::Load( objinfo.MDSID().MDSKey() ); 
 | 
    } 
 | 
    else 
 | 
    { 
 | 
      root := MDSLib3DS_RootDataset::Root( objinfo.MDSID().MDSKey() ); 
 | 
    } 
 | 
     
 | 
    return root->Initialize( integratorid ); 
 | 
  *] 
 | 
  InterfaceProperties { Accessibility: 'Module' } 
 | 
} 
 |