VR-Exchange 2.6 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rprBroker/rprBroker/globalIdMapper.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2017 VT MAK
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 }

Document ID: Generated on Wed Jan 30 18:15:18 EST 2019 from SVN revision 195534
Copyright © 2005-2019 VT MÄK. All Rights Reserved (www.mak.com)