VR-Forces 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 #include <unordered_map>
20 
21 namespace makVrv
22 {
23  class DtAgentManagerInterface;
24 }
25 
26 namespace makVrf
27 {
30  {
31  public:
33 
36 
38  virtual ~DtVrfEntitySimDataProcessor();
39 
41  virtual void createAndSendState(DtStateData* sd,
42  makVrv::DtSimStateObjectAgent& objectDriver, bool force = false);
43 
44  virtual const makVrv::DtSimState& emptyState() const;
45 
46  static const char* ProcessorName() { return "DtVrfEntitySimDataProcessor"; };
47  virtual const char* processorName() const { return ProcessorName(); };
48 
49  protected:
50  virtual void setState(const DtStateData*, makVrv::DtSimState& state);
51 
53  virtual void addSimData(DtStateData* listener);
54  virtual void removeData(Legion::UInt64 legionGlobalId);
55  virtual void slot_postUpdateCallback(const DtStateData*);
56  virtual void setupEntityData();
57  virtual bool shouldForceObjectUpdate(const DtFrameStateInterface* comp) const;
58 
59  protected:
60  typedef std::unordered_map<makVrv::DtUniqueID, makVrv::DtVrlinkSimulatedEntityState> EntityStates;
62  };
63 
65  {
66  public:
69 
71 
74  static void registerInstance(makVrv::DtBaseConnection& conn, DtVrfEntitySimDataProcessorCreator* instance);
75 
77  };
78 }
79 
Class to transfer DtStateData for entities into entity sim data.
Definition: vrfEntitySimDataProcessor.h:29
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:65
EntityStates myEntityStates
Definition: vrfEntitySimDataProcessor.h:61
Definition: vrfEntitySimDataProcessor.h:64
Contains the DtUUID class declaration.
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:339
virtual const char * processorName() const
Used to uniquely identify for registration.
Definition: vrfEntitySimDataProcessor.h:47
unsigned long long UInt64
Definition: stateDataTypes.h:17
#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
std::unordered_map< makVrv::DtUniqueID, makVrv::DtVrlinkSimulatedEntityState > EntityStates
Definition: vrfEntitySimDataProcessor.h:60
static const char * ProcessorName()
Definition: vrfEntitySimDataProcessor.h:46
This is a simple base class that will be used to return a pointer to current or next frame state...
Definition: stateComponent.h:291
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:73

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)