Shinya Kitaoka 810553
#pragma once
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef TIIO_MESH_H
Toshihiro Shimizu 890ddd
#define TIIO_MESH_H
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "tlevel_io.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//*****************************************************************************************
Toshihiro Shimizu 890ddd
//    TLevelWriterMesh  declaration
Toshihiro Shimizu 890ddd
//*****************************************************************************************
Toshihiro Shimizu 890ddd
Shinya Kitaoka d1f6c4
class TLevelWriterMesh final : public TLevelWriter {
Toshihiro Shimizu 890ddd
public:
Shinya Kitaoka 120a6e
  TLevelWriterMesh(const TFilePath &path, TPropertyGroup *winfo);
Shinya Kitaoka 120a6e
  ~TLevelWriterMesh();
Toshihiro Shimizu 890ddd
Shinya Kitaoka 473e70
  TImageWriterP getFrameWriter(TFrameId fid) override;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Shinya Kitaoka 120a6e
  static TLevelWriter *create(const TFilePath &f, TPropertyGroup *winfo) {
Shinya Kitaoka 120a6e
    return new TLevelWriterMesh(f, winfo);
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
private:
Shinya Kitaoka 120a6e
  // not implemented
Shinya Kitaoka 120a6e
  TLevelWriterMesh(const TLevelWriterMesh &);
Shinya Kitaoka 120a6e
  TLevelWriterMesh &operator=(const TLevelWriterMesh &);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//*****************************************************************************************
Toshihiro Shimizu 890ddd
//    TLevelReaderMesh  declaration
Toshihiro Shimizu 890ddd
//*****************************************************************************************
Toshihiro Shimizu 890ddd
Shinya Kitaoka d1f6c4
class TLevelReaderMesh final : public TLevelReader {
Toshihiro Shimizu 890ddd
public:
Shinya Kitaoka 120a6e
  TLevelReaderMesh(const TFilePath &path);
Shinya Kitaoka 120a6e
  ~TLevelReaderMesh();
Toshihiro Shimizu 890ddd
Shinya Kitaoka 473e70
  TImageReaderP getFrameReader(TFrameId fid) override;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Shinya Kitaoka 120a6e
  static TLevelReader *create(const TFilePath &f) {
Shinya Kitaoka 120a6e
    return new TLevelReaderMesh(f);
Shinya Kitaoka 120a6e
  }
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
private:
Shinya Kitaoka 120a6e
  // not implemented
Shinya Kitaoka 120a6e
  TLevelReaderMesh(const TLevelReaderMesh &);
Shinya Kitaoka 120a6e
  TLevelReaderMesh &operator=(const TLevelReaderMesh &);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Shinya Kitaoka 2a7129
#endif /* TIIO_MESH_H */