/* -*- C++ -*-
* rendervisitor.h
* $Id: rendervisitor.h,v 1.1.1.1 2000/07/20 20:54:14 ghali Exp $
*/
#ifndef RENDERVISITOR_H
#define RENDERVISITOR_H
#include "visitor.h"
#include "../nodes/group.h"
namespace MSG {
class RenderVisitor : public Visitor {
public:
RenderVisitor();
virtual ~RenderVisitor();
// We have two options with a compromise in strength between
// the node objects and the RenderVisitor. Each node object has
// a render method. The compromise is whether to have the RenderVisitor
// invoke the render methods and performe all the traversal or to
// have the RenderVisitor just send a render request to the root of the
// tree to be rendered and let that node cascade the requests.
// The second option is taken here.
void sendRenderRequest(Group* g);
// void traverse(Group* g); interface for first option
};
}
#endif