VR-Exchange 2.2 API Documentation
tenaBroker/libTenaBroker/designatorTrans.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 DtDesignatorRepository;
17 class DtReflectedDesignator;
18 class DtReflectedDesignatorList;
19 
20 namespace MAKVrExchange
21 {
22 
23  namespace DtTenaBroker
24  {
25 
29  class DT_DLL_TENABROKER DtDesignatorObjectTranslator : public DtObjectTranslator
30  {
31  public:
32 
34  Dt_DEF_TRANSLATOR_NAME( "Designator" );
35 
55 
58 
60  virtual void enableTranslator(bool enabled);
61 
67  virtual void tick();
68 
84  virtual DtPortalDesignatorObject* translate( DtPortalDesignatorObject* destination,
85  const DtDesignatorRepository& source );
86 
103  virtual DtDesignatorRepository* translate( DtDesignatorRepository* destination,
104  const DtPortalDesignatorObject& source );
105 
106  protected:
107 
123  static bool tenaDiscoveryCriteria( DtReflectedObject* object, void* userData );
124 
139  static void tenaAdditionCallback( DtReflectedDesignator* object, void* userData );
140 
152  static void tenaUpdateCallback( DtReflectedDesignator* object, void* userData );
153 
167  static void tenaRemovalCallback( DtReflectedDesignator* object, void* userData );
168 
184  static bool portalDiscoveryCriteria( const DtPortalReflectedObject* reflectedObject,
185  void* object );
186 
200  static void portalAdditionCallback( const DtPortalReflectedDesignatorObject& object,
201  void* userData );
202 
214  static void portalUpdateCallback( const DtPortalReflectedDesignatorObject& object,
215  void* userData );
216 
230  static void portalRemovalCallback( const DtPortalReflectedDesignatorObject& object,
231  void* userData );
232 
254  virtual void discoverTenaObject( DtReflectedDesignator* object );
255 
272  virtual void discoverPortalObject( const DtPortalReflectedDesignatorObject& object );
273 
297  virtual void receiveTenaUpdate( DtReflectedDesignator* object);
298 
319  virtual void receivePortalUpdate( const DtPortalReflectedDesignatorObject& object );
320 
338  virtual void createPortalPublisher( DtBrokerObject* brokerObject );
339 
362  virtual void createTenaPublisher( DtBrokerObject* brokerObject );
363 
364  //Destroy the DtPortalDesignatorObjectPublisher of the brokerObject.
376  virtual void deletePortalPublisher( DtBrokerObject* brokerObject );
377 
390  virtual void deleteTenaPublisher( DtBrokerObject* brokerObject );
391 
398  virtual bool isPortalPublishable( const DtBrokerObject* brokerObject ) const;
399 
406  virtual bool isTenaPublishable( const DtBrokerObject* brokerObject ) const;
407 
408  private:
409 
412 
415 
417  bool operator==( const DtDesignatorObjectTranslator& rightOperand ) const;
418 
420  bool operator!=( const DtDesignatorObjectTranslator& rightOperand ) const;
421 
422  protected:
423 
425  DtReflectedDesignatorList* myTenaReflectedList;
426 
429 
432 
435 
436  };
437 
438  }
439 }

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)