WebLVC 1.7d API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rprBroker/rprBroker/embeddedSystemTranslator.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2016 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 #define HLA_TEMPLATE_LIST \
15  template \
16  < class T_PortalObject \
17  , class T_PortalReflectedObject \
18  , class T_HlaReflectedObject \
19  , class T_HlaReflectedObjectList \
20  , class T_HlaObjectStateRepository \
21  , class T_HlaObjectPublisher>
22 
23 #define HLA_TEMPLATE_ARGS \
24  T_PortalObject, T_PortalReflectedObject, \
25  T_HlaReflectedObject, T_HlaReflectedObjectList, \
26  T_HlaObjectStateRepository, T_HlaObjectPublisher
27 
28 class DtEmbeddedSystemRepository;
29 
30 namespace MAKVrExchange
31 {
32 
33  class DtPortalEmbeddedSystem;
34 
35  namespace DtRprBroker
36  {
37 
38  class DtRprBroker;
39 
44  class DtEmbeddedSystemTranslator : public DtRprObjectTranslator<HLA_TEMPLATE_ARGS>
45  {
46  public:
47 
50 
53 
54  public:
55 
58  const DtString& name, DtPortalMessageKind kind );
59 
62 
64  virtual void updatePortalBrokerObject( DtBrokerObject* brokerObj, const T_PortalObject& sr );
65 
67  virtual void receiveRprUpdate( T_HlaReflectedObject& refObj );
68 
70  virtual bool isPortalPublishable( const DtBrokerObject* brokerObj );
71 
74  const DtEmbeddedSystemRepository& source, const T_HlaReflectedObject& refObj );
75 
77  virtual DtEmbeddedSystemRepository* translate( DtEmbeddedSystemRepository* destination,
78  const DtPortalEmbeddedSystem& source, const T_PortalReflectedObject& refObj );
79 
80  };
81 
82  }
83 }
84 
85 
86 #define _embeddedSystemTranslator_INL_
87 #include <rprBroker/embeddedSystemTranslator.inl>
88 #undef _embeddedSystemTranslator_INL_
Provides container to hold pointers to Protocol/Portal objects.
Definition: brokerObject.h:24
DtEmbeddedSystemTranslator< HLA_TEMPLATE_ARGS > ParentClass
Typedef for the templated class type.
Definition: rprBroker/rprBroker/embeddedSystemTranslator.h:49
Base class for all RPR object translators.
Definition: rprTranslator.h:93
virtual bool isPortalPublishable(const DtBrokerObject *brokerObj)
A check to make sure RPR object is publishable to portal.
DtEmbeddedSystemTranslator(DtBroker *hlaBroker, const DtString &name, DtPortalMessageKind kind)
CTOR.
Base class for all broker objects.
Definition: broker.h:58
virtual DtPortalEmbeddedSystem * translate(DtPortalEmbeddedSystem *destination, const DtEmbeddedSystemRepository &source, const T_HlaReflectedObject &refObj)
Translates the given HLA object to a Portal object.
#define HLA_TEMPLATE_LIST
Definition: rprBroker/rprBroker/embeddedSystemTranslator.h:14
virtual void updatePortalBrokerObject(DtBrokerObject *brokerObj, const T_PortalObject &sr)
Updates the broker object with the latest information.
Contains the DtRprObjectTranslator and DtRprInteractionTranslator base classes.
Base class for all embedded system translators.
Definition: rprBroker/rprBroker/embeddedSystemTranslator.h:44
DtRprObjectTranslator< HLA_TEMPLATE_ARGS > Super
Typedef for super class.
Definition: rprBroker/rprBroker/embeddedSystemTranslator.h:52
DtPortalMessageKind
A List of message kinds distributed with the Portal.
Definition: pMessageKinds.h:23
Represents Embedded System Objects in a simulation.
Definition: pEmbeddedSystem.h:21
virtual void receiveRprUpdate(T_HlaReflectedObject &refObj)
Gets called before parent method to handle embedded system-specific tasks.

Document ID: Generated on Wed Jun 21 15:05:44 EDT 2023 from SVN revision 256253
Copyright © 2005-2023 MAK Technologies. All Rights Reserved (www.mak.com)