VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rangeItem.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
8 #include <vlpi/netStructs.h>
9 #include <vector>
10 
11 // class DtRangeItem:
12 //
13 // Item that will define a range object used in the system
14 
16 const int RangeItemUnknown = 0;
17 const int RangeItemBallisticGun = 1;
18 const int RangeItemIndirectFire = 2;
19 const int RangeItemMissileSystem = 3;
20 const int RangeItemRangeProperty = 4;
21 const int RangeItemSensorRange = 5;
23 
26 const int RangeRingVersion = 100;
27 
30 {
31 public:
32 
33  // default constructor
35 
36  // destructor
37  virtual ~DtRangeItem_V1();
38 
39  // copy constructor
40  DtRangeItem_V1(const DtRangeItem_V1& orig);
41 
42  // assignment operator
43  DtRangeItem_V1& operator=(const DtRangeItem_V1& orig);
44 
45  virtual const char* setFromNet(const char* buffer);
46  virtual char* setToNet(char* buffer) const;
47 
48  virtual int netRepSize() const;
49 
50  bool operator==(const DtRangeItem_V1& rhs) const
51  {
52  return ((myRange == rhs.myRange) &&
53  (myType == rhs.myType) &&
54  (myName == rhs.myName) &&
55  (myOffsetPosition[0] == rhs.myOffsetPosition[0]) &&
56  (myOffsetPosition[1] == rhs.myOffsetPosition[1]) &&
57  (myOffsetPosition[2] == rhs.myOffsetPosition[2]));
58  }
59 
60  DtNetFloat32 myRange;
61  DtNetInt32 myType;
62  DtNet64Vector myOffsetPosition;
64 };
65 
67 {
68 public:
69  virtual ~DtRangeItems_V1();
70 
71  virtual int netRepSize() const;
72  virtual char* setFromNet(const char* buffer);
73  virtual char* setToNet(char* buffer) const;
74 
75  typedef std::vector<DtRangeItem_V1> RangeItems;
76 
78 };
79 
81 {
82 public:
83 
84  // default constructor
85  DtRangeItem();
86 
87  // destructor
88  virtual ~DtRangeItem();
89 
90  // copy constructor
91  DtRangeItem(const DtRangeItem& orig);
92  DtRangeItem(const DtRangeItem_V1& orig);
93 
94  // assignment operator
95  DtRangeItem& operator=(const DtRangeItem& orig);
96  DtRangeItem& operator=(const DtRangeItem_V1& orig);
97 
98  virtual const char* setFromNet(const char* buffer);
99  virtual char* setToNet(char* buffer) const;
100 
101  virtual int netRepSize() const;
102 
103  bool operator==(const DtRangeItem& rhs) const
104  {
105  return ((myRange == rhs.myRange) &&
106  (myType == rhs.myType) &&
107  (myName == rhs.myName) &&
108  (myColor == rhs.myColor) &&
109  (myWedgeSizes == rhs.myWedgeSizes) &&
110  (myOffsetPosition[0] == rhs.myOffsetPosition[0]) &&
111  (myOffsetPosition[1] == rhs.myOffsetPosition[1]) &&
112  (myOffsetPosition[2] == rhs.myOffsetPosition[2]));
113  }
114 
115  DtNetFloat32 myRange;
116  DtNetInt32 myType;
117  DtNet64Vector myOffsetPosition;
119 
121  DtNetInt32 myColor;
122  std::vector<DtNetFloat32> myWedgeSizes;
123 };
124 
126 {
127 public:
128  virtual ~DtRangeItems();
129 
130  virtual int netRepSize() const;
131  virtual char* setFromNet(const char* buffer);
132  virtual char* setToNet(char* buffer) const;
133 
134  typedef std::vector<DtRangeItem> RangeItems;
135 
137 };

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)