VR-Forces 4.0.4 Class Documentation
include/vrvDiGuy/DtDiGuyModelInstance.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2008 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtDiGuyModelInstance.h,v $ $Revision: 1.15 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #ifndef DtDiGuyModelInstance_H_
00014 #define DtDiGuyModelInstance_H_
00015 
00016 #include <vrvDiGuy/vrvDiGuy.h>
00017 #include <vrvOsg/DtOsgModelInstance.h>
00018 
00019 #include <osg/MatrixTransform>
00020 
00021 #include <list>
00022 
00023 class diguyCharacter;
00024 
00025 namespace makVrv
00026 {
00027 
00028    class DtSceneObject;
00029 
00032    class DT_DLL_VRVDIGUY DtDiGuyModelInstance : public DtOsgModelInstance
00033    {
00034    public:
00035 
00036       //Let the creator class make instances.
00037       friend class DtDiGuyModelInstanceCreator;
00038 
00040       virtual ~DtDiGuyModelInstance();
00041 
00042       virtual void resetLink();
00043 
00045       virtual void  addToConnector( DtOsgSceneConnector* connector );
00046 
00049       virtual bool removeFromConnector( DtOsgSceneConnector* connector );
00050 
00053       virtual bool realize(DtModelDefinition& definition);
00054      
00056       void setObjectToMove( DtSceneObject* object);
00057 
00059       diguyCharacter* character();
00060 
00061       virtual void setVisible(bool isVisible);
00062 
00065       virtual void updateBoundingBoxViaContents();
00066       
00067    protected:
00068 
00069       void destroyCharacter();
00070 
00072       DtDiGuyModelInstance(DtDe& de);
00073 
00076       virtual void updateColorBlending();
00077 
00078    protected:
00079      
00080       diguyCharacter* myCharacter;
00081       osg::MatrixTransform* myLastTransform;
00082       DtSceneObject* myLastObject;
00083 
00084       bool myNodeVisible;
00085       bool myCanBeRecycled;
00086       bool myCastsShadows;
00087       bool myReceivesShadows;
00088    };
00089 
00092    class DT_DLL_VRVDIGUY DtDiGuyModelInstanceCreator : public DtModelInstanceCreator
00093    {
00094    public:
00095 
00097       static void registerCreator(DtDe& de);
00098 
00100       virtual ~DtDiGuyModelInstanceCreator();
00101 
00103       virtual DtModelInstance* create(DtDe& de);
00104 
00105    protected:
00106 
00107       DtDiGuyModelInstanceCreator();
00108 
00109    };
00110 }
00111 
00112 #endif
00113 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)