12 #ifndef lgrDisPacketPrinter_H_
13 #define lgrDisPacketPrinter_H_
20 #include <vlutil/vlTime.h>
22 class DtDisPduFactory;
29 class DT_DLL_LGRDUMP DtLgrDisPacketPrinter :
public DtLgrPacketPrinter
37 virtual ~DtLgrDisPacketPrinter();
41 DtLgrDisPacketPrinter(
const DtLgrDisPacketPrinter&);
43 DtLgrDisPacketPrinter& operator=(
const DtLgrDisPacketPrinter&);
48 virtual void beginPrinting(
const DtMessageIOInfo* info,
49 const DtMessageInput* msgInput,
const DtString& destination);
52 virtual void printPacket(
const DtPacket& packet );
55 virtual void endPrinting();
60 std::ofstream& outputStream();
63 virtual void printPacketHeader(
const DtPacket& packet);
66 virtual void printPacketTail(
const DtPacket& packet);
69 void printOtherPacket(
const DtPacket& packet);
72 void printConfigPacket(
const DtPacket& packet);
75 void printDateTimePacket(
const DtPacket& packet);
78 void printCheckpointPacket(
const DtPacket& packet);
81 void printIndexTablePacket(
const DtPacket& packet);
84 void printRecordingDataPacket(
const DtPacket& packet);
87 void printDescriptionPacket(
const DtPacket& packet);
90 void printEntityTablePacket(
const DtPacket& packet);
93 void printPausePacket(
const DtPacket& packet);
96 void printUnpausePacket(
const DtPacket& packet);
99 void printPduPacket(
const DtPacket& packet);
103 typedef void (DtLgrDisPacketPrinter::*PacketPrintFunction)(
const DtPacket&);
104 typedef std::map<DtPacket::DtPacketType,PacketPrintFunction> PrintFunctionMap;
106 DtDisPduFactory* myPduFactory;
110 int myCheckpointCount;
113 PrintFunctionMap myPrintFunctionMap;
114 std::ofstream* myOutputFile;
117 DtTime myFileDateTime;
120 DtMessageBuffer myEndMetadata;
123 DtTime myUnpauseTime;