VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
environmentSimDataProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vrfGuiNetworkCommon/vrfDataProcessorInterface.inl>
14 #include <vrfGuiCore/DtEnvironmentStateObjectAgent.hpp>
15 #include <vrfStateData/stateData.h>
17 #include <vrfutil/rwUUID.h>
18 
19 namespace makVrf
20 {
21  class DtVrfGeometryStateComponent;
22 
24  class DT_DLL_vrfGuiNetworkCommon DtEnvironmentSimDataProcessor : public DtVrfDataProcessor<DtEnvironmentStateObjectAgent>
25  {
26  public:
28 
31 
34 
36  virtual void createAndSendState(DtStateData* sd,
37  makVrv::DtSimStateObjectAgent& objectDriver, bool force = false);
38 
39  virtual const makVrv::DtSimState& emptyState() const;
40 
41  static const char* ProcessorName() { return "DtEnvironmentSimDataProcessor"; };
42  virtual const char* processorName() const { return ProcessorName(); };
43 
44  protected:
45  virtual void setState(const DtStateData*, makVrv::DtSimState& state);
46 
48  virtual void removeData(Legion::UInt64 legionGlobalId);
49  virtual void slot_postUpdateCallback(const DtStateData*);
50  virtual void setupEnvironmentData();
51  virtual bool shouldForceObjectUpdate(const DtFrameStateInterface* comp) const;
52  virtual void addSimData(DtStateData* sd);
53  virtual DtVector setupPoints(const DtVrfGeometryStateComponent* locationComponent, makVrv::DtSimState& baseState);
54 
55  protected:
56  typedef std::map<makVrv::DtUniqueID, DtVrlinkSimulatedEnvironmentProcess> EnvironmentStates;
58 
59  std::map<Legion::UInt64, DtUUID> myUUIDMap;
62  };
63 
65  {
66  public:
69 
71 
74  static void registerInstance(makVrv::DtBaseConnection& conn, DtEnvironmentSimDataProcessorCreator* instance);
75 
77  };
78 }
Contains makVrv::DtSimDataProcessorInterface class.
static const char * ProcessorName()
Definition: environmentSimDataProcessor.h:41
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
virtual const char * processorName() const
Used to uniquely identify for registration.
Definition: environmentSimDataProcessor.h:42
Definition: vrfDataProcessorInterface.h:64
EnvironmentStates myEnvironmentStates
Definition: environmentSimDataProcessor.h:57
Class to transfer DtStateData for entities into entity sim data.
Definition: environmentSimDataProcessor.h:24
bool myReportForceChanges
Definition: environmentSimDataProcessor.h:61
bool myReportUUIDChanges
Definition: environmentSimDataProcessor.h:60
std::map< Legion::UInt64, DtUUID > myUUIDMap
Definition: environmentSimDataProcessor.h:59
Contains the DtUUID class declaration.
1) Define the interface class that will be used to represent the next and curent frames. The UNDEFINED_ macros are convenience macros that will define methods that throw exceptions (until they are implemented)
Definition: vrfGeometryStateComponent.h:54
std::map< makVrv::DtUniqueID, DtVrlinkSimulatedEnvironmentProcess > EnvironmentStates
Definition: environmentSimDataProcessor.h:56
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:336
Definition: environmentSimDataProcessor.h:64
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
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 Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)