Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #if DtHLA
00010
00011 #pragma once
00012
00013 #include <hlaSimOutput.h>
00014 #include <vl/geodeticRegion.h>
00015
00016 #include "sampleDdm.h"
00017
00018
00019 namespace MAKLogger
00020 {
00021
00022 class DT_DLL_SAMPLE_DDM DtLgrHlaDdmSimOutput : public DtLgrHlaSimOutput
00023 {
00024 public:
00025
00026
00027 DtLgrHlaDdmSimOutput(DtLgrHlaSimulationManager& manager);
00028
00029
00030 virtual ~DtLgrHlaDdmSimOutput();
00031
00034 virtual unsigned int getInteractionRegionSetFromData(const DtConstLgrHlaMessage& info,
00035 const DtInteraction* interaction, DtDDMRegionSet& regionSet);
00036
00043 virtual bool getPublisherRegionSetFromData(const DtPacket& info,
00044 DtDDMRegionSet& regionSet);
00045
00047 virtual void initializeHandles();
00048
00049 public:
00050
00051
00052 static DtLgrHlaSimOutput* create(DtLgrHlaSimulationManager& manager);
00053
00057 static void setRegionBounds(DtDDMRegionSP region, DtGeodeticCoord& geodeticLocation);
00058
00059 protected:
00060
00062 virtual DtDDMRegionSP createRegion();
00063
00065 virtual void decodeLocationFromVector(const char* const netData, DtGeodeticCoord& geodeticLocation);
00066
00068 virtual void decodeLocationFromSpatial(const char* const netData, DtGeodeticCoord& geodeticLocation);
00069
00073 virtual bool getLocation(const DtLgrHandleValueReferenceMap* handleValueMap,
00074 const DtLgrHlaHandle& handleToFind, DtGeodeticCoord& geodeticLocation, bool decodeAsVector=true);
00075
00076 protected:
00077
00078 DtLgrHlaHandle myBaseEntityClassHandle;
00079 DtLgrHlaHandle myEntityLocationHandle;
00080 DtLgrHlaHandle myWeaponFireClassHandle;
00081 DtLgrHlaHandle myWeaponFireLocationHandle;
00082 DtLgrHlaHandle myDetonationClassHandle;
00083 DtLgrHlaHandle myDetonationLocationHandle;
00084 DtDDMRegionSP myWeaponFireRegion;
00085 DtDDMRegionSP myDetonationRegion;
00086 long myLatitude;
00087 long myLongitude;
00088
00089 };
00090
00091 }
00092
00093 #endif // DtHLA