VR-Forces 4.0.4 Class Documentation
include/vrvCigi/DtHatHotResponder.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2009 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: DtHatHotResponder.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *********************************************************************/
00008 
00012 
00013 #ifndef DtHatHotResponder_H_
00014 #define DtHatHotResponder_H_
00015 
00016 #include <vrvCigi/vrvCigi.h>
00017 #include <vrvCore/DtUniqueID.h>
00018 
00019 #include <map>
00020 
00021 #include <matrix/vlVector.h>
00022 
00023 #include <boost/signal.hpp>
00024 
00025 class CigiHatHotReqV3_2;
00026 
00027 namespace makVrv
00028 {
00029    class DtCigiEntityVisualizer;
00030    class DtCigiConnection;
00031 
00036    class DT_DLL_VRVCIGI DtHatHotResponder
00037    {
00038    public:
00039       struct HatHotData
00040       {
00041          DtUniqueID entityId;
00042          DtVector   location;
00043          int numberOfFramesBeforeSending;
00044          int lastFrameSent;
00045          bool hatRequest;
00046       };
00047 
00049       DtHatHotResponder(DtCigiConnection& connection);
00050 
00052       virtual ~DtHatHotResponder();
00053 
00055       virtual void addPeriodicHatHotRequest(DtUniqueID entityId, 
00056          const DtVector& loc, int frequency, int hatHotId, bool hatRequest);
00057 
00059       virtual void processHatHotRequests();
00060 
00062       boost::signal<void (DtUniqueID, const DtVector&, unsigned int, bool, unsigned int)> 
00063          signal_hatHotRequested;
00064 
00065    protected:
00068       void processHatHotRequest(const CigiHatHotReqV3_2& hatHotReq);
00069 
00072       virtual void sendHatHotRequest(DtUniqueID entityId, const DtVector& loc,
00073          int hatHotId, bool hatRequest);
00074 
00075    protected:
00076       std::map<int, HatHotData> myHatHotRequests;
00077       DtCigiConnection& myConnection;
00078    };
00079 }
00080 
00081 #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)