|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.sun.j3d.utils.scenegraph.io.SceneGraphStreamWriter
Writes a Java3D SceneGraph to a Java OutputStream.
Using this class to write to a FileOutputStream is not recommended. Use SceneGraphFileWriter instead to achieve maximum performance and flexibility.
Constructor Summary | |
SceneGraphStreamWriter(java.io.OutputStream outputStream)
Creates new SceneGraphStreamWriter that will write to the supplied stream |
Method Summary | |
void |
close()
Close the SceneGraphStreamWriter, but does not close the Stream |
void |
writeBranchGraph(BranchGroup graph,
java.util.HashMap namedObjects)
Write the entire graph to the stream. |
void |
writeUniverse(SimpleUniverse universe,
boolean writeContent)
Write universe to the Stream. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public SceneGraphStreamWriter(java.io.OutputStream outputStream) throws java.io.IOException
Method Detail |
public void writeUniverse(SimpleUniverse universe, boolean writeContent) throws java.io.IOException, UnsupportedUniverseException
universe
to the Stream.
If writeContent
is true then all BranchGraphs attached to the
universe will be saved. If it is false then only the universe
data structures will be output (PlatformGeometry, ViewerAvatar, Locales,
and the MultiTransformGroup between the ViewingPlatform and the View).
If writeContent
is true then all the BranchGraphs
attached to the Locales of the universe must have the
ALLOW_DETACH capability set. If they do not, a CapabilityNotSetException
will be thrown
universe
- The universe to writewriteContent
- Flag enabling the BranchGraphs to be written
java.io.IOException
UnsupportedUniverseException
- Thrown if the universe class is not
supported by this implementationpublic void writeBranchGraph(BranchGroup graph, java.util.HashMap namedObjects) throws java.io.IOException, DanglingReferenceException, NamedObjectException
The API will correctly handle NodeComponents that are shared between seperate graphs. However Nodes cannot be referenced in other Graphs.
If a reference to a Node in another graph is encountered a
DanglingReferenceException will be thrown.
namedObjects
can contain a mapping between a key and a SceneGraphObject
in the graph. During the read process this can be used to locate nodes
in the graph.
java.io.IOException
DanglingReferenceException
NamedObjectException
public void close() throws java.io.IOException
java.io.IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |