Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
e280ae
#ifdef _MSC_VER
Toshihiro Shimizu 890ddd
#pragma warning(disable : 4661)
Toshihiro Shimizu 890ddd
#endif
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "pli_io.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
typedef TVectorImage::IntersectionBranch IntersectionBranch;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PliTag::PliTag() : m_type(NONE) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PliTag::PliTag(const Type type) : m_type(type) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
// PliTag::PliTag(const PliTag &tag)
Toshihiro Shimizu 890ddd
//: m_type(tag.m_type)
Toshihiro Shimizu 890ddd
//{}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PliObjectTag::PliObjectTag() : PliTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PliObjectTag::PliObjectTag(const Type type) : PliTag(type) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PliGeometricTag::PliGeometricTag() : PliObjectTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PliGeometricTag::PliGeometricTag(const Type type) : PliObjectTag(type) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
TextTag::TextTag() : PliObjectTag(PliTag::TEXT), m_text() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
TextTag::TextTag(const TextTag &textTag)
Shinya Kitaoka 120a6e
    : PliObjectTag(textTag), m_text(textTag.m_text) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 3bfa54
TextTag::TextTag(const std::string &text)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::TEXT), m_text(text) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
PaletteTag::PaletteTag()
Shinya Kitaoka 120a6e
    : PliTag(PliTag::PALETTE), m_numColors(0), m_color(NULL) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
PaletteTag::PaletteTag(TUINT32 numColors, TPixelRGBM32 *color)
Shinya Kitaoka 120a6e
    : PliTag(PliTag::PALETTE) {
Shinya Kitaoka 120a6e
  m_numColors = numColors;
Shinya Kitaoka 120a6e
Shinya Kitaoka 120a6e
  if (m_numColors == 0)
Shinya Kitaoka 120a6e
    m_color = NULL;
Shinya Kitaoka 120a6e
  else {
Shinya Kitaoka 120a6e
    m_color = new TPixelRGBM32[m_numColors];
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numColors; i++) m_color[i] = color[i];
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PaletteTag::PaletteTag(const PaletteTag &paletteTag) : PliTag(PliTag::PALETTE) {
Shinya Kitaoka 120a6e
  m_numColors = paletteTag.m_numColors;
Shinya Kitaoka 120a6e
  if (m_numColors == 0)
Shinya Kitaoka 120a6e
    m_color = NULL;
Shinya Kitaoka 120a6e
  else {
Shinya Kitaoka 120a6e
    m_color = new TPixelRGBM32[m_numColors];
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numColors; i++) m_color[i] = paletteTag.m_color[i];
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PaletteTag::~PaletteTag() { delete m_color; }
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
PaletteWithAlphaTag::PaletteWithAlphaTag()
Shinya Kitaoka 120a6e
    : PliTag(PliTag::PALETTE_WITH_ALPHA), m_numColors(0), m_color(NULL) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
PaletteWithAlphaTag::PaletteWithAlphaTag(TUINT32 numColors, TPixelRGBM32 *color)
Shinya Kitaoka 120a6e
    : PliTag(PliTag::PALETTE_WITH_ALPHA) {
Shinya Kitaoka 120a6e
  m_numColors = numColors;
Shinya Kitaoka 120a6e
Shinya Kitaoka 120a6e
  if (m_numColors == 0)
Shinya Kitaoka 120a6e
    m_color = NULL;
Shinya Kitaoka 120a6e
  else {
Shinya Kitaoka 120a6e
    m_color = new TPixelRGBM32[m_numColors];
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numColors; i++) m_color[i] = color[i];
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
PaletteWithAlphaTag::PaletteWithAlphaTag(PaletteWithAlphaTag &paletteTag)
Shinya Kitaoka 120a6e
    : PliTag(PliTag::PALETTE_WITH_ALPHA) {
Shinya Kitaoka 120a6e
  m_numColors = paletteTag.m_numColors;
Shinya Kitaoka 120a6e
  if (m_numColors == 0)
Shinya Kitaoka 120a6e
    m_color = NULL;
Shinya Kitaoka 120a6e
  else {
Shinya Kitaoka 120a6e
    m_color = new TPixelRGBM32[m_numColors];
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numColors; i++) m_color[i] = paletteTag.m_color[i];
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PaletteWithAlphaTag::~PaletteWithAlphaTag() { delete m_color; }
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
GroupTag::GroupTag()
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::GROUP_GOBJ)
Shinya Kitaoka 120a6e
    , m_type(GroupTag::NONE)
Shinya Kitaoka 120a6e
    , m_numObjects(0) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Shinya Kitaoka 120a6e
GroupTag::GroupTag(UCHAR type, TUINT32 numObjects, PliObjectTag **object)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::GROUP_GOBJ), m_type(type), m_numObjects(numObjects) {
Shinya Kitaoka 120a6e
  if (m_numObjects > 0) {
Shinya Kitaoka 120a6e
    m_object.reset(new PliObjectTag *[m_numObjects]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numObjects; i++) {
Shinya Kitaoka 120a6e
      m_object[i] = object[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
GroupTag::GroupTag(UCHAR type, TUINT32 numObjects,
Shinya Kitaoka 120a6e
                   std::unique_ptr<pliobjecttag *[]=""> object)</pliobjecttag>
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::GROUP_GOBJ)
Shinya Kitaoka 120a6e
    , m_type(type)
Shinya Kitaoka 120a6e
    , m_numObjects(numObjects)
Shinya Kitaoka 120a6e
    , m_object(std::move(object)) {}
Shinya Kitaoka 79e39b
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
GroupTag::GroupTag(const GroupTag &groupTag)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::GROUP_GOBJ)
Shinya Kitaoka 120a6e
    , m_type(groupTag.m_type)
Shinya Kitaoka 120a6e
    , m_numObjects(groupTag.m_numObjects) {
Shinya Kitaoka 120a6e
  if (m_numObjects > 0) {
Shinya Kitaoka 120a6e
    m_object.reset(new PliObjectTag *[m_numObjects]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numObjects; i++) {
Shinya Kitaoka 120a6e
      m_object[i] = groupTag.m_object[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
GroupTag::~GroupTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
StyleTag::StyleTag()
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::STYLE_NGOBJ)
Shinya Kitaoka 120a6e
    , m_id(0)
Shinya Kitaoka 120a6e
    , m_numParams(0)
Shinya Kitaoka 120a6e
    , m_pageIndex(0) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
StyleTag::StyleTag(int id, USHORT pagePaletteIndex, int numParams,
Shinya Kitaoka 120a6e
                   TStyleParam *param)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::STYLE_NGOBJ)
Shinya Kitaoka 120a6e
    , m_id(id)
Shinya Kitaoka 120a6e
    , m_pageIndex(pagePaletteIndex)
Shinya Kitaoka 120a6e
    , m_numParams(numParams) {
Shinya Kitaoka 120a6e
  if (numParams > 0) {
Shinya Kitaoka 120a6e
    m_param.reset(new TStyleParam[m_numParams]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < (UINT)m_numParams; i++) {
Shinya Kitaoka 120a6e
      m_param[i] = param[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
StyleTag::StyleTag(const StyleTag &styleTag)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::STYLE_NGOBJ)
Shinya Kitaoka 120a6e
    , m_id(styleTag.m_id)
Shinya Kitaoka 120a6e
    , m_pageIndex(styleTag.m_pageIndex)
Shinya Kitaoka 120a6e
    , m_numParams(styleTag.m_numParams) {
Shinya Kitaoka 120a6e
  if (styleTag.m_numParams > 0) {
Shinya Kitaoka 120a6e
    m_param.reset(new TStyleParam[styleTag.m_numParams]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < (UINT)styleTag.m_numParams; i++) {
Shinya Kitaoka 120a6e
      m_param[i] = styleTag.m_param[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
StyleTag::~StyleTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//=====================================================================
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
ColorTag::ColorTag()
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::COLOR_NGOBJ)
Shinya Kitaoka 120a6e
    , m_style(STYLE_NONE)
Shinya Kitaoka 120a6e
    , m_attribute(ATTRIBUTE_NONE)
Shinya Kitaoka 120a6e
    , m_numColors(0) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
ColorTag::ColorTag(ColorTag::styleType style, ColorTag::attributeType attribute,
Shinya Kitaoka 120a6e
                   TUINT32 numColors, std::unique_ptr<tuint32[]> color)</tuint32[]>
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::COLOR_NGOBJ)
Shinya Kitaoka 120a6e
    , m_style(style)
Shinya Kitaoka 120a6e
    , m_attribute(attribute)
Shinya Kitaoka 120a6e
    , m_numColors(numColors)
Shinya Kitaoka 120a6e
    , m_color(std::move(color)) {}
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
ColorTag::ColorTag(const ColorTag &tag)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::COLOR_NGOBJ)
Shinya Kitaoka 120a6e
    , m_style(tag.m_style)
Shinya Kitaoka 120a6e
    , m_attribute(tag.m_attribute)
Shinya Kitaoka 120a6e
    , m_numColors(tag.m_numColors) {
Shinya Kitaoka 120a6e
  if (tag.m_numColors > 0) {
Shinya Kitaoka 120a6e
    m_color.reset(new TUINT32[m_numColors]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numColors; i++) {
Shinya Kitaoka 120a6e
      m_color[i] = tag.m_color[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
ColorTag::~ColorTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
BitmapTag::BitmapTag() : m_r() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
BitmapTag::BitmapTag(const TRaster32P &r) : m_r(r) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
BitmapTag::BitmapTag(const BitmapTag &bitmap) : m_r(bitmap.m_r) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
BitmapTag::~BitmapTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
IntersectionDataTag::IntersectionDataTag()
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::INTERSECTION_DATA_GOBJ), m_branchCount(0) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
IntersectionDataTag::IntersectionDataTag(
Shinya Kitaoka 120a6e
    UINT branchCount, std::unique_ptr<intersectionbranch[]> branchArray)</intersectionbranch[]>
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::INTERSECTION_DATA_GOBJ)
Shinya Kitaoka 120a6e
    , m_branchCount(branchCount)
Shinya Kitaoka 120a6e
    , m_branchArray(std::move(branchArray)) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
IntersectionDataTag::IntersectionDataTag(const IntersectionDataTag &tag)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::INTERSECTION_DATA_GOBJ)
Shinya Kitaoka 120a6e
    , m_branchCount(tag.m_branchCount) {
Shinya Kitaoka 120a6e
  if (m_branchCount == 0) {
Shinya Kitaoka 120a6e
    m_branchArray.reset(new IntersectionBranch[m_branchCount]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_branchCount; i++) {
Shinya Kitaoka 120a6e
      m_branchArray[i] = tag.m_branchArray[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
IntersectionDataTag::~IntersectionDataTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
StrokeOutlineOptionsTag::StrokeOutlineOptionsTag()
Shinya Kitaoka 120a6e
    : PliObjectTag(OUTLINE_OPTIONS_GOBJ) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
StrokeOutlineOptionsTag::StrokeOutlineOptionsTag(
Shinya Kitaoka 120a6e
    const TStroke::OutlineOptions &options)
Shinya Kitaoka 120a6e
    : PliObjectTag(OUTLINE_OPTIONS_GOBJ), m_options(options) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
PrecisionScaleTag::PrecisionScaleTag() : PliObjectTag(PRECISION_SCALE_GOBJ) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
PrecisionScaleTag::PrecisionScaleTag(int precisionScale)
Shinya Kitaoka 120a6e
    : PliObjectTag(PRECISION_SCALE_GOBJ), m_precisionScale(precisionScale) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Jeremy Bullock e122a9
Jeremy Bullock e122a9
AutoCloseToleranceTag::AutoCloseToleranceTag()
Jeremy Bullock e122a9
    : PliObjectTag(AUTOCLOSE_TOLERANCE_GOBJ) {}
Jeremy Bullock e122a9
Jeremy Bullock e122a9
/*=====================================================================*/
Jeremy Bullock e122a9
Jeremy Bullock e122a9
AutoCloseToleranceTag::AutoCloseToleranceTag(int tolerance)
Jeremy Bullock e122a9
    : PliObjectTag(AUTOCLOSE_TOLERANCE_GOBJ), m_autoCloseTolerance(tolerance) {}
Jeremy Bullock e122a9
Jeremy Bullock e122a9
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*ImageTag::ImageTag()
Toshihiro Shimizu 890ddd
: PliObjectTag(PliTag::IMAGE_GOBJ)
Toshihiro Shimizu 890ddd
, m_numFrame(0)
Toshihiro Shimizu 890ddd
, m_numObjects(0)
Toshihiro Shimizu 890ddd
, m_object(NULL)
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
}*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Shinya Kitaoka 120a6e
ImageTag::ImageTag(const TFrameId &numFrame, TUINT32 numObjects,
Shinya Kitaoka 120a6e
                   PliObjectTag **object)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::IMAGE_GOBJ)
Shinya Kitaoka 120a6e
    , m_numFrame(numFrame)
Shinya Kitaoka 120a6e
    , m_numObjects(numObjects) {
Shinya Kitaoka 120a6e
  if (m_numObjects > 0) {
Shinya Kitaoka 120a6e
    m_object.reset(new PliObjectTag *[m_numObjects]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numObjects; i++) {
Shinya Kitaoka 120a6e
      m_object[i] = object[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
ImageTag::ImageTag(const TFrameId &numFrame, TUINT32 numObjects,
Shinya Kitaoka 120a6e
                   std::unique_ptr<pliobjecttag *[]=""> object)</pliobjecttag>
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::IMAGE_GOBJ)
Shinya Kitaoka 120a6e
    , m_numFrame(numFrame)
Shinya Kitaoka 120a6e
    , m_numObjects(numObjects)
Shinya Kitaoka 120a6e
    , m_object(std::move(object)) {}
Shinya Kitaoka 79e39b
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
ImageTag::ImageTag(const ImageTag &imageTag)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::IMAGE_GOBJ)
Shinya Kitaoka 120a6e
    , m_numFrame(imageTag.m_numFrame)
Shinya Kitaoka 120a6e
    , m_numObjects(imageTag.m_numObjects) {
Shinya Kitaoka 120a6e
  if (m_numObjects > 0) {
Shinya Kitaoka 120a6e
    m_object.reset(new PliObjectTag *[m_numObjects]);
Shinya Kitaoka 120a6e
    for (UINT i = 0; i < m_numObjects; i++) {
Shinya Kitaoka 120a6e
      m_object[i] = imageTag.m_object[i];
Shinya Kitaoka 120a6e
    }
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
ImageTag::~ImageTag() {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
GeometricTransformationTag::GeometricTransformationTag()
Shinya Kitaoka 120a6e
    : PliGeometricTag(PliTag::GEOMETRIC_TRANSFORMATION_GOBJ)
Shinya Kitaoka 120a6e
    , m_affine()
Shinya Kitaoka 120a6e
    , m_object(NULL) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
GeometricTransformationTag::GeometricTransformationTag(
luz paz bc16eb
    const GeometricTransformationTag &transformationTag)
Shinya Kitaoka 120a6e
    : PliGeometricTag(PliTag::GEOMETRIC_TRANSFORMATION_GOBJ)
luz paz bc16eb
    , m_affine(transformationTag.m_affine)
luz paz bc16eb
    , m_object(transformationTag.m_object) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
GeometricTransformationTag::GeometricTransformationTag(const TAffine &affine,
Shinya Kitaoka 120a6e
                                                       PliGeometricTag *object)
Shinya Kitaoka 120a6e
    : PliGeometricTag(PliTag::GEOMETRIC_TRANSFORMATION_GOBJ)
Shinya Kitaoka 120a6e
    , m_affine(affine)
Shinya Kitaoka 120a6e
    , m_object(object) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Shinya Kitaoka 120a6e
GeometricTransformationTag::~GeometricTransformationTag() {
Shinya Kitaoka 120a6e
  // if (m_object) delete m_object;
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
DoublePairTag::DoublePairTag()
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::DOUBLEPAIR_OBJ), m_first(0), m_second(0) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
DoublePairTag::DoublePairTag(const DoublePairTag &doublePairTag)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::DOUBLEPAIR_OBJ)
Shinya Kitaoka 120a6e
    , m_first(doublePairTag.m_first)
Shinya Kitaoka 120a6e
    , m_second(doublePairTag.m_second) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
DoublePairTag::DoublePairTag(double first, double second)
Shinya Kitaoka 120a6e
    : PliObjectTag(PliTag::DOUBLEPAIR_OBJ), m_first(first), m_second(second) {}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
/*=====================================================================*/
Shinya Kitaoka 120a6e
DoublePairTag::~DoublePairTag() {
Shinya Kitaoka 120a6e
  // if (m_object) delete m_object;
Toshihiro Shimizu 890ddd
}