VR-Link API Documentation for DIS
hRefActSonBm.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 #if DtHLA
13 
14 #include "hReflectedObj.h"
15 #include "actSonBeamSR.h"
16 
17 class DT_DLL_VL DtReflectedActiveSonarBeam;
18 
21 typedef void (*DtActiveSonarBeamCallbackFunction)(
22  DtReflectedActiveSonarBeam* obj, void* userData);
23 
27 class DT_DLL_VL DtReflectedActiveSonarBeam : public DtReflectedObject
28 {
29 public:
30 
32  typedef DtActiveSonarBeamRepository* (*DtStateRepCreator)();
33 
34 public:
35 
37  DtReflectedActiveSonarBeam(DtHlaObject* obj, DtExerciseConn* exConn);
38 
40  virtual ~DtReflectedActiveSonarBeam();
41 
43  virtual DtActiveSonarBeamRepository* activeSonarBeamRep() const;
44 
46  virtual DtActiveSonarBeamRepository* bsr() const;
47 
50  virtual void setBsr( DtActiveSonarBeamRepository* asr );
51 
54  virtual DtReflectedActiveSonarBeam* next() const;
55 
58  virtual DtReflectedActiveSonarBeam* prev() const;
59 
62  virtual DtReflectedActiveSonarBeam* wrapNext() const;
63 
66  virtual DtReflectedActiveSonarBeam* wrapPrev() const;
67 
70  virtual void addPostUpdateCallback(
71  DtActiveSonarBeamCallbackFunction cb, void* usr );
72 
75  virtual void removePostUpdateCallback(
76  DtActiveSonarBeamCallbackFunction cb, void* usr );
77 
78 public:
79 
81  static DtStateRepCreator setStateRepCreator( DtStateRepCreator creator );
82 
83 protected:
84 
86  DtReflectedActiveSonarBeam( const DtReflectedActiveSonarBeam& orig );
87 
89  DtReflectedActiveSonarBeam& operator = ( const DtReflectedActiveSonarBeam& orig );
90 
91 protected:
92 
94  static DtStateRepCreator theStateRepCreator;
95 
96  DtActiveSonarBeamRepository* myConstructedAsr;
97 
98 };
99 
100 inline DtActiveSonarBeamRepository* DtReflectedActiveSonarBeam::activeSonarBeamRep() const
101 {
102  return (DtActiveSonarBeamRepository*) myStateRep;
103 }
104 
105 inline DtActiveSonarBeamRepository* DtReflectedActiveSonarBeam::bsr() const
106 {
107  return (DtActiveSonarBeamRepository*) myStateRep;
108 }
109 
110 #endif

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)