VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
mappingList.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <readerWriter/rwList.h>
12 #include "vrfutil/rwUUID.h"
13 #include <vlutil/vlFilename.h>
14 #include <vl/hostStructs.h>
15 
21 
22 #include "vrfutil/vrfutilDefines.h"
23 #include <boost/unordered_map.hpp>
24 
25 class DtObjectMapEntry;
26 
28 {
29 public:
30 
32  DtMappingList();
33 
35  DtMappingList(const DtString & writeName, DtReaderWriterRegistry *
36  parentRegistry = 0);
37 
39  virtual ~DtMappingList();
40 
42  DtMappingList(const DtString & writeName, const DtMappingList& orig,
43  DtReaderWriterRegistry * parentRegistry = 0);
44 
47 
48  virtual DtMappingList * clone(const DtString & writeName,
49  DtReaderWriterRegistry * parentRegistry = 0) const;
50 
53 
58  virtual bool lookup(const DtUUID&, DtSimulationAddress& address) const;
59 
61  virtual std::vector<DtUUID> objects(const DtSimulationAddress& addr);
62 
64  virtual std::set<DtSimulationAddress> addresses();
65 
67  virtual void addMapping(const DtUUID& name,
68  const DtSimulationAddress& address);
69 
70 protected:
71 
72  DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
73  const DtVariableBindingsList& variableBindings);
74 
75  virtual void getData(const DtEnvironmentSP env, const DtEnvValueSP envObject,
76  const DtReaderWriter::SearchPaths& searchPaths, const DtVariableBindingsList& bindings);
77 
78  virtual void emptyList();
79  virtual void copyList(const DtMappingList & orig);
80 
81 protected:
82  typedef boost::unordered_map<DtUUID, DtObjectMapEntry*> FastMap;
84 };
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
FastMap myFastMap
Definition: mappingList.h:83
A Readable, Writable version of DtList. This class cannot be used directly, but must be inherited to ...
Definition: rwList.h:26
DT_DLL_readerWriter DtBoost::shared_ptr< DtEnvironment > DtEnvironmentSP
Definition: readerWriter.h:30
virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)=0
This method must be overridden by a subclass. Within this method, new instances of the DtReaderWriter...
Definition: readerWriterRegistry.h:39
Contains the DtUUID class declaration.
class DtObjectMapEntry:
Definition: objectMapEntry.h:26
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
const DtRwList & operator=(const DtRwList &orig)
Calls down to DtReaderWriter::operator=(). List elements are not copied.
#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
boost::unordered_map< DtUUID, DtObjectMapEntry * > FastMap
Definition: mappingList.h:82
Definition: mappingList.h:27

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)