00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021
00022
00023 #ifndef ZCOM_H
00024 #define ZCOM_H
00025
00026 #include <rawverse.h>
00027 #include <swcom.h>
00028 #include <swcomprs.h>
00029
00030 #include <defs.h>
00031
00032 class SWDLLEXPORT zCom:public zVerse, public SWCom {
00033 char *versebuf;
00034 VerseKey *lastWriteKey;
00035 bool sameBlock (VerseKey * lastWriteKey, VerseKey * key);
00036 int blockType;
00037 public:
00038
00039
00040 zCom (const char *ipath, const char *iname = 0, const char *idesc =
00041 0, int blockType = CHAPTERBLOCKS, SWCompress * icomp =
00042 0, SWDisplay * idisp = 0);
00043 virtual ~ zCom ();
00044 virtual char *getRawEntry ();
00045 virtual SWModule & operator += (int increment);
00046 virtual SWModule & operator -= (int decrement)
00047 {
00048 return this->operator += (-decrement);
00049 }
00050
00051
00052 virtual bool isWritable ()
00053 {
00054 return true;
00055 }
00056 static char createModule (const char *path, int blockBound)
00057 {
00058 return zVerse::createModule (path, blockBound);
00059 }
00060 virtual SWModule & operator << (const char *inbuf);
00061 virtual SWModule & operator << (const SWKey * linkKey);
00062 virtual void deleteEntry ();
00063
00064 };
00065
00066
00067 #endif