VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
emitterSystemSimDataProcessor.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/vrfComponentProcessorInterface.inl>
16 #include <vrfGuiCore/DtVrlinkEmitterSystemStateObjectAgent.hpp>
17 
18 namespace makVrv
19 {
20  class DtAgentManagerInterface;
21 }
22 
23 namespace makVrf
24 {
25  struct DtVrlinkEmitterSystemState;
26  struct DtVrlinkEmitterBeamState;
27 
29  class DT_DLL_vrfGuiNetworkCommon DtEmitterSystemSimDataProcessor : public DtVrfComponentProcessor<DtVrlinkEmitterSystemStateObjectAgent, DtEmitterSystemStateComponent>
30  {
31  public:
33 
36 
39 
41  virtual void createAndSendState(const std::set<const DtFrameStateInterface*>& interfaces,
42  makVrv::DtSimStateObjectAgent& objectDriver, bool force = false);
43 
44  virtual const makVrv::DtSimState& emptyState() const;
45 
46  static const char* ProcessorName() { return "DtEmitterSystemSimDataProcessor"; };
47  virtual const char* processorName() const { return ProcessorName(); };
48 
49  protected:
50 
52  {
53  typedef std::set<const DtFrameStateInterface*> FrameStateInterfaces;
56  };
57 
58  virtual bool setState(const std::set<const DtFrameStateInterface*>&, FrameStateData& state) const;
59  virtual bool setState(const DtEmitterSystemStateComponent*, DtVrlinkEmitterSystemState&) const;
60  virtual bool setState(const DtEmitterSystemBeamStateData*, DtVrlinkEmitterBeamState&) const;
61 
62  virtual bool componentDiscovered(const DtFrameStateInterface*);
63  virtual void componentRemoved(UInt64 lid, makVrv::DtUniqueID id, const DtFrameStateInterface*) override;
64 
65  protected:
66  typedef std::map<makVrv::DtUniqueID, FrameStateData> Cache;
68  };
69 
71  {
72  public:
75 
77 
80  static void registerInstance(makVrv::DtBaseConnection& conn, DtEmitterSystemSimDataProcessorCreator* instance);
81 
83  };
84 }
85 
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: emitterSystemSimDataProcessor.h:51
std::map< makVrv::DtUniqueID, FrameStateData > Cache
Definition: emitterSystemSimDataProcessor.h:66
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
FrameStateInterfaces frameStateInterfaces
Definition: emitterSystemSimDataProcessor.h:54
DtVrlinkEmitterSystems emitterSystemStateData
Definition: emitterSystemSimDataProcessor.h:55
Class to transfer DtStateData for EmitterSystem objects into entity sim data.
Definition: emitterSystemSimDataProcessor.h:29
Cache myCache
Definition: emitterSystemSimDataProcessor.h:67
unsigned long long UInt64
Definition: stateDataTypes.h:17
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
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: emitterSystemStateComponent.h:466
#define DT_DLL_vrfGuiNetworkCommon
This file is used to determine how to build.
Definition: vrfGuiNetworkCommonDefines.h:24
virtual const char * processorName() const
Used to uniquely identify for registration.
Definition: emitterSystemSimDataProcessor.h:47
A DtSimState is the base class for all state objects. Derived instances of DtSimState will be created...
Definition: DtSimState.h:19
Definition: emitterSystemSimDataProcessor.h:70
The DtEmitterSystemStateComponentList is a collection of emitter systems and the beams they represent...
Definition: emitterSystemStateComponent.h:25
This is a simple base class that will be used to return a pointer to current or next frame state...
Definition: stateComponent.h:291
Definition: vrfComponentProcessorInterface.h:31
std::set< const DtFrameStateInterface * > FrameStateInterfaces
Definition: emitterSystemSimDataProcessor.h:53
static const char * ProcessorName()
Definition: emitterSystemSimDataProcessor.h:46
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:73

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)