WebLVC 1.8 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rprBroker/rprBroker/globalIdMapper.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2017 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <rprBroker/dllExport.h>
13 #include <vlpi/entityIdentifier.h>
14 #include <vlutil/vlString.h>
15 #include <map>
16 
17 namespace MAKVrExchange
18 {
19 
20  namespace DtRprBroker
21  {
22 
25  typedef DtString PortalId;
26 
27  class DtGlobalIdMapper;
29  typedef DtGlobalIdMapper* (*DtGlobalIdMapperCreator)();
30 
36  {
37  public:
38 
41 
43  virtual ~DtGlobalIdMapper();
44 
47  virtual bool isValidId(const DtString& globalId);
48 
51  virtual bool add(const PortalId &portalName,
52  const DtString &hlaName);
53 
57  virtual void remove(const DtString &hlaName);
58  virtual void removePortal(const PortalId& globalId);
59 
62  virtual bool existsHlaGid(const DtString& hlaId);
63 
66  virtual bool existsPortalGid(const DtString& portalId);
67 
71  virtual DtString convertHLAGidToPortalGid(const DtString& globalId);
72 
76  virtual DtString convertPortalGidToHLAGid(const PortalId& globalId);
77 
79  virtual DtEntityIdentifier convertHLANameToEntityId(const DtString& hlaName);
80 
81  virtual void addMarkingTextMapping(const DtString& portalName,
82  const DtString& markingName);
84  virtual bool removeMarkingTextMapping(const DtString& portalName);
85 
87  virtual void addEntityIdMapEntry(const DtString& hlaName,
88  const DtEntityIdentifier& entityId);
89 
91  virtual bool removeEntityIdMapEntry(const DtString& hlaName);
92 
93  //Returns whether portalID was found in our map.
94  virtual bool findMarkingTextNameForPortalID(const DtString& portalID,
95  DtString& markingText) const ;
96 
97  protected:
98 
100  std::map<DtString,PortalId> myPortalIdHashList;
101 
103  std::map<PortalId,DtString> myHLAIdHashList;
104 
106  std::map<DtString, DtString> myMarkingTextMapping;
107 
109  typedef std::map<DtString, DtEntityIdentifier> EntityIdByHLANameMap;
111 
112  };
113 
114  }
115 }
std::map< DtString, PortalId > myPortalIdHashList
a list of Portal ID&#39;s hashed by DIS ID&#39;s
Definition: rprBroker/rprBroker/globalIdMapper.h:100
std::map< DtString, DtString > myMarkingTextMapping
a List of mappings when useMarkingTextforHLAObjectID is in use.
Definition: rprBroker/rprBroker/globalIdMapper.h:106
std::map< PortalId, DtString > myHLAIdHashList
a List of HLA ID&#39;s hashed by Portal ID&#39;s
Definition: rprBroker/rprBroker/globalIdMapper.h:103
DtGlobalIdMapper is used by the HLA Broker to convert between Portal ObjectIds and HLA Object IDs...
Definition: rprBroker/rprBroker/globalIdMapper.h:35
#define DT_DLL_RPRBROKER
Definition: brokers/rprBroker/rprBroker/dllExport.h:22
EntityIdByHLANameMap myEntityIdMap
Definition: rprBroker/rprBroker/globalIdMapper.h:110
DtString PortalId
A typedef to make it easier to see what kind of ID this is.
Definition: rprBroker/rprBroker/globalIdMapper.h:25
std::map< DtString, DtEntityIdentifier > EntityIdByHLANameMap
a map from HLA ID to Entity ID
Definition: rprBroker/rprBroker/globalIdMapper.h:109

Document ID: Generated on Wed Mar 12 15:05:17 EDT 2025 from SVN revision 274272
Copyright © 2005-2025 MAK Technologies. All Rights Reserved (www.mak.com)