WebLVC 1.8 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
disBroker/disBroker/radioTransmitterTranslator.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2016 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vl/reflectedRadioTransmitterList.h>
14 #include <vl/radioTransmitterPublisher.h>
15 
16 class DtReflectedRadioTransmitter;
17 class DtRadioTransmitterRepository;
18 
19 #define RADIO_XMIT_TEMPLATE_ARGS \
20  DtPortalRadioTransmitterObject, DtPortalReflectedRadioTransmitterObject, \
21  DtReflectedRadioTransmitter, DtReflectedRadioTransmitterList, \
22  DtRadioTransmitterRepository, DtRadioTransmitterPublisher
23 
24 namespace MAKVrExchange
25 {
26 
27  class DtPortalRadioTransmitterObject;
28 
29  namespace DtDisBroker
30  {
31 
32  template <>
33  DT_DLL_DISBROKER DtEntityIdentifier
36  const DtString& identifier );
37 
38  template <>
39  DT_DLL_DISBROKER DtObjectPublisher*
42  const DtEntityIdentifier& name );
43 
44 
48  : public DtEmbeddedSystemTranslator<RADIO_XMIT_TEMPLATE_ARGS>
49  {
50  public:
51 
53  Dt_DEF_TRANSLATOR_NAME( "Radio Transmitter" );
54 
57 
60 
61  protected:
62 
65  virtual bool isDisPublishable( DtBrokerObject* brokerObj,
67 
70  virtual bool performDisGlobalIdMapping( const DtObjectPublisher* publisher,
72  DtGlobalIdMapper::ObjectType type /* = DtGlobalIdMapper::EntityType */,
73  int systemId /* = DtGlobalIdMapper::NoSystemId */,
74  int beamId /* = DtGlobalIdMapper::NoBeamId */ );
75 
78  virtual DtString portalObjectName( const DtReflectedRadioTransmitter* refObj ) const;
79 
82  virtual bool performPortalGlobalIdMapping(
84  const DtReflectedRadioTransmitter& refObj,
85  DtGlobalIdMapper::ObjectType type /* = DtGlobalIdMapper::EntityType */,
86  int systemId /* = DtGlobalIdMapper::NoSystemId */,
87  int beamId /* = DtGlobalIdMapper::NoBeamId */ );
88 
91  virtual void deleteDisPublisher( DtBrokerObject* brokerObject );
92 
94  virtual DtPortalRadioTransmitterObject* translate( DtPortalRadioTransmitterObject* destination,
95  const DtRadioTransmitterRepository& source, const DtReflectedRadioTransmitter& refObj );
96 
98  virtual DtRadioTransmitterRepository* translate( DtRadioTransmitterRepository* destination,
100 
101  };
102 
103  }
104 }
105 
ObjectType
Definition: disBroker/disBroker/globalIdMapper.h:65
Provides container to hold pointers to Protocol/Portal objects.
Definition: brokerObject.h:24
virtual DtObjectPublisher * instantiateDisPublisher(const T_PortalReflectedObject *refObj, const DtEntityIdentifier &name)
Instantiates the publisher for the given reflected object.
A simple template class to hold different types of State Repositories.
Definition: pObjectPublisher.h:68
Base class for all embedded system translators.
Definition: disBroker/disBroker/embeddedSystemTranslator.h:44
virtual DtEntityIdentifier mapIdentifier(const T_PortalReflectedObject *refObj, const DtString &identifier)
Maps the reflected object&#39;s global or entity identifier to a DIS id.
Provides Radio Transmitter object translation between DIS and the VR-Exchange Portal.
Definition: disBroker/disBroker/radioTransmitterTranslator.h:47
Base class for all broker objects.
Definition: broker.h:58
A template to create reflected object types for each type of object message.
Definition: pReflectedObject.h:58
#define Dt_DEF_TRANSLATOR_NAME(strname)
Definition: translator.h:16
#define DT_DLL_DISBROKER
Definition: brokers/disBroker/disBroker/dllExport.h:20
DtPortalReflectedObjectTemplate< DtPortalRadioTransmitterObject > DtPortalReflectedRadioTransmitterObject
A Radio Transmitter Object template instance.
Definition: pReflectedObjectTypes.h:123
Portal Radio Transmitter Object class.
Definition: pRadioTransmitterObject.h:19

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)