proland::SceneVisitor Class Reference
[ui]

A visitor to visit a scene graph. More...

#include <SceneVisitor.h>

List of all members.

Public Member Functions

 SceneVisitor ()
 Creates a new SceneVisitor.
virtual ~SceneVisitor ()
 Deletes this SceneVisitor.
virtual ptr< SceneVisitorvisitNode (ptr< SceneNode > node)
 Visits a SceneNode.
virtual ptr< SceneVisitorvisitNodeValue (ptr< Value > value)
 Visits a SceneNode.
virtual ptr< SceneVisitorvisitProducer (ptr< TileProducer > producer)
 Visits a TileProducer.
virtual ptr< SceneVisitorvisitLayer (ptr< TileLayer > layer)
 Visits a TileLayer.
virtual ptr< SceneVisitorvisitNodeField (string &name, ptr< Object > field)
 Visits a SceneNode field.
virtual ptr< SceneVisitorvisitNodeMethod (string &name, ptr< Method > method)
 Visits a Method.
virtual ptr< SceneVisitorvisitCache (ptr< TileCache > cache)
 Visits a TileCache.
virtual void visitEnd ()
 Ends the visits of a SceneNode, a Uniform, a TileProducer or a TileLayer.
void accept (ptr< SceneNode > root)
 Makes this visitor visit the given scene graph.

Private Member Functions

void accept (ptr< SceneNode > n, set< ptr< TileCache > > &caches)
 Makes this visitor visit the given scene node, and all its subnodes.
void accept (ptr< TileProducer > p, set< ptr< TileCache > > &caches)
 Makes this visitor visit the given tile producer, and all its referenced producers, recursively.
void accept (ptr< TileLayer > l, set< ptr< TileCache > > &caches)
 Makes this visitor visit the given tile layer, and all its referenced producers, recursively.

Detailed Description

A visitor to visit a scene graph.

Authors:
Eric Bruneton, Antoine Begault

Constructor & Destructor Documentation

proland::SceneVisitor::SceneVisitor (  ) 

Creates a new SceneVisitor.

virtual proland::SceneVisitor::~SceneVisitor (  )  [virtual]

Deletes this SceneVisitor.


Member Function Documentation

void proland::SceneVisitor::accept ( ptr< TileLayer l,
set< ptr< TileCache > > &  caches 
) [private]

Makes this visitor visit the given tile layer, and all its referenced producers, recursively.

Parameters:
l the TileLayer to visit.
[in,out] caches the TileCache found during this visit.
void proland::SceneVisitor::accept ( ptr< TileProducer p,
set< ptr< TileCache > > &  caches 
) [private]

Makes this visitor visit the given tile producer, and all its referenced producers, recursively.

Parameters:
p the TileProducer to visit.
[in,out] caches the TileCache found during this visit.
void proland::SceneVisitor::accept ( ptr< SceneNode >  n,
set< ptr< TileCache > > &  caches 
) [private]

Makes this visitor visit the given scene node, and all its subnodes.

Parameters:
n the SceneNode to visit.
[in,out] caches the TileCache found during this visit.
void proland::SceneVisitor::accept ( ptr< SceneNode >  root  ) 

Makes this visitor visit the given scene graph.

This method calls the visitXxx methods for each scene node, uniform, scene node field, scene node method, tile producer, tile layer, and tile cache encountered during the recursive exploration of the given scene graph.

Parameters:
root the scene graph to visit.
virtual ptr<SceneVisitor> proland::SceneVisitor::visitCache ( ptr< TileCache cache  )  [virtual]

Visits a TileCache.

The default implementation of this method does nothing.

Parameters:
cache the TileCache to visit.
virtual void proland::SceneVisitor::visitEnd (  )  [virtual]

Ends the visits of a SceneNode, a Uniform, a TileProducer or a TileLayer.

The default implementation of this method does nothing.

virtual ptr<SceneVisitor> proland::SceneVisitor::visitLayer ( ptr< TileLayer layer  )  [virtual]

Visits a TileLayer.

The default implementation of this method does nothing.

Parameters:
layer the TileLayer to visit.
virtual ptr<SceneVisitor> proland::SceneVisitor::visitNode ( ptr< SceneNode >  node  )  [virtual]

Visits a SceneNode.

The default implementation of this method does nothing.

Parameters:
node the SceneNode to visit.
virtual ptr<SceneVisitor> proland::SceneVisitor::visitNodeField ( string &  name,
ptr< Object >  field 
) [virtual]

Visits a SceneNode field.

The default implementation of this method does nothing.

Parameters:
name the field's name.
field the field's value.
virtual ptr<SceneVisitor> proland::SceneVisitor::visitNodeMethod ( string &  name,
ptr< Method >  method 
) [virtual]

Visits a Method.

The default implementation of this method does nothing.

Parameters:
name the Method's name.
method the Method to visit.
virtual ptr<SceneVisitor> proland::SceneVisitor::visitNodeValue ( ptr< Value >  value  )  [virtual]

Visits a SceneNode.

The default implementation of this method does nothing.

Parameters:
node the SceneNode to visit.
virtual ptr<SceneVisitor> proland::SceneVisitor::visitProducer ( ptr< TileProducer producer  )  [virtual]

Visits a TileProducer.

The default implementation of this method does nothing.

Parameters:
producer the TileProducer to visit.

Generated on Sat May 12 09:41:39 2012 for proland by  doxygen 1.6.1