00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef WP6PREFIXDATA_H
00027 #define WP6PREFIXDATA_H
00028 #include "WP6PrefixDataPacket.h"
00029 #include <map>
00030 #include <vector>
00031
00032 class WP6LLListener;
00033 typedef std::map<int, WP6PrefixDataPacket *> DPH;
00034 typedef std::multimap<int, WP6PrefixDataPacket *> MPDP;
00035 typedef MPDP::const_iterator MPDP_CIter;
00036 typedef MPDP::iterator MPDP_Iter;
00037
00038 class WP6PrefixData
00039 {
00040 public:
00041 WP6PrefixData(WPXInputStream *input, const int numPrefixIndices);
00042 virtual ~WP6PrefixData();
00043 const WP6PrefixDataPacket *getPrefixDataPacket(const int prefixID) const;
00044 std::pair< MPDP_CIter, MPDP_CIter > * getPrefixDataPacketsOfType(const int type) const;
00045
00046 const uint16_t getDefaultInitialFontPID() const { return m_defaultInitialFontPID; }
00047
00048 private:
00049 DPH m_prefixDataPacketHash;
00050 MPDP m_prefixDataPacketTypeHash;
00051 int m_defaultInitialFontPID;
00052 };
00053
00054 #endif