00001 #ifndef ENTRIESBLK_H
00002 #define ENTRIESBLK_H
00003
00004 #include <sysdata.h>
00005 #include <defs.h>
00006
00007 SWORD_NAMESPACE_START
00008
00009 class SWDLLEXPORT EntriesBlock {
00010 static const int METAHEADERSIZE;
00011 static const int METAENTRYSIZE;
00012
00013 private:
00014 char *block;
00015 void setCount(int count);
00016 void getMetaEntry(int index, unsigned long *offset, unsigned long *size);
00017 void setMetaEntry(int index, unsigned long offset, unsigned long size);
00018
00019 public:
00020 EntriesBlock(const char *iBlock, unsigned long size);
00021 EntriesBlock();
00022 ~EntriesBlock();
00023
00024 int getCount();
00025 int addEntry(const char *entry);
00026 const char *getEntry(int entryIndex);
00027 unsigned long getEntrySize(int entryIndex);
00028 void removeEntry(int entryIndex);
00029 const char *getRawData(unsigned long *size);
00030 };
00031
00032
00033 SWORD_NAMESPACE_END
00034 #endif