![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 #pragma once 00006 00011 00012 00013 00014 #include <vlpi/NetStructs.h> 00015 #include "pduHeader.h" 00016 00019 00020 struct DtNetEnvironmentalProcessPdu 00021 { 00022 DtNetPduHeader myHeader; 00023 DtNetEntityIdentifier myEnvironmentalProcessID; 00024 DtNetEntityType myEnvironmentType; 00025 DtNetU8 myModelType; 00026 DtNetU8 myEnvironmentalStatus; 00027 DtNetU16 myNumberOfEnvironmentalRecords; 00028 DtNetU16 mySequenceNumber; 00029 }; 00030 00034 struct DtNetEnvironmentalRecord 00035 { 00037 DtNetU32 myType; 00039 DtNetU16 myLength; 00041 DtNetU8 myIndex; 00043 DtNetU8 padding; 00044 }; 00045 00047 struct DtNetEnvironmentalRecord_RPR_20 00048 { 00049 DtNetU8 myIndex; 00050 DtNetU8 myPadding[15]; 00051 DtNetU32 myType; 00052 DtNetU8 myPadding1[4]; 00053 }; 00054 00057 struct DtNetEnvironmentalRecord_RPR_20017 00058 { 00059 DtNetU8 myIndex; 00060 DtNetU32 myType; 00061 DtNetU16 myLength; 00062 }; 00063 00066 struct DtNetEnvironmentalRecord_RPR_20017_Rev4 00067 { 00068 DtNetU32 myIndex; 00069 DtNetU8 myPadding[4]; 00070 DtNetU32 myType; 00071 DtNetU32 myLength; 00072 }; 00073 00075 struct DtNetEnvironmentalPointRecord 00076 { 00077 DtNetEnvironmentalRecord myHeader; 00078 DtNet64Vector myLocation; 00079 }; 00080 00081 struct DtNetEnvironmentalPointRecord_RPR_20 00082 { 00083 DtNetEnvironmentalRecord_RPR_20 myHeader; 00084 DtNet64Vector myLocation; 00085 }; 00086 00088 struct DtNetEnvironmentalDRPointRecord 00089 { 00090 DtNetEnvironmentalRecord myHeader; 00091 DtNet64Vector myLocation; 00092 DtNet32Vector myVelocity; 00093 DtNetU32 padding; 00094 }; 00095 00096 struct DtNetEnvironmentalDRPointRecord_RPR_20 00097 { 00098 DtNetEnvironmentalRecord_RPR_20 myHeader; 00099 DtNet64Vector myLocation; 00100 DtNet32Vector myVelocity; 00101 DtNetU32 padding; 00102 }; 00103 00104 00105 00107 struct DtNetEnvironmentalLineRecord 00108 { 00109 DtNetEnvironmentalRecord myHeader; 00110 DtNet64Vector myStartLocation; 00111 DtNet64Vector myEndLocation; 00112 }; 00113 00114 struct DtNetEnvironmentalLineRecord_RPR_20 00115 { 00116 DtNetEnvironmentalRecord_RPR_20 myHeader; 00117 DtNet64Vector myStartLocation; 00118 DtNet64Vector myEndLocation; 00119 }; 00120 00121 00122 00124 struct DtNetEnvironmentalDRLineRecord 00125 { 00126 DtNetEnvironmentalRecord myHeader; 00127 DtNet64Vector myStartLocation; 00128 DtNet64Vector myEndLocation; 00129 DtNet32Vector myStartVelocity; 00130 DtNet32Vector myEndVelocity; 00131 }; 00132 00133 struct DtNetEnvironmentalDRLineRecord_RPR_20 00134 { 00135 DtNetEnvironmentalRecord_RPR_20 myHeader; 00136 DtNet64Vector myStartLocation; 00137 DtNet64Vector myEndLocation; 00138 DtNet32Vector myStartVelocity; 00139 DtNet32Vector myEndVelocity; 00140 }; 00141 00142 00144 struct DtNetEnvironmentalSphereRecord 00145 { 00146 DtNetEnvironmentalRecord myHeader; 00147 DtNet64Vector myCentroid; 00148 DtNetFloat32 myRadius; 00149 DtNetU32 padding; 00150 }; 00151 00152 struct DtNetEnvironmentalSphereRecord_RPR_20 00153 { 00154 DtNetEnvironmentalRecord_RPR_20 myHeader; 00155 DtNet64Vector myCentroid; 00156 DtNetFloat32 myRadius; 00157 DtNetU32 padding; 00158 }; 00159 00160 00162 struct DtNetEnvironmentalDRSphereRecord 00163 { 00164 DtNetEnvironmentalRecord myHeader; 00165 DtNet64Vector myCentroid; 00166 DtNetFloat32 myRadius; 00167 DtNetFloat32 myRadialSpeed; 00168 DtNet32Vector myVelocity; 00169 DtNet32Vector myAngularVelocity; 00170 }; 00171 00172 struct DtNetEnvironmentalDRSphereRecord_RPR_20 00173 { 00174 DtNetEnvironmentalRecord_RPR_20 myHeader; 00175 DtNet64Vector myCentroid; 00176 DtNetFloat32 myRadius; 00177 DtNetFloat32 myRadialSpeed; 00178 DtNet32Vector myVelocity; 00179 DtNet32Vector myAngularVelocity; 00180 }; 00181 00182 00184 struct DtNetEnvironmentalEllipsoidRecord 00185 { 00186 DtNetEnvironmentalRecord myHeader; 00187 DtNet64Vector myCentroid; 00188 DtNet32Vector mySigma; 00189 DtNetEulerAngles myOrientation; 00190 }; 00191 00192 struct DtNetEnvironmentalEllipsoidRecord_RPR_20 00193 { 00194 DtNetEnvironmentalRecord_RPR_20 myHeader; 00195 DtNet64Vector myCentroid; 00196 DtNet32Vector mySigma; 00197 DtNetEulerAngles myOrientation; 00198 }; 00199 00200 00201 00203 struct DtNetEnvironmentalDREllipsoidRecord 00204 { 00205 DtNetEnvironmentalRecord myHeader; 00206 DtNet64Vector myCentroid; 00207 DtNet32Vector mySigma; 00208 DtNet32Vector mySigmaVelocity; 00209 DtNetEulerAngles myOrientation; 00210 DtNet32Vector myVelocity; 00211 DtNet32Vector myAngularVelocity; 00212 DtNetU32 padding; 00213 }; 00214 00215 struct DtNetEnvironmentalDREllipsoidRecord_RPR_20 00216 { 00217 DtNetEnvironmentalRecord_RPR_20 myHeader; 00218 DtNet64Vector myCentroid; 00219 DtNet32Vector mySigma; 00220 DtNet32Vector mySigmaVelocity; 00221 DtNetEulerAngles myOrientation; 00222 DtNet32Vector myVelocity; 00223 DtNet32Vector myAngularVelocity; 00224 DtNetU32 padding; 00225 }; 00226 00227 00229 struct DtNetEnvironmentalConeRecord 00230 { 00231 DtNetEnvironmentalRecord myHeader; 00232 DtNet64Vector myLocation; 00233 DtNetEulerAngles myOrientation; 00234 DtNetFloat32 myHeight; 00235 DtNetFloat32 myPeakAngle; 00236 DtNetU32 padding; 00237 }; 00238 00239 struct DtNetEnvironmentalConeRecord_RPR_20 00240 { 00241 DtNetEnvironmentalRecord_RPR_20 myHeader; 00242 DtNet64Vector myLocation; 00243 DtNetEulerAngles myOrientation; 00244 DtNetFloat32 myHeight; 00245 DtNetFloat32 myPeakAngle; 00246 DtNetU32 padding; 00247 }; 00248 00249 00251 struct DtNetEnvironmentalDRConeRecord 00252 { 00253 DtNetEnvironmentalRecord myHeader; 00254 DtNet64Vector myLocation; 00255 DtNetEulerAngles myOrientation; 00256 DtNet32Vector myVelocity; 00257 DtNet32Vector myAngularVelocity; 00258 DtNetFloat32 myHeight; 00259 DtNetFloat32 myHeightSpeed; 00260 DtNetFloat32 myPeakAngle; 00261 DtNetFloat32 myPeakAngleSpeed; 00262 DtNetU32 padding; 00263 00264 }; 00265 00266 struct DtNetEnvironmentalDRConeRecord_RPR_20 00267 { 00268 DtNetEnvironmentalRecord_RPR_20 myHeader; 00269 DtNet64Vector myLocation; 00270 DtNetEulerAngles myOrientation; 00271 DtNet32Vector myVelocity; 00272 DtNet32Vector myAngularVelocity; 00273 DtNetFloat32 myHeight; 00274 DtNetFloat32 myHeightSpeed; 00275 DtNetFloat32 myPeakAngle; 00276 DtNetFloat32 myPeakAngleSpeed; 00277 DtNetU32 padding; 00278 00279 }; 00280 00281 00282 00284 struct DtNetEnvironmentalRectangularVolumeRecord 00285 { 00286 DtNetEnvironmentalRecord myHeader; 00287 DtNet64Vector myCornerLocation; 00288 DtNet32Vector myExtent; 00289 DtNetEulerAngles myOrientation; 00290 }; 00291 00292 struct DtNetEnvironmentalRectangularVolumeRecord_RPR_20 00293 { 00294 DtNetEnvironmentalRecord_RPR_20 myHeader; 00295 DtNet64Vector myCornerLocation; 00296 DtNet32Vector myExtent; 00297 DtNetEulerAngles myOrientation; 00298 }; 00299 00301 struct DtNetEnvironmentalDRRectangularVolumeRecord 00302 { 00303 DtNetEnvironmentalRecord myHeader; 00304 DtNet64Vector myCornerLocation; 00305 DtNet32Vector myExtent; 00306 DtNet32Vector myExtentVelocity; 00307 DtNetEulerAngles myOrientation; 00308 DtNet32Vector myVelocity; 00309 DtNet32Vector myAngularVelocity; 00310 DtNetU32 padding; 00311 }; 00312 00313 struct DtNetEnvironmentalDRRectangularVolumeRecord_RPR_20 00314 { 00315 DtNetEnvironmentalRecord_RPR_20 myHeader; 00316 DtNet64Vector myCornerLocation; 00317 DtNet32Vector myExtent; 00318 DtNet32Vector myExtentVelocity; 00319 DtNetEulerAngles myOrientation; 00320 DtNet32Vector myVelocity; 00321 DtNet32Vector myAngularVelocity; 00322 DtNetU32 padding; 00323 }; 00324 00325 00327 struct DtNetEnvironmentalGaussianPlumeRecord 00328 { 00329 DtNetEnvironmentalRecord myHeader; 00330 DtNet64Vector mySourceLocation; 00331 DtNetEulerAngles myOrientation; 00332 DtNet32Vector myExtent; 00333 DtNet32Vector myExtentVelocity; 00334 DtNetFloat32 myLeadingEdgeHeight; 00335 DtNet32Vector myLeadingEdgeVelocity; 00336 DtNetU32 padding; 00337 }; 00338 00339 struct DtNetEnvironmentalGaussianPlumeRecord_RPR_20 00340 { 00341 DtNetEnvironmentalRecord_RPR_20 myHeader; 00342 DtNet64Vector mySourceLocation; 00343 DtNetEulerAngles myOrientation; 00344 DtNet32Vector myExtent; 00345 DtNet32Vector myExtentVelocity; 00346 DtNetFloat32 myLeadingEdgeHeight; 00347 DtNet32Vector myLeadingEdgeDtNetEnvironmentalGaussianPlumeRecord_RPR_20Velocity; 00348 DtNetU32 padding; 00349 }; 00350 00351 00353 struct DtNetEnvironmentalGaussianPuffRecord 00354 { 00355 DtNetEnvironmentalRecord myHeader; 00356 DtNet64Vector myPuffLocation; 00357 DtNet64Vector myOriginationLocation; 00358 DtNet32Vector mySigma; 00359 DtNet32Vector mySigmaVelocity; 00360 DtNetEulerAngles myOrientation; 00361 DtNet32Vector myVelocity; 00362 DtNet32Vector myAngularVelocity; 00363 DtNetFloat32 myCentroidHeight; 00364 }; 00365 00366 struct DtNetEnvironmentalGaussianPuffRecord_RPR_20 00367 { 00368 DtNetEnvironmentalRecord_RPR_20 myHeader; 00369 DtNet64Vector myPuffLocation; 00370 DtNet64Vector myOriginationLocation; 00371 DtNet32Vector mySigma; 00372 DtNet32Vector mySigmaVelocity; 00373 DtNetEulerAngles myOrientation; 00374 DtNet32Vector myVelocity; 00375 DtNet32Vector myAngularVelocity; 00376 DtNetFloat32 myCentroidHeight; 00377 }; 00378 00379 00381 struct DtNetUniformGeometryRecord 00382 { 00383 DtNetEnvironmentalRecord myHeader; 00384 DtNetU8 myField1; 00385 DtNetU8 padding; 00386 DtNetU16 padding2; 00387 }; 00388 00389 struct DtNetUniformGeometryRecord_RPR_20 00390 { 00391 DtNetEnvironmentalRecord_RPR_20 myHeader; 00392 DtNetU8 myField1; 00393 DtNetU8 padding; 00394 DtNetU16 padding2; 00395 }; 00396 00397 00399 struct DtNetCombicStateRecord 00400 { 00401 DtNetEnvironmentalRecord myHeader; 00402 DtNetU32 myTimeSinceCreation; 00403 DtNetEntityType myMunitionSource; 00404 DtNetInt32 myNumberOfSources; 00405 DtNetU16 myGeometryIndex; 00406 DtNetU16 padding; 00407 00408 DtNetU32 mySourceType; 00409 DtNetFloat32 myBarrageRate; 00410 DtNetFloat32 myBarrageDuration; 00411 DtNetFloat32 myBarrageCrosswindLength; 00412 DtNetFloat32 myBarrageDownwindLength; 00413 DtNet32Vector myDetonationVelocity; 00414 DtNetU32 padding2; 00415 00416 }; 00417 00418 struct DtNetCombicStateRecord_RPR_20 00419 { 00420 DtNetEnvironmentalRecord_RPR_20 myHeader; 00421 DtNetU32 myTimeSinceCreation; 00422 DtNetEntityType myMunitionSource; 00423 DtNetInt32 myNumberOfSources; 00424 DtNetU16 myGeometryIndex; 00425 DtNetU16 padding; 00426 00427 DtNetU32 mySourceType; 00428 DtNetFloat32 myBarrageRate; 00429 DtNetFloat32 myBarrageDuration; 00430 DtNetFloat32 myBarrageCrosswindLength; 00431 DtNetFloat32 myBarrageDownwindLength; 00432 DtNet32Vector myDetonationVelocity; 00433 DtNetU32 padding2; 00434 00435 }; 00436 00437 00438 00440 struct DtNetFlareStateRecord 00441 { 00442 DtNetEnvironmentalRecord myHeader; 00443 DtNetU32 myTimeSinceCreation; 00444 DtNetEntityType mySource; 00445 DtNetInt32 myNumberIntensity; 00446 DtNetInt32 myNumberOfSources; 00447 DtNetU16 myGeometryIndex; 00448 DtNetU16 padding; 00449 }; 00450 00451 struct DtNetFlareStateRecord_RPR_20 00452 { 00453 DtNetEnvironmentalRecord_RPR_20 myHeader; 00454 DtNetU32 myTimeSinceCreation; 00455 DtNetEntityType mySource; 00456 DtNetInt32 myNumberIntensity; 00457 DtNetInt32 myNumberOfSources; 00458 DtNetU16 myGeometryIndex; 00459 DtNetU16 padding; 00460 }; 00461 00462 00463