VR-Link API Documentation for DIS
ddmFedAmb1516.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2009 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 #pragma once
6 
7 #if DtHLA
8 #if DtHLA_1516
9 #if !DtHLA_1516_EVOLVED
10 
11 #include <vl/vrlFedAmb1516.h>
12 
13 class DtDdmFederateAmbassador : public DtVrlFederateAmbassador
14 {
15 public:
16  struct DtRegionInfo
17  {
18  unsigned long lowerXBound;
19  unsigned long lowerYBound;
20  unsigned long upperXBound;
21  unsigned long upperYBound;
22  bool infoSet;
23  };
24 
25  DtDdmFederateAmbassador();
26 
27  virtual ~DtDdmFederateAmbassador() throw();
28 
29  virtual void discoverObjectInstance(
30  RTI::ObjectInstanceHandle theObject,
31  RTI::ObjectClassHandle theObjectClass,
32  std::wstring const & theObjectInstanceName)
33  throw (RTI::CouldNotDiscover,
34  RTI::ObjectClassNotKnown,
35  RTI::FederateInternalError);
36 
37  virtual void reflectAttributeValues(
38  RTI::ObjectInstanceHandle theObject,
39  RTI::AttributeHandleValueMap const & theAttributeValues,
40  RTI::VariableLengthData const & aTag,
41  RTI::OrderType sentOrder,
42  RTI::TransportationType theType,
43  RTI::RegionHandleSet const & theSentRegionHandleSet)
44  throw (RTI::ObjectInstanceNotKnown,
45  RTI::AttributeNotRecognized,
46  RTI::AttributeNotSubscribed,
47  RTI::FederateInternalError);
48 
49  virtual void removeObjectInstance(
50  RTI::ObjectInstanceHandle theObject,
51  RTI::VariableLengthData const & aTag,
52  RTI::OrderType sentOrder)
53  throw (RTI::ObjectInstanceNotKnown,
54  RTI::FederateInternalError);
55 
56  virtual void receiveInteraction(
57  RTI::InteractionClassHandle theInteraction,
58  RTI::ParameterHandleValueMap const & theParameterValues,
59  RTI::VariableLengthData const & aTag,
60  RTI::OrderType sentOrder,
61  RTI::TransportationType theType,
62  RTI::RegionHandleSet const & theSentRegionHandleSet)
63  throw (RTI::InteractionClassNotRecognized,
64  RTI::InteractionParameterNotRecognized,
65  RTI::InteractionClassNotSubscribed,
66  RTI::FederateInternalError);
67 
68 
69  static DtVrlFederateAmbassador* create();
70 
71  virtual void setXHandle(RTI::DimensionHandle handle);
72  virtual void setYHandle(RTI::DimensionHandle handle);
73 
74  virtual DtRegionInfo regionInfoForObject(RTI::ObjectInstanceHandle handle) const;
75  virtual DtRegionInfo lastInteractionRegion() const;
76 
77  virtual void clearLastInteractionRegion();
78 
79 protected:
80 
81 protected:
82  std::map<RTI::ObjectInstanceHandle, DtRegionInfo> myHandleToRegionMap;
83  DtRegionInfo myLastInteractionRegion;
84 
85  RTI::DimensionHandle myXHandle;
86  RTI::DimensionHandle myYHandle;
87 
88  DtRegionInfo myEmptyRegionInfo;
89 };
90 
91 #endif
92 #endif
93 #endif
94 
95 

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)