SoVRMLLoadSensor Class |
Note: This API is now obsolete.
Monitors the progress and success of downloading URL elements over a network. <font color="#FF0000">Action not implemented for this node.
Namespace: OIV.Inventor.VRMLnodes
The SoVRMLLoadSensor type exposes the following members.
Name | Description | |
---|---|---|
![]() | SoVRMLLoadSensor | Constructor. |
Name | Description | |
---|---|---|
![]() | AffectsState | Returns true if a node has an effect on the state during traversal. |
![]() | Callback | (Inherited from SoNode.) |
![]() | Copy | Calls Copy(false). (Inherited from SoNode.) |
![]() | Copy(Boolean) | Creates and returns an exact copy of the node. |
![]() | CopyFieldValues(SoFieldContainer) | Calls CopyFieldValues(fc, false). (Inherited from SoFieldContainer.) |
![]() | CopyFieldValues(SoFieldContainer, Boolean) | Copies the contents of fc's fields into this object's fields. |
![]() | Dispose |
Releases all resources used by SoDisposable.
(Inherited from SoDisposable.) |
![]() | Distribute | (Inherited from SoNode.) |
![]() | DoAction | (Inherited from SoNode.) |
![]() ![]() | EnableEvents | Enables/disables events for all SoVRMLLoadSensor objects. |
![]() | EnableNotify | Notification at this Field Container is enabled (if flag == true) or disabled (if flag == false). |
![]() | Equals | (Inherited from Object.) |
![]() | FieldsAreEqual | Returns true if this object's fields are exactly equal to fc's fields. |
![]() | Get | Returns the values of the fields of this object in the Open Inventor ASCII file format in the given string. |
![]() | GetAllFields | Returns a list of fields, including the eventIn's and eventOut's. |
![]() | GetAlternateRep | This method is called by actions to allow the node to provide an "alternate representation" when appropriate (typically depending on the action type). |
![]() | GetBoundingBox | (Inherited from SoNode.) |
![]() | GetEventIn | Returns a the eventIn with the given name. |
![]() | GetEventOut | Returns the eventOut with the given name. |
![]() | GetField | Returns a the field of this object whose name is fieldName. |
![]() | GetFieldName | Returns the name of the given field in the fieldName argument. |
![]() | GetFields | Appends references to all of this object's fields to resultList, and returns the number of fields appended. |
![]() | GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) |
![]() | GetMatrix | (Inherited from SoNode.) |
![]() | GetName | Returns the name of an instance. |
![]() | GetPrimitiveCount | (Inherited from SoNode.) |
![]() | GetRenderUnitID | (Inherited from SoNode.) |
![]() | GetStringName | (Inherited from SoBase.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | GLRender | (Overrides SoVRMLNodeGLRender(SoGLRenderAction).) |
![]() | GLRenderBelowPath | (Inherited from SoNode.) |
![]() | GLRenderInPath | (Inherited from SoNode.) |
![]() | GLRenderOffPath | (Inherited from SoNode.) |
![]() | GrabEventsCleanup | (Inherited from SoNode.) |
![]() | GrabEventsSetup | (Inherited from SoNode.) |
![]() | HandleEvent | (Inherited from SoNode.) |
![]() | HasDefaultValues | Returns true if all of the object's fields have their default values. |
![]() | IsBoundingBoxIgnoring | This method is used by getBoundingBox action traversal to know if the current node must be traversed or not, ie the bounding should be ignored. |
![]() ![]() | IsEventsEnabled | Queries if events are enabled for all objects of this class. |
![]() | IsNotifyEnabled | Notification is the process of telling interested objects that this object has changed. |
![]() | IsOverride | Returns the state of the override flag. |
![]() | IsSynchronizable | Gets the ScaleViz synchronizable state of this object. |
![]() | Pick | (Inherited from SoNode.) |
![]() | RayPick | (Inherited from SoNode.) |
![]() | Search | (Inherited from SoNode.) |
![]() | Set | Sets one or more fields in this object to the values specified in the given string, which should be a string in the Open Inventor file format. |
![]() | SetName | (Inherited from SoBase.) |
![]() | SetOverride | Turns the override flag on or off. |
![]() | SetSynchronizable | Sets this to be a ScaleViz synchronizable object. |
![]() | SetToDefaults | Sets all fields in this object to their default values. |
![]() | ToString |
Converts this SoBase structure to a human readable string.
(Inherited from SoBase.) |
![]() | Touch | Marks an instance as modified, simulating a change to it. |
![]() | Write | (Inherited from SoNode.) |
Name | Description | |
---|---|---|
![]() | enabled | Enables (true) or disables (false) the sensor. |
![]() | isActive | Output event. |
![]() | IsDisposable | ISafeDisposable interface implementation.
(Inherited from SoDisposable.) |
![]() | isLoaded | Output event. |
![]() | loadTime | Output event. |
![]() | metadata | Specifies the metadata node. |
![]() | progress | Output event. |
![]() | timeOut | The timeOut field specifies the maximum time for which the LoadSensor will monitor loading, starting from when the sensor becomes active. |
![]() | UserData |
Gets or sets the user data to be contained by the field container.
(Inherited from SoFieldContainer.) |
![]() | watchList | The watchList field contains one or more URL objects to monitor. |
</font>
See the X3D Specification, below.
<font color="#0000FF">NOTE:</font> This class does not exist in Open Inventor 10.0 and later.
This section describes the expected behavior of the node in a conforming X3D browser application. In some cases, the application is responsible for implementing portions of the expected behavior. Open Inventor viewer classes and IVF classes implement some of the application behaviors.
This section may reference portions of the X3D specification that are not present in this help file. The complete X3D spec is available at http://www.web3d.org.
The LoadSensor monitors the progress and success of downloading URL elements over a network. Only nodes that contain a valid URL field may be specified in the watchList field. Multiple nodes may be watched with a single LoadSensor.
The timeOut field specifies the maximum time for which the LoadSensor will monitor loading, starting from when the sensor becomes active. A value of 0 for the timeOut field indicates an indefinite time out period; i.e., the LoadSensor will wait until loading has completed either with success or failure.
The watchList field contains one or more URL objects to monitor. Only nodes that contain a valid URL field may be specified as elements of watchList. If multiple values are specified for this field, output events are generated only when all of the children have loaded or at least one has failed. If individual load status information is desired for different nodes, multiple LoadSensor nodes may be used, each with a single watchList element.
The isActive field generates events when loading of the LoadSensor's watchList elements begins and ends. An isActive true event is generated when the first element begins loading. An isActive false event is generated when loading has completed, either with a successful load of all objects or a failed load of one of the objects, or when the timeout period is reached as specified in the timeOut field.
The isLoaded field generates events when loading of the LoadSensor's watchList has completed. An isLoaded true event is generated when all of the elements have been loaded. An isLoaded false event is generated when one or more of the elements has failed to load, or when the timeout period is reached as specified in the timeout field.
The loadTime event is generated when loading of the LoadSensor's watchList has successfully completed. If loading fails or the timeout period is reached, a loadTime event is not generated.
The progress field generates events as loading progresses. The value of progress is a floating-point number between 0 and 1 inclusive. A value of 1 indicates complete loading of all watchList elements. The exact meaning of all other values (i.e., whether these indicate a percentage of total bytes, a percentage of total number of files, or some other measurement) and the frequency with which progress events are generated are browser-dependent. Regardless, the browser must in all cases guarantee that a progress value of 1 is generated upon successful load of all URL objects.
The following example defines a LoadSensor that monitors the progress of loading two different ImageTexture nodes:
Shape { appearance Appearance { material Material { texture DEF TEX1 ImageTexture { url "Amypic.png" } } } geometry Sphere {} } Shape { appearance Appearance { material Material { texture DEF TEX2 ImageTexture { url "Bmypic.png" } } } geometry Sphere {} } DEF LS LoadSensor { watchList [ USE TEX1, USE TEX2 ] } ROUTE LS.loadTime TO MYSCRIPT.loadTime
The events this would generate are:
Success of all children: isLoaded = true loadTime = now progress = 1 isActive = false Timeout of any children, failure of any children, or no network present: isLoaded = false isActive = false
For watchList elements that allow dynamic reloading of their contents, any reload of that element (EXAMPLE changing the url field of an ImageTexture or setting the load field of an Inline), resets the LoadSensor so that it monitors those elements based on the new values and resets its timeout period if one was specified.
For streamed media types, the first frame of data available means successful load of the URL object (i.e., the browser can render one frame of a movie or start playing an audio file).
VRMLLoadSensor {
enabled | true |
timeOut | 0 |
watchList | [] |
metadata | NULL |
SoSFBool | set_enabled | |
SoSFTime | set_timeOut | |
SoMFNode | set_watchList | |
SoSFNode | set_metadata |
SoSFBool | isActive |
SoSFBool | isLoaded |
SoSFTime | loadTime |
SoSFFloat | progress |
SoSFBool | enabled_changed |
SoSFTime | timeOut_changed |
SoMFNode | watchList_changed |
SoSFNode | metadata_changed |