SoInputReader Class |
Base class for custom readers that create an Open Inventor scene graph.
Namespace: OIV.Inventor
The SoInputReader type exposes the following members.
Name | Description | |
---|---|---|
CanConvert | Returns true if the specified input source can be converted by this plugin. | |
Convert | Returns the specified input source in the form of an Open Inventor scene graph. | |
Dispose |
Releases all resources used by SoDisposable.
(Inherited from SoDisposable.) | |
Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
IsDisposable | ISafeDisposable interface implementation.
(Inherited from SoDisposable.) |
This class defines the base interface for loading a scene graph from an data format that is not directly supported by Open Inventor.
Input readers should be loaded and managed as plugins. Open Inventor automtically attempts to load all files that may be plugin libraries (files with the extension .dll or .so depending on the platform). Plugin libraries may also be explicitly loaded using OIV.Inventor.SoDB.AddPlugin(System.String). See more details on that page. The file name convention (not required) for readers is "Iv*Reader.dll (or .so)".
A plugin library must implement the initPlugin() and exitPlugin() C-formatted entry-points. The initPlugin() function is responsible for registering the new class (or classes) in the Open Inventor database through the standard SoType type creation mechanism. The exitPlugin() function is used to disable the use of the custom class(s) by removing the corresponding type(s) from the Open Inventor database.
When OIV.Inventor.SoDB.ReadAll(OIV.Inventor.SoInput) (for example) is called to create a scene graph from a file or buffer, Open Inventor first attempts to handle the data as .iv format. If that fails, Open Inventor will call the OIV.Inventor.SoInputReader.CanConvert(OIV.Inventor.SoInput) method for each loaded plugin class, that is derived from OIV.Inventor.SoInputReader, in the order they were loaded. The first reader plugin that returns true from this method will be used to handle the data.