VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfProcessStateRepository.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
14 #pragma once
15 
17 #include <vlutil/vlString.h>
19 
20 class DtLocalObject;
21 class DtSimObject;
23 
43 
46 {
47 
48 protected:
49 
51 
52 public:
54  const DtString& rwName = DtString::nullString(),
55  DtReaderWriterRegistry* parentRegistry = 0);
56 
58  const DtString& rwName = DtString::nullString(),
59  DtReaderWriterRegistry* parentRegistry = 0);
60 
61 
63  const DtVrfProcessStateRepository& orig);
64 
65  virtual ~DtVrfProcessStateRepository();
66 
67  virtual DtVrfProcessStateRepository* clone(
68  const DtString& rwName = DtString::nullString(),
69  DtReaderWriterRegistry* parentRegistry = 0) const = 0;
70 
72  virtual bool init();
73 
75  virtual DtString type() const = 0;
76 
77  virtual bool loadedFromMTL() const;
78 
79  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
80  const DtVariableBindingsList& variableBindings);
81 
87  static void setFactory(DtVrfProcessStateRepositoryFactory* factory);
88 
89  static void addVrfProcessStateRepositoryCreatorFcn(const DtString & type,
91 
93  static DtVrfProcessStateRepository* createRepository(const DtString & name,
94  const DtString & type, DtLocalObject* vrfObject,
95  DtReaderWriterRegistry* parentRegistry = 0);
96 
97 protected:
98  const DtSimObject* vrfObject() const { return (DtSimObject*)myVrfObject; }
99 
100 protected:
103 
105 
106 };
bool myLoadedFromMTL
Definition: vrfProcessStateRepository.h:102
class DtVrfProcessStateRepositoryFactory:
Definition: vrfProcessStateRepositoryFactory.h:25
Definition: readerWriter.h:85
DtVrfProcessStateRepository *(* DtVrfProcessStateRepositoryCreatorFcn)(const DtString &name, DtLocalObject *vrfObject, DtReaderWriterRegistry *parentRegistry)
Definition: vrfProcessStateRepositoryFactory.h:16
Definition: readerWriterRegistry.h:39
static DtReaderWriterFactory * factory()
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:79
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories. Process state repositories represent (potentially) shared, savable information for one or more components functioning together to achieve some process or set of processes; such as aiming and firing a weapon; moving an object; or just waiting a specified amount of time.
Definition: vrfProcessStateRepository.h:45
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtLocalObject * myVrfObject
Definition: vrfProcessStateRepository.h:101
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
static DtVrfProcessStateRepositoryFactory * theFactory
Definition: vrfProcessStateRepository.h:104
const DtSimObject * vrfObject() const
Definition: vrfProcessStateRepository.h:98
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 Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)