VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simResourceManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2018 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
14 #pragma once
15 
16 #include <vlutil/vlHashlist.h>
17 #include <readerWriter/rwList.h>
18 
20 class DtString;
21 class DtSimResource;
22 class DtListItem;
23 
36 
37 #include "vrfutil/vrfutilDefines.h"
39 {
40 
41 protected:
42 
45 
46 public:
47 
50  parentRegistry = NULL);
52  parentRegistry = NULL);
53 
55  DtSimResourceManager(const DtString& name, const DtSimResourceManager& orig,
56  DtReaderWriterRegistry* parentRegistry = NULL);
58  DtReaderWriterRegistry* parentRegistry = NULL);
60  DtReaderWriterRegistry* parentRegistry = NULL);
61 
64 
65  bool operator!= (const DtSimResourceManager& orig) const;
66  bool operator== (const DtSimResourceManager& orig) const;
67 
69  virtual ~DtSimResourceManager();
70 
71  virtual const char* readerWriterType() const;
72 
73  virtual DtSimResource* lookupResource(const DtString & resourceName);
74 
75  virtual const DtSimResource* lookupResource(const DtString & resourceName) const;
76 
79  virtual DtSimResource* addResource(DtSimResource* resource);
80 
84  virtual bool removeResource(DtSimResource* resource);
85 
88  virtual void merge(const DtSimResourceManager&);
89 
90  virtual DtSimResourceManager* clone(const DtString& name,
91  DtReaderWriterRegistry* parentRegistry = NULL) const;
92  virtual DtSimResourceManager* clone(const DtSymbolString& name,
93  DtReaderWriterRegistry* parentRegistry = NULL) const;
94 
96  virtual void clearResources();
97 
101 
103  virtual void addToHashIndex(DtSimResource* resource);
104 
106  virtual void removeFromHashIndex(DtSimResource* resource);
107 
131  const std::map<DtString, DtSimResource*>& resources() const { return myResourceMap; };
132 
133  std::map<DtString, DtSimResource*>& resources() { return myResourceMap; };
134 
136  virtual void getSelf(DtlObjPtr args,
137  const DtReaderWriter::SearchPaths& searchPaths = SearchPaths(),
138  const DtVariableBindingsList& variableBindings = nullVariableReference());
139 
140 protected:
142  virtual void removeResource(DtSimResource* resource, DtListItem* item);
143  virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
144  const DtVariableBindingsList& variableBindings);
145 
146 protected:
147 
148  std::map<DtString, DtSimResource*> myResourceMap;
149 
150 };
151 
153 {
154  return !(*this == orig);
155 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)