VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfEntitySimDataProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vrfGuiNetworkCommon/vrfDataProcessorInterface.inl>
14 #include <vrfStateData/stateData.h>
16 #include <vrfGuiCore/DtVrfEntityStateObjectAgent.hpp>
17 #include <vrfutil/rwUUID.h>
18 
19 namespace makVrv
20 {
21  class DtAgentManagerInterface;
22 }
23 
24 namespace makVrf
25 {
28  {
29  public:
31 
34 
36  virtual ~DtVrfEntitySimDataProcessor();
37 
39  virtual void createAndSendState(DtStateData* sd,
40  makVrv::DtSimStateObjectAgent& objectDriver, bool force = false);
41 
42  virtual const makVrv::DtSimState& emptyState() const;
43 
44  static const char* ProcessorName() { return "DtVrfEntitySimDataProcessor"; };
45  virtual const char* processorName() const { return ProcessorName(); };
46 
47  protected:
48  virtual void setState(const DtStateData*, makVrv::DtSimState& state);
49 
51  virtual void addSimData(DtStateData* listener);
52  virtual void removeData(Legion::UInt64 legionGlobalId);
53  virtual void slot_postUpdateCallback(const DtStateData*);
54  virtual void setupEntityData();
55  virtual bool shouldForceObjectUpdate(const DtFrameStateInterface* comp) const;
56 
57  protected:
58  typedef std::map<makVrv::DtUniqueID, makVrv::DtVrlinkSimulatedEntityState> EntityStates;
60 
61  std::map<Legion::UInt64, DtUUID> myUUIDMap;
64  };
65 
67  {
68  public:
71 
73 
76  static void registerInstance(makVrv::DtBaseConnection& conn, DtVrfEntitySimDataProcessorCreator* instance);
77 
79  };
80 }
81 
Class to transfer DtStateData for entities into entity sim data.
Definition: vrfEntitySimDataProcessor.h:27
Contains makVrv::DtSimDataProcessorInterface class.
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
Definition: vrfDataProcessorInterface.h:64
EntityStates myEntityStates
Definition: vrfEntitySimDataProcessor.h:59
Definition: vrfEntitySimDataProcessor.h:66
Contains the DtUUID class declaration.
std::map< Legion::UInt64, DtUUID > myUUIDMap
Definition: vrfEntitySimDataProcessor.h:61
bool myReportUUIDChanges
Definition: vrfEntitySimDataProcessor.h:62
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:39
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:336
virtual const char * processorName() const
Used to uniquely identify for registration.
Definition: vrfEntitySimDataProcessor.h:45
unsigned long long UInt64
Definition: stateDataTypes.h:17
std::map< makVrv::DtUniqueID, makVrv::DtVrlinkSimulatedEntityState > EntityStates
Definition: vrfEntitySimDataProcessor.h:58
#define DT_DLL_vrfGuiNetworkCommon
This file is used to determine how to build.
Definition: vrfGuiNetworkCommonDefines.h:24
A DtSimState is the base class for all state objects. Derived instances of DtSimState will be created...
Definition: DtSimState.h:19
bool myReportForceChanges
Definition: vrfEntitySimDataProcessor.h:63
static const char * ProcessorName()
Definition: vrfEntitySimDataProcessor.h:44
This is a simple base class that will be used to return a pointer to current or next frame state...
Definition: stateComponent.h:282
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:71

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)