VR-Exchange 2.2 API Documentation
rprBroker/libRprBroker/aggTrans.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 "rprTrans.h"
13 #include <vl/reflAggList.h>
14 #include <vl/aggPub.h>
15 #include <map>
16 
17 class DtReflectedAggregate;
18 class DtAggregateStateRepository;
19 
20 #define AGGREGATE_TEMPLATE_ARGS \
21  DtPortalAggregate, DtPortalReflectedAggregate, \
22  DtReflectedAggregate, DtReflectedAggregateList, \
23  DtAggregateStateRepository, DtAggregatePublisher
24 
25 namespace MAKVrExchange
26 {
27 
28  class DtPortalAggregate;
29 
30  namespace DtRprBroker
31  {
32 
35  template <>
36  DT_DLL_RPRBROKER DtAggregatePublisher*
38  const DtPortalReflectedAggregate* refObj, const DtString& name );
39 
40 
43  class DT_DLL_RPRBROKER DtAggregateTranslator
44  : public DtRprObjectTranslator<AGGREGATE_TEMPLATE_ARGS>
45  {
46  public:
47 
49  Dt_DEF_TRANSLATOR_NAME( "Aggregate" );
50 
53 
55  virtual ~DtAggregateTranslator();
56 
72  virtual DtPortalAggregate* translate( DtPortalAggregate* destination,
73  const DtAggregateStateRepository& source,
74  const DtReflectedAggregate& refObj );
75 
92  virtual DtAggregateStateRepository* translate(
93  DtAggregateStateRepository* destination,
94  const DtPortalAggregate& source,
95  const DtPortalReflectedAggregate& refObj );
96 
97  protected:
98 
101  virtual void updateHlaBrokerObject( DtBrokerObject* brokerObj,
102  const DtAggregateStateRepository& sr );
103 
106  virtual void updatePortalBrokerObject( DtBrokerObject* brokerObj,
107  const DtPortalAggregate& sr );
108 
111  virtual void updateFilteredState( DtBrokerObject* brokerObj,
112  DtPortalAggregatePublisher* publisher, DtReflectedAggregate* refObj );
113 
116  virtual void createHlaPublisher( DtBrokerObject* brokerObject );
117 
121  virtual DtString hlaObjectName( const DtPortalReflectedAggregate* refObj );
122 
125  virtual void fillOutgoingIds( DtAggregatePublisher* publisher,
126  const DtString& objectName );
127 
131  virtual bool isDiscoverable( const DtBrokerObject* brokerObj,
132  const DtPortalReflectedAggregate* refObj ) const;
133 
138  virtual void syncHlaDeadReconedValues( DtBrokerObject* brokerObject );
139  virtual void syncPortalDeadReckonedValues( DtBrokerObject* brokerObject );
140 
141  };
142 
143  }
144 }

Document ID: Generated on Mon Apr 15 17:15:50 EDT 2013 from SVN revision 126154
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)