tahoma2d/toonz/sources/image/svg/tiio_svg.h

72 lines
1.4 KiB
C
Raw Normal View History

2016-05-17 03:04:11 +12:00
#pragma once
2016-03-19 06:57:51 +13:00
#ifndef TTIO_SVG_INCLUDED
#define TTIO_SVG_INCLUDED
#include "tlevel_io.h"
#endif
2016-06-15 18:43:10 +12:00
class TLevelReaderSvg : public TLevelReader {
2016-03-19 06:57:51 +13:00
public:
2016-06-15 18:43:10 +12:00
TLevelReaderSvg(const TFilePath &path);
~TLevelReaderSvg() {}
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
TLevelP loadInfo();
TImageReaderP getFrameReader(TFrameId fid);
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
// QString getCreator();
// friend class TImageReaderPli;
2016-03-19 06:57:51 +13:00
private:
2016-06-15 18:43:10 +12:00
TLevelP m_level;
2016-03-19 06:57:51 +13:00
public:
2016-06-15 18:43:10 +12:00
static TLevelReader *create(const TFilePath &f) {
return new TLevelReaderSvg(f);
}
2016-03-19 06:57:51 +13:00
private:
2016-06-15 18:43:10 +12:00
// not implemented
TLevelReaderSvg(const TLevelReaderSvg &);
TLevelReaderSvg &operator=(const TLevelReaderSvg &);
2016-03-19 06:57:51 +13:00
};
2016-06-15 18:43:10 +12:00
namespace Tiio {
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
class SvgWriterProperties : public TPropertyGroup {
2016-03-19 06:57:51 +13:00
public:
2016-06-15 18:43:10 +12:00
TEnumProperty m_strokeMode;
TEnumProperty m_outlineQuality;
SvgWriterProperties();
2016-03-19 06:57:51 +13:00
};
}
2016-06-15 18:43:10 +12:00
class TLevelWriterSvg : public TLevelWriter {
//! object to manage a pli
// ParsedPli *m_pli;
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
//! number of frame in pli
// UINT m_frameNumber;
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
// vettore da utilizzare per il calcolo della palette
// std::vector<TPixel> m_colorArray;
2016-03-19 06:57:51 +13:00
public:
2016-06-15 18:43:10 +12:00
TLevelWriterSvg(const TFilePath &path, TPropertyGroup *winfo);
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
TImageWriterP getFrameWriter(TFrameId fid);
2016-03-19 06:57:51 +13:00
2016-06-15 18:43:10 +12:00
friend class TImageWriterSvg;
2016-03-19 06:57:51 +13:00
public:
2016-06-15 18:43:10 +12:00
static TLevelWriter *create(const TFilePath &f, TPropertyGroup *winfo) {
return new TLevelWriterSvg(f, winfo);
}
2016-03-19 06:57:51 +13:00
private:
2016-06-15 18:43:10 +12:00
// not implemented
TLevelWriterSvg(const TLevelWriterSvg &);
TLevelWriterSvg &operator=(const TLevelWriterSvg &);
2016-03-19 06:57:51 +13:00
};