VR-Exchange 2.5 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rprBroker/rprBroker/aggregateTranslator.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2015 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vl/aggregatePublisher.h>
14 #include <vl/reflectedAggregateList.h>
15 
16 class DtReflectedAggregate;
17 class DtAggregateStateRepository;
18 
19 #define AGGREGATE_TEMPLATE_ARGS \
20  DtPortalAggregate, DtPortalReflectedAggregate, \
21  DtReflectedAggregate, DtReflectedAggregateList, \
22  DtAggregateStateRepository, DtAggregatePublisher
23 
24 namespace MAKVrExchange
25 {
26 
27  class DtPortalAggregate;
28 
29  namespace DtRprBroker
30  {
31 
34  template <>
35  DT_DLL_RPRBROKER DtAggregatePublisher*
37  const DtPortalReflectedAggregate* refObj, const DtString& name );
38 
39 
43  : public DtRprObjectTranslator<AGGREGATE_TEMPLATE_ARGS>
44  {
45  public:
46 
48  Dt_DEF_TRANSLATOR_NAME( "Aggregate" );
49 
52 
54  virtual ~DtAggregateTranslator();
55 
56  protected:
57 
60  virtual bool isRprPublishable( DtBrokerObject* brokerObj,
61  const DtPortalReflectedAggregate* refObj );
62 
65  virtual void createRprPublisher( DtBrokerObject* brokerObj );
66 
68  virtual DtString rprObjectName( const DtPortalReflectedAggregate* refObj ) const;
69 
72  virtual void fillOutgoingIds( DtAggregatePublisher* publisher,
73  const DtString& objectName );
74 
76  virtual void updateRprBrokerObject( DtBrokerObject* brokerObj,
77  const DtAggregateStateRepository& sr );
78 
80  virtual void updateFilteredState( DtBrokerObject* brokerObj,
81  DtPortalAggregatePublisher* publisher, DtReflectedAggregate* refObj );
82 
84  virtual void updatePortalBrokerObject( DtBrokerObject* brokerObj,
85  const DtPortalAggregate& sr );
86 
88  virtual DtPortalAggregate* translate( DtPortalAggregate* destination,
89  const DtAggregateStateRepository& source,
90  const DtReflectedAggregate& refObj );
91 
93  virtual DtAggregateStateRepository* translate(
94  DtAggregateStateRepository* destination,
95  const DtPortalAggregate& source,
96  const DtPortalReflectedAggregate& refObj );
97 
99  virtual void syncPortalDeadReckonedValues( DtPortalAggregate& destination,
100  const DtAggregateStateRepository& source );
101 
103  virtual void syncRprDeadReckonedValues( DtAggregateStateRepository& destination,
104  const DtPortalAggregate& source );
105 
106  };
107 
108  }
109 }

Document ID: Generated on Wed Dec 21 15:05:11 EST 2016 from SVN revision 171891
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)