OpenSceneGraph/include/osgGA/SetSceneViewVisitor

55 lines
1.6 KiB
C++

/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2003 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#ifndef OSGGA_SETSCENEVIEWGEHVISITOR
#define OSGGA_SETSCENEVIEWGEHVISITOR 1
#include <osgGA/GUIEventHandlerVisitor>
#include <osgUtil/SceneView>
namespace osgGA{
// Some forward declarations
class GUIEventHandler;
class CameraManipulator;
/**
SetSceneViewGUIEventHandlerVisitor which visits various types of
GUIEventHandler and sets them up appropriately, given a new scene
view.
*/
class OSGGA_EXPORT SetSceneViewVisitor: public GUIEventHandlerVisitor
{
public:
SetSceneViewVisitor(GUIEventAdapter* in,
GUIActionAdapter* out,
osgUtil::SceneView* sv):
GUIEventHandlerVisitor(in,out),
_sceneView(sv) {}
virtual ~SetSceneViewVisitor() {}
virtual void visit(CameraManipulator& cm);
virtual void visit(StateSetManipulator& cm);
private:
osg::ref_ptr<osgUtil::SceneView> _sceneView;
};
};
#endif