VR-Exchange 2.2 API Documentation
tenaBroker/libTenaBroker/iffTrans.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 "objectTrans.h"
13 
15 
16 class DtReflectedIff;
17 class DtReflectedIffList;
18 class DtIffStateRepository;
19 
20 namespace MAKVrExchange
21 {
22 
23  namespace DtTenaBroker
24  {
25 
29  class DT_DLL_TENABROKER DtIffObjectTranslator : public DtObjectTranslator
30  {
31  public:
32 
34  Dt_DEF_TRANSLATOR_NAME( "IFF" );
35 
36  //Doxygen comments inherited from parent class
37  DtIffObjectTranslator( DtTenaBroker* tenaBroker );
38 
39  //Doxygen comments inherited from parent class
40  virtual ~DtIffObjectTranslator();
41 
43  virtual void enableTranslator(bool enabled);
44 
45  virtual void tick();
46 
62  virtual DtPortalIffObject* translate( DtPortalIffObject* destination,
63  const DtIffStateRepository& source );
64 
81  virtual DtIffStateRepository* translate( DtIffStateRepository* destination,
82  const DtPortalIffObject& source );
83 
84  protected:
85 
86  static void tenaAdditionCallback( DtReflectedIff* object, void* userData );
87  static void tenaUpdateCallback( DtReflectedIff* object, void* userData );
88  static void tenaRemovalCallback( DtReflectedIff* object, void* userData );
89 
90  static bool tenaDiscoveryCriteria( DtReflectedObject* object, void* userData );
91  static bool portalDiscoveryCriteria( const DtPortalReflectedObject* reflectedObject,
92  void* object );
93 
94  static void portalAdditionCallback( const DtPortalReflectedIffObject& object,
95  void* userData );
96  static void portalUpdateCallback( const DtPortalReflectedIffObject& object,
97  void* userData );
98  static void portalRemovalCallback( const DtPortalReflectedIffObject& object,
99  void* userData );
100 
101  //Doxygen comments inherited from parent class
102  virtual void discoverTenaObject( DtReflectedIff* object );
103 
104  //Doxygen comments inherited from parent class
105  virtual void discoverPortalObject( const DtPortalReflectedIffObject& object );
106 
107  //Doxygen comments inherited from parent class
108  virtual void receiveTenaUpdate( DtReflectedIff* object);
109 
110  //Doxygen comments inherited from parent class
111  virtual void receivePortalUpdate( const DtPortalReflectedIffObject& object );
112 
113  //Doxygen comments inherited from parent class
114  virtual void createPortalPublisher( DtBrokerObject* brokerObject );
115 
116  //Doxygen comments inherited from parent class
117  virtual void createTenaPublisher( DtBrokerObject* brokerObject );
118 
119  //Doxygen comments inherited from parent class
120  virtual void deletePortalPublisher( DtBrokerObject* brokerObject );
121 
122  virtual void deleteTenaPublisher( DtBrokerObject* brokerObject );
123 
124  //Doxygen comments inherited from parent class
125  virtual bool isPortalPublishable( const DtBrokerObject* brokerObject ) const;
126 
127  //Doxygen comments inherited from parent class
128  virtual bool isTenaPublishable( const DtBrokerObject* brokerObject ) const;
129 
130  private:
131 
132  //Doxygen comments inherited from parent class
133  DtIffObjectTranslator( const DtIffObjectTranslator& original );
134 
135  //Doxygen comments inherited from parent class
136  DtIffObjectTranslator &operator=( const DtIffObjectTranslator& original );
137 
139  int operator==( const DtIffObjectTranslator& rightOperand );
140 
142  int operator!=( const DtIffObjectTranslator& rightOperand );
143 
144  protected:
145 
146  DtReflectedIffList* myTenaReflectedList;
148 
151 
152  };
153 
154  }
155 }

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)