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