VR-Exchange 2.1 API Documentation
hlaBroker/iffTrans.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ******************************************************************************/
4 #pragma once
5 
6 
7 
8 
9 #include "objectTrans.h" //DtObjectTranslator
10 
12 
13 class DtReflectedIff;
14 class DtReflectedIffList;
15 class DtIffStateRepository;
16 
17 namespace MAKVrExchange { namespace DtHlaBroker {
18 
23  {
24  public:
25 
26  //Doxygen comments inherited from parent class
27  DtIffObjectTranslator( DtHlaBroker *hlaBroker );
28 
29  //Doxygen comments inherited from parent class
30  virtual ~DtIffObjectTranslator();
31 
35  virtual const char* virtualTranslatorName() const;
36 
42  static const char* translatorName();
43 
45  virtual void enableTranslator(bool enabled);
46 
47  virtual void tick();
48 
64  virtual DtPortalIffObject* translate( DtPortalIffObject* destination,
65  const DtIffStateRepository& source );
66 
83  virtual DtIffStateRepository* translate( DtIffStateRepository* destination,
84  const DtPortalIffObject& source );
85 
86  private:
87 
89  static const char thisTranslatorName[];
90 
91  //Doxygen comments inherited from parent class
93 
94  //Doxygen comments inherited from parent class
95  DtIffObjectTranslator &operator=( const DtIffObjectTranslator &original );
96 
98  int operator==( const DtIffObjectTranslator &rightOperand );
99 
101  int operator!=( const DtIffObjectTranslator &rightOperand );
102 
103  protected:
104 
105  static void hlaAdditionCallback( DtReflectedIff *object, void *userData );
106  static void hlaUpdateCallback( DtReflectedIff *object, void *userData );
107  static void hlaRemovalCallback( DtReflectedIff *object, void *userData );
108 
109  static bool hlaDiscoveryCriteria( DtReflectedObject* object, void *userData );
110  static bool portalDiscoveryCriteria( const DtPortalReflectedObject *reflectedObject, void *object );
111 
112  static void portalAdditionCallback(
113  const DtPortalReflectedIffObject& object, void *userData );
114  static void portalUpdateCallback(
115  const DtPortalReflectedIffObject& object, void *userData );
116  static void portalRemovalCallback(
117  const DtPortalReflectedIffObject& object, void *userData );
118 
119  //Doxygen comments inherited from parent class
120  virtual void discoverHlaObject( DtReflectedIff *object );
121 
122  //Doxygen comments inherited from parent class
123  virtual void discoverPortalObject( const DtPortalReflectedIffObject &object );
124 
125  //Doxygen comments inherited from parent class
126  virtual void receiveHlaUpdate( DtReflectedObject *object);
127 
128  //Doxygen comments inherited from parent class
129  virtual void receivePortalUpdate( const DtPortalReflectedObject &object );
130 
131  //Doxygen comments inherited from parent class
132  virtual void createPortalPublisher( DtBrokerObject* brokerObject );
133 
134  //Doxygen comments inherited from parent class
135  virtual void createHlaPublisher( DtBrokerObject* brokerObject );
136 
137  //Doxygen comments inherited from parent class
138  virtual void deletePortalPublisher( DtBrokerObject* brokerObject );
139 
140  virtual void deleteHlaPublisher( DtBrokerObject* brokerObject );
141 
142  //Doxygen comments inherited from parent class
143  virtual bool isPortalPublishable( const DtBrokerObject* brokerObject ) const;
144 
145  //Doxygen comments inherited from parent class
146  virtual bool isHlaPublishable( const DtBrokerObject* brokerObject ) const;
147 
148  DtReflectedIffList *myHlaReflectedList;
150 
153 
154  }; //end class DtIffObjectTranslator
155 
157  {
158  return thisTranslatorName;
159  }
160 
162  {
163  return translatorName();
164  }
165 
166 }}
167 
168 

Document ID: Generated on Tue Aug 7 22:07:13 EDT 2012 from SVN revision 117874
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)