VR-Exchange 2.5 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedEmitterSystem.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2014 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #if DtTENA
11 
12 #pragma once
13 
14 #include <vlTena/reflectedObject.h>
15 #include <vl/globalObjectDesignator.h>
16 
17 class DtEmitterSystemRepository;
18 
19 namespace MAKVrExchange
20 {
21 
22  namespace DtTenaBroker
23  {
24 
25  class DtExerciseConn;
26  class DtReflectedEmitterSystem;
27 
29  typedef void (*DtEmitterSystemCallbackFunction)(
30  DtReflectedEmitterSystem* obj, void* userData);
31 
35  class DT_DLL_VLTENA DtReflectedEmitterSystem : public DtReflectedObject
36  {
37  public:
38 
41  typedef DtEmitterSystemRepository* (*DtStateRepCreator)();
42 
43  public:
44 
46  DtReflectedEmitterSystem(DtExerciseConn* conn);
47 
49  virtual ~DtReflectedEmitterSystem();
50 
52  virtual DtReflectedEmitterSystem* next() const;
53 
56  virtual DtEmitterSystemRepository* emitterSysRep() const;
57 
59  virtual DtEmitterSystemRepository* esr() const;
60 
62  virtual DtReflectedEmitterSystem* prev() const;
63 
66  virtual DtReflectedEmitterSystem* wrapNext() const;
67 
70  virtual DtReflectedEmitterSystem* wrapPrev() const;
71 
73  void removePostUpdateCallback( DtEmitterSystemCallbackFunction , void* );
74 
76  void addPostUpdateCallback( DtEmitterSystemCallbackFunction , void* );
77 
79  virtual const DtObjectId& id() const;
80 
82  virtual const DtGlobalObjectDesignator& globalId() const;
83 
85  virtual void printDataToStream(std::ostream& str) const;
86 
88  static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
89 
90  private:
91 
93  DtReflectedEmitterSystem(const DtReflectedEmitterSystem& orig);
94 
96  DtReflectedEmitterSystem& operator=(const DtReflectedEmitterSystem& orig);
97 
98  protected:
99 
100  static DtStateRepCreator theStateRepCreator;
101 
102  };
103 
104  inline DtEmitterSystemRepository* DtReflectedEmitterSystem::emitterSysRep() const
105  {
106  return (DtEmitterSystemRepository*) myStateRep;
107  }
108 
109  inline DtEmitterSystemRepository* DtReflectedEmitterSystem::esr() const
110  {
111  return (DtEmitterSystemRepository*) myStateRep;
112  }
113 
114  }
115 }
116 
117 #endif // DtTENA

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)