Shinya Kitaoka 810553
#pragma once
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef TTIO_TIF_INCLUDED
Toshihiro Shimizu 890ddd
#define TTIO_TIF_INCLUDED
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "tiio.h"
Toshihiro Shimizu 890ddd
//#include "trandom.h"
Toshihiro Shimizu 890ddd
// #include "timage_io.h"
Toshihiro Shimizu 890ddd
#include "tproperty.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_NONE L"None"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_CCITTRLE L"CCITT modified Huffman Run-length encoding"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_CCITTFAX3 L"CCITT Group 3 fax encoding"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_CCITTFAX4 L"CCITT Group 4 fax encoding"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_LZW L"Lempel-Ziv & Welch encoding"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_PACKBITS L"Macintosh Run-length encoding"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_THUNDERSCAN L"ThunderScan Run-length encoding"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_RLE L"Run-length compression"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_JPEG L"JPEG compression"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_OJPEG L"JPEG compression 6.0"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_NEXT L"NEXT 2-bit RLE"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_TOONZ1 L"Toonz RLE"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_UNKNOWN L"Unknown"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_SGILOG L"SGILog"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_SGILOG24 L"SGILog24"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_ADOBE_DEFLATE L"8"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_COMPRESS_DEFLATE L"zip"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_TOPLEFT L"Top Left"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_TOPRIGHT L"Top Right"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_BOTRIGHT L"Bottom Right"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_BOTLEFT L"Bottom Left"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_LEFTTOP L"Left Top"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_LEFTBOT L"Left Bottom"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_RIGHTTOP L"Right Top"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_RIGHTBOT L"Right Bottom"
Toshihiro Shimizu 890ddd
#define TNZ_INFO_ORIENT_NONE L""
Toshihiro Shimizu 890ddd
//===========================================================================
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
namespace Tiio {
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//===========================================================================
Toshihiro Shimizu 890ddd
Shinya Kitaoka d1f6c4
class TifWriterProperties final : public TPropertyGroup {
Toshihiro Shimizu 890ddd
public:
Shinya Kitaoka 120a6e
  TEnumProperty m_byteOrdering;
Shinya Kitaoka 120a6e
  TEnumProperty m_compressionType;
Shinya Kitaoka 120a6e
  TEnumProperty m_bitsPerPixel;
Shinya Kitaoka 120a6e
  TEnumProperty m_orientation;
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
  // TBoolProperty m_matte;
Shinya Kitaoka 120a6e
  TifWriterProperties();
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//===========================================================================
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
Tiio::Reader *makeTifReader();
Toshihiro Shimizu 890ddd
Tiio::Writer *makeTifWriter();
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
Tiio::Reader *makeTziReader();
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
}  // namespace
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
#endif  // TTIO_TIF_INCLUDED