Blame toonz/sources/image/zcc/tiio_zcc.h
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#include "tlevel_io.h"
|
|
Toshihiro Shimizu |
890ddd |
#include "tfile.h"
|
|
Toshihiro Shimizu |
890ddd |
#include <map>
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#ifdef DOPO_LO_FACCIAMO
|
|
Toshihiro Shimizu |
890ddd |
class TImageReaderWriterZCC;
|
|
Toshihiro Shimizu |
890ddd |
struct C {
|
|
Toshihiro Shimizu |
890ddd |
C() : m_offset(0), m_size(0), m_lx(0), m_ly(0) {}
|
|
Toshihiro Shimizu |
890ddd |
C(TINT64 offset, long size, int lx, int ly)
|
|
Toshihiro Shimizu |
890ddd |
: m_offset(offset), m_size(size), m_lx(lx), m_ly(ly)
|
|
Toshihiro Shimizu |
890ddd |
{
|
|
Toshihiro Shimizu |
890ddd |
}
|
|
Toshihiro Shimizu |
890ddd |
TINT64 m_offset;
|
|
Toshihiro Shimizu |
890ddd |
long m_size;
|
|
Toshihiro Shimizu |
890ddd |
int m_lx;
|
|
Toshihiro Shimizu |
890ddd |
int m_ly;
|
|
Toshihiro Shimizu |
890ddd |
};
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
class TLevelReaderWriterZCC : public TLevelReaderWriter
|
|
Toshihiro Shimizu |
890ddd |
{
|
|
Toshihiro Shimizu |
890ddd |
friend class TImageReaderWriterZCC;
|
|
Toshihiro Shimizu |
890ddd |
TFile m_file;
|
|
Toshihiro Shimizu |
890ddd |
TFile m_indexFile;
|
|
Toshihiro Shimizu |
890ddd |
bool m_initDone;
|
|
Toshihiro Shimizu |
890ddd |
ULONG m_blockSize;
|
|
Toshihiro Shimizu |
890ddd |
std::map<int, C> m_map;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
public:
|
|
Toshihiro Shimizu |
890ddd |
TLevelReaderWriterZCC(const TFilePath &path, TReaderWriterInfo *winfo);
|
|
Toshihiro Shimizu |
890ddd |
~TLevelReaderWriterZCC();
|
|
Toshihiro Shimizu |
890ddd |
TImageReaderWriterP getFrameReaderWriter(TFrameId fid);
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
static TLevelReaderWriter *create(const TFilePath &f, TReaderWriterInfo *winfo)
|
|
Toshihiro Shimizu |
890ddd |
{
|
|
Toshihiro Shimizu |
890ddd |
return new TLevelReaderWriterZCC(f, winfo);
|
|
Toshihiro Shimizu |
890ddd |
};
|
|
Toshihiro Shimizu |
890ddd |
TLevelP loadInfo();
|
|
Toshihiro Shimizu |
890ddd |
void saveSoundTrack(TSoundTrack *st);
|
|
Toshihiro Shimizu |
890ddd |
};
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
//------------------------------------------------------------------------------
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
class TReaderWriterInfoZCC : public TReaderWriterInfo
|
|
Toshihiro Shimizu |
890ddd |
{
|
|
Toshihiro Shimizu |
890ddd |
public:
|
|
Toshihiro Shimizu |
890ddd |
friend TLevelReaderWriterZCC;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
public:
|
|
Toshihiro Shimizu |
890ddd |
static TReaderWriterInfo *create(const string &ext);
|
|
Toshihiro Shimizu |
890ddd |
~TReaderWriterInfoZCC();
|
|
Toshihiro Shimizu |
890ddd |
TReaderWriterInfo *clone() const;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
private:
|
|
Toshihiro Shimizu |
890ddd |
TReaderWriterInfoZCC();
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
TReaderWriterInfoZCC(const TReaderWriterInfoZCC &);
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
TReaderWriterInfoZCC &operator=(const TReaderWriterInfoZCC &); // not implemented
|
|
Toshihiro Shimizu |
890ddd |
};
|
|
Toshihiro Shimizu |
890ddd |
#endif
|