VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTerrainOperationRecord.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 
10 
11 #pragma once
12 
13 #include <makArchives/makArchives.h>
14 
15 namespace makArchives
16 {
20  {
21 
22  public:
23 
24  enum OperationType { NoOp, Add };
25  enum InputType { NoInput, Patch, FeatureLayer, OceanLayer, Generic };
30  VisualizationAndSimulation
31  };
32 
35 
38 
40  DtTerrainOperationRecord& operator=(const DtTerrainOperationRecord& orig);
41 
44 
46  bool operator==(const DtTerrainOperationRecord& record) const;
47 
49  void setOperationType(OperationType opType);
50 
52  OperationType operationType() const;
53 
55  void setInputType(InputType inType);
56 
58  InputType inputType() const;
59 
61  void setTargetApplication(TargetApplication targetApplication);
62 
64  TargetApplication targetApplication() const;
65 
67  void setIndex(int index);
68 
70  int index() const;
71 
72  protected:
73 
74  void updateInternalEnumerationsBasedOnStrings();
75  void updateInternalStringsBasedOnEnumerations();
76 
77  friend class boost::serialization::access;
78 
82  template<class Archive>
83  void serialize(Archive & ar, const unsigned int version)
84  {
85  if (version < 2)
86  {
87  ar & BOOST_SERIALIZATION_NVP(myOperationType);
88  ar & BOOST_SERIALIZATION_NVP(myInputType);
89  if (version > 0)
90  {
91  ar & BOOST_SERIALIZATION_NVP(myTargetApplication);
92  }
93  updateInternalStringsBasedOnEnumerations();
94  }
95  else
96  {
97  ar & BOOST_SERIALIZATION_NVP(myOperationTypeString);
98  ar & BOOST_SERIALIZATION_NVP(myInputTypeString);
99  ar & BOOST_SERIALIZATION_NVP(myTargetApplicationString);
100  updateInternalEnumerationsBasedOnStrings();
101  }
102  ar & BOOST_SERIALIZATION_NVP(myIndex);
103  }
104 
105 
106  protected:
107 
111 
113  std::string myInputTypeString;
115  int myIndex;
116 
117 
118  };
119 }
120 
122 
123 
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
Definition: DtTerrainOperationRecord.h:29
Definition: DtTerrainOperationRecord.h:28
DT_DLL_terrainCS bool operator==(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
Contains DLL export macros.
std::string myOperationTypeString
Definition: DtTerrainOperationRecord.h:112
TargetApplication myTargetApplication
Definition: DtTerrainOperationRecord.h:110
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: DtTerrainOperationRecord.h:83
A DtTerrainOperationRecord contains information about a single terrain operation. ...
Definition: DtTerrainOperationRecord.h:19
int myIndex
Definition: DtTerrainOperationRecord.h:115
InputType
Definition: DtTerrainOperationRecord.h:25
std::string myTargetApplicationString
Definition: DtTerrainOperationRecord.h:114
Definition: DtTerrainOperationRecord.h:27
std::string myInputTypeString
Definition: DtTerrainOperationRecord.h:113
TargetApplication
Definition: DtTerrainOperationRecord.h:26
OperationType
Definition: DtTerrainOperationRecord.h:24
#define DT_DLL_MAKARCHIVES
Definition: makArchives.h:31
Definition: DtTerrainOperationRecord.h:25
InputType myInputType
Definition: DtTerrainOperationRecord.h:109
OperationType myOperationType
Definition: DtTerrainOperationRecord.h:108

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)