VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scenarioLoadManager.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2021 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
9 #include "vrfutil/rwUUID.h"
10 
11 class DtScenario;
12 class DtString;
13 class DtFilename;
14 class DtLocalObject;
15 
31 {
32 public:
35 
38 
41  virtual DtScenario* createScenarioObject(const DtFilename&) const = 0;
42  virtual DtCreateScenarioObjectHandler* clone() const = 0;
43 };
44 
47 {
48 public:
51 
53  virtual ~DtLoadScenarioPieceHandler();
54 
59  virtual bool loadScenarioPiece(const DtScenario&, void* userData = 0) = 0;
60  virtual DtLoadScenarioPieceHandler* clone() const = 0;
61 };
62 
65 {
66 public:
69 
71  virtual ~DtSaveScenarioPieceHandler();
72 
76  virtual bool saveScenarioPiece(const DtScenario&, const std::map<DtUUID, DtLocalObject*>&, void* userData = 0) const = 0;
77  virtual DtSaveScenarioPieceHandler* clone() const = 0;
78 };
79 
81 {
82 public:
85 
87  virtual ~DtScenarioLoadManager();
88 
95  virtual DtScenario* createScenarioObject(const DtFilename&) const;
96 
98  virtual void addCreateScenarioObjectHandler(const DtString& extension, DtCreateScenarioObjectHandler*);
99 
102  virtual DtCreateScenarioObjectHandler* getCreateScenarioObjectHandler(const DtString& extension) const;
104 
111  virtual void addLoadScenarioPieceHandler(const DtString& extension, DtLoadScenarioPieceHandler*);
112 
115  virtual DtLoadScenarioPieceHandler* getLoadScenarioPieceHandler(const DtString& extension) const;
117 
124  virtual void addSaveScenarioPieceHandler(const DtString& extension, DtSaveScenarioPieceHandler*);
125 
128  virtual DtSaveScenarioPieceHandler* getSaveScenarioPieceHandler(const DtString& extension) const;
130 
131 protected:
132  typedef std::map<DtString, DtCreateScenarioObjectHandler*> CreateScenarioObjectHandlers;
134 
135  typedef std::map<DtString, DtLoadScenarioPieceHandler*> LoadScenarioPieceHandlers;
137 
138  typedef std::map<DtString, DtSaveScenarioPieceHandler*> SaveScenarioPieceHandlers;
140 };
Definition: scenario.h:52
CreateScenarioObjectHandlers myCreateScenarioObjectHandlers
Definition: scenarioLoadManager.h:133
Contains the DtUUID class declaration.
class DtScenarioLoadManager:
Definition: scenarioLoadManager.h:30
std::map< DtString, DtLoadScenarioPieceHandler * > LoadScenarioPieceHandlers
Definition: scenarioLoadManager.h:135
Definition: scenarioLoadManager.h:80
The class to save a piece of the scenario. Return false if the save of that piece fails...
Definition: scenarioLoadManager.h:64
LoadScenarioPieceHandlers myLoadScenarioPieceHandlers
Definition: scenarioLoadManager.h:136
The class to load a piece of the scenario. Return false if the load of that piece fails...
Definition: scenarioLoadManager.h:46
std::map< DtString, DtCreateScenarioObjectHandler * > CreateScenarioObjectHandlers
Definition: scenarioLoadManager.h:132
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
SaveScenarioPieceHandlers mySaveScenarioPieceHandlers
Definition: scenarioLoadManager.h:139
std::map< DtString, DtSaveScenarioPieceHandler * > SaveScenarioPieceHandlers
Definition: scenarioLoadManager.h:138
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

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)