VR-Exchange 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ddsBroker/ddsBroker/entityIdMapper.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2013 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <ddsBroker/dllExport.h>
13 #include <vlutil/vlMachineTypes.h>
14 #include <vlutil/vlFilename.h>
15 #include <map>
16 
17 class DtString;
18 class DtHashlist;
19 class DtEntityIdentifier;
20 
21 namespace MAKVrExchange
22 {
23 
24  namespace DtDdsBroker
25  {
26 
35  {
36  public:
37 
39 
40  virtual ~DtEntityIdMapper();
41 
46  virtual bool add(const DtEntityIdentifier &portalId,
47  const DtEntityIdentifier &ddsId);
48 
51  virtual void removePortalId(const DtEntityIdentifier &portalId);
52  virtual void removeDdsId(const DtEntityIdentifier &ddsId);
53 
56  virtual void remove(const DtEntityIdentifier &portalId,
57  const DtEntityIdentifier &ddsId);
58 
62  virtual const DtEntityIdentifier *convertDdsEidToPortalEid(
63  const DtEntityIdentifier &ddsId);
64  virtual const DtEntityIdentifier *convertPortalEidToDdsEid(
65  const DtEntityIdentifier &portalId);
66 
67 
68  virtual DtEntityIdentifier getNextDdsId();
69  virtual DtEntityIdentifier getNextPortalId();
70 
73  virtual DtEntityIdentifier getPersistentId(const DtString& name);
74 
76  virtual void setPersistentId(const DtString& name, const DtEntityIdentifier& id);
77 
78  virtual void setDebug(bool debugOn);
79  virtual bool debug() const;
80 
81  virtual bool portalHasMapping(const DtEntityIdentifier& portalId) const;
82  virtual bool ddsHasMapping(const DtEntityIdentifier& ddsId) const;
83 
84  //Persistent Functions
85  virtual void loadPersistentNumMappingFile();
86  virtual void savePersistentNumMappingFile();
87 
88  protected:
89 
91  virtual bool publishingPortal(const DtEntityIdentifier &portalId) const;
92  virtual bool publishingDds(const DtEntityIdentifier &ddsId) const;
93 
94  private:
95 
96  DtEntityIdMapper( const DtEntityIdMapper& orig );
97 
98  DtEntityIdMapper& operator = ( const DtEntityIdMapper& orig );
99 
100  protected:
101 
103  int myAppNum;
106 
107  typedef std::map<DtEntityIdentifier, DtEntityIdentifier*> DtEntityIdMap;
108 
111 
114 
115  const DtEntityIdentifier *myEmptyPortalId;
116  const DtEntityIdentifier *myEmptyDdsId;
117 
118  //Used for Persisting entity Ids.
119  std::map<DtString,DtEntityIdentifier> myPersistNameToEntityNum;
120 
121  };
122 
123 
124  inline void DtEntityIdMapper::setDebug(bool debugOn)
125  {
126  myDebugOutputOn = debugOn;
127  }
128 
129  inline bool DtEntityIdMapper::debug() const
130  {
131  return myDebugOutputOn;
132  }
133 
134  }
135 }
int mySiteNum
Definition: ddsBroker/ddsBroker/entityIdMapper.h:104
int myAppNum
Definition: ddsBroker/ddsBroker/entityIdMapper.h:103
DtEntityIdMap myDdsIdHashList
a List of DDS GlobalId&#39;s hashed by Portal Id&#39;s
Definition: ddsBroker/ddsBroker/entityIdMapper.h:113
std::map< DtString, DtEntityIdentifier > myPersistNameToEntityNum
Definition: ddsBroker/ddsBroker/entityIdMapper.h:119
const DtEntityIdentifier * myEmptyDdsId
Definition: ddsBroker/ddsBroker/entityIdMapper.h:116
std::map< DtEntityIdentifier, DtEntityIdentifier * > DtEntityIdMap
Definition: ddsBroker/ddsBroker/entityIdMapper.h:107
DtEntityIdMapper is used to map the portal entityID attribute to a DDS entity.
Definition: ddsBroker/ddsBroker/entityIdMapper.h:34
DtEntityIdMap myPortalIdHashList
a list of Portal GlobalId&#39;s hashed by DDS ID&#39;s
Definition: ddsBroker/ddsBroker/entityIdMapper.h:110
virtual void setDebug(bool debugOn)
Definition: ddsBroker/ddsBroker/entityIdMapper.h:124
const DtEntityIdentifier * myEmptyPortalId
Definition: ddsBroker/ddsBroker/entityIdMapper.h:115
int myNextEnt
Definition: ddsBroker/ddsBroker/entityIdMapper.h:105
virtual bool debug() const
Definition: ddsBroker/ddsBroker/entityIdMapper.h:129
bool myDebugOutputOn
Definition: ddsBroker/ddsBroker/entityIdMapper.h:102
#define DT_DLL_DDSBROKER
Definition: brokers/ddsBroker/ddsBroker/dllExport.h:20

Document ID: Generated on Mon Apr 19 15:55:22 EDT 2021 from SVN revision 227909
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)