Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #ifndef lgrDisMessageFactory_H_
00010 #define lgrDisMessageFactory_H_
00011
00012 #if DtDIS
00013
00014 #include "lgrSim.h"
00015
00016 #include <vlpi/disEnums.h>
00017 #include <vl/packets/pduHeader.h>
00018
00019 class DtEntityIdentifier;
00020 class DtNet32Vector;
00021
00022 namespace MAKLogger
00023 {
00024 class DtPacket;
00025
00028 class DT_DLL_LGRSIM DtConstLgrDisMessageFactory
00029 {
00030 public:
00031 static DtPduKind decodePduKind(const DtNetPduHeader* packet);
00032 static int decodePduVersion(const DtNetPduHeader* packet);
00033
00034 static bool decodeEntityFinalFlag(const DtNetPduHeader* packet);
00035
00036 static DtEntityIdentifier decodeEntityId(const DtNetPduHeader* packet);
00037 static DtEntityIdentifier decodeAggregateId(const DtNetPduHeader* packet);
00038 static DtEntityIdentifier decodeEnvironmentalId(const DtNetPduHeader* pduHeader);
00039
00040 static DtEntityIdentifier decodeGriddedDataId(const DtNetPduHeader* packet);
00041 static DtEntityIdentifier decodeTransmitterId(const DtNetPduHeader* packet);
00042 static DtEntityIdentifier decodeReceiverId(const DtNetPduHeader* pduHeader);
00043
00044 static DtEntityIdentifier decodeDiGuyId(const DtNetPduHeader* pduHeader);
00045
00046
00047 static const DtNetPacket* decodePdu(const DtNetPduHeader* packet);
00048 };
00049
00050 class DT_DLL_LGRSIM DtLgrDisMessageFactory
00051 {
00052 public:
00053 static void setPduKind(DtNetPduHeader* packet,DtPduKind kind);
00054 static void setEntityId(DtNetPduHeader* packet, const DtEntityIdentifier& id);
00055 static void setAggregateId(DtNetPduHeader* packet, const DtEntityIdentifier& id);
00056 static void setEnvironmentalId(DtNetPduHeader* packet, const DtEntityIdentifier& id);
00057 static void setGriddedDataId(DtNetPduHeader* packet, const DtEntityIdentifier& id);
00058 static void setTransmitterId(DtNetPduHeader* packet, const DtEntityIdentifier& id);
00059 static void setReceiverId(DtNetPduHeader* packet, const DtEntityIdentifier& id);
00060
00061 };
00062
00063 }
00064
00065 #endif
00066 #endif