00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00025 #ifdef __GNUG__
00026 # pragma interface
00027 #endif
00028
00029
00030 #ifndef EXALTCODEC_H
00031 #define EXALTCODEC_H
00032
00033
00034 #include "defs.h"
00035 #include "filedevice.h"
00036 #include "iodevice.h"
00037 #include "saxemitter.h"
00038 #include "saxreceptor.h"
00039 #include "outputsaxreceptor.h"
00040 #include "textcodec.h"
00041 #include "xmlcodec.h"
00042 #include "xmlcodecbase.h"
00043
00044
00045 #include <ctime>
00046
00047
00048
00054 class ExaltCodec : public XmlCodecBase
00055 {
00056 public:
00058 ExaltCodec(void);
00059
00061 virtual ~ExaltCodec(void);
00062
00064 virtual bool encode(const char *inFileName, const char *outFileName);
00065
00067 virtual bool encode(IODevice *inDevice, IODevice *outDevice);
00068
00070 virtual void initializePushCoder(IODevice *outDevice);
00071
00073 virtual void initializePushCoder(const char *outFileName);
00074
00076 virtual bool encodePush(const char *data, int length, bool isFinal = false);
00077
00078
00080 virtual bool decode(const char *inFileName, const char *outFileName);
00081
00083 virtual bool decode(IODevice *inDevice, IODevice *outDevice);
00084
00086 virtual bool decode(IODevice *inDevice, SAXReceptor *receptor, void *userData = 0);
00087
00089 virtual bool decode(const char *inFileName, SAXReceptor *receptor, void *userData = 0);
00090
00091 protected:
00093 XmlCodecBase *xmlCodec;
00094 };
00095
00096
00097 #endif //EXALTCODEC_H