VR-Forces 4.0.4 Class Documentation
include/vrvCigi/DtCigiEntityVisualizer.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2009 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: DtCigiEntityVisualizer.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *********************************************************************/
00008 
00012 
00013 #ifndef DtCigiEntityVisualizer_H_
00014 #define DtCigiEntityVisualizer_H_
00015 
00016 #include <vrvCigi/vrvCigi.h>
00017 
00018 #include <vrvCore/DtSharedSettingsManager.h>
00019 #include <vrvCore/DtUniqueID.h>
00020 
00021 #include <matrix/vlTaitBryan.h>
00022 #include <matrix/vlVector.h>
00023 
00024 #include <CigiShortArtPartCtrlV3.h>
00025 
00026 #include <map>
00027 
00028 class CigiArtPartCtrlV3;
00029 class CigiCompCtrlV3_3;
00030 class CigiEntityCtrlV3_3;
00031 class CigiRateCtrlV3_2;
00032 class CigiShortCompCtrlV3_3;
00033 
00034 namespace makVrv
00035 {
00036    class DtAgentManagerInterface;
00037    class DtCigiBaseEntity;
00038    class DtCigiConnection;
00039    class DtCigiEntity;
00040 
00044    class DT_DLL_VRVCIGI DtCigiEntityVisualizer
00045    {
00046    public:
00048       DtCigiEntityVisualizer(DtCigiConnection& connection,
00049          DtAgentManagerInterface& aSceneInterface);
00050 
00052       virtual ~DtCigiEntityVisualizer();
00053 
00056       virtual DtUniqueID uniqueIdForCigiEntity(int cigiEntId) const;
00057 
00060       virtual const DtCigiBaseEntity* cigiEntity(int entityId) const;
00061 
00064       virtual int findEntityWithUniqueId(DtUniqueID idToFind) const;
00065 
00066    protected:
00068       virtual void processEntityControl(const CigiEntityCtrlV3_3& packet);
00069 
00070       // Process a CIGI Rate Control packet
00071       virtual void processRateControl(const CigiRateCtrlV3_2& packet);
00072 
00074       virtual void processArtPartControl(const CigiArtPartCtrlV3& packet);
00075 
00077       virtual void processShortArtPartControl(const CigiShortArtPartCtrlV3& packet);
00078 
00081       virtual void processComponentControl(CigiCompCtrlV3_3& packet);
00082 
00085       virtual void processShortComponentControl(CigiShortCompCtrlV3_3& packet);
00086 
00090       virtual void setTspiFromPacket(
00091          const CigiEntityCtrlV3_3& packet, DtCigiBaseEntity* entity);
00092 
00095       virtual DtCigiBaseEntity* createNewEntity(
00096          int entityId, int entityType);
00097 
00099       virtual void removeEntity(int entityId);
00100 
00103       virtual void setArtPartWithDof(int partId, float val, 
00104          CigiBaseShortArtPartCtrl::DofSelectGrp selection,
00105          DtCigiEntity* entity);
00106 
00108       virtual void setAnimationState(const CigiEntityCtrlV3_3& packet,
00109          DtCigiBaseEntity* entity);
00110 
00111    protected:
00112       DtCigiEntityVisualizer(const DtCigiEntityVisualizer& orig);
00113       DtCigiEntityVisualizer& operator=(const DtCigiEntityVisualizer& orig);
00114 
00115 
00116    protected:
00117       typedef std::map<int, DtCigiBaseEntity*> IdToEntityMap;
00118 
00119       std::map<int, DtCigiBaseEntity*> myIdToEntityMap;
00120       DtAgentManagerInterface& mySceneInterface;
00121       DtCigiConnection&        myConnection;
00122    };
00123 }
00124 
00125 #endif

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)