/********************************************************************/
/* Copyright (c) 2019 System fugen G.K. and Yuzi Mizuno          */
/* All rights reserved.                                             */
/********************************************************************/
/********************************************************************/
#if !defined(AFX_GLTessWView_H__8613C83B_63AC_4E4E_9C52_8AA56D97554F__INCLUDED_)
#define AFX_GLTessWView_H__8613C83B_63AC_4E4E_9C52_8AA56D97554F__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class MGFace;

#include "fugenView.h"

/////////////////////////////////////////////////////////////////////////////
// CGLTessWView ビュー

class CGLTessWView : public fugenView{

protected:
	CGLTessWView();
	DECLARE_DYNCREATE(CGLTessWView)

// オーバーライド
	// ClassWizard は仮想関数のオーバーライドを生成します。

	//{{AFX_VIRTUAL(CGLTessWView)
protected:
	void OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint);
	//}}AFX_VIRTUAL

	//Make openGL display list in the input glview.
	void makeDisplayList();
	void OnInitialUpdate();

// インプリメンテーション
protected:
	~CGLTessWView();

	///Initialize model.
	void initializeModel();

	// 生成されたメッセージ マップ関数
protected:
	//{{AFX_MSG(CGLTessWView)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

private:
	mgVBO m_vbo;

	//Obj pointer to tessellate, must be MGFace or MGSurface.
	const MGFSurface* m_f;
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ は前行の直前に追加の宣言を挿入します。

#endif // !defined(AFX_GLTessWView_H__8613C83B_63AC_4E4E_9C52_8AA56D97554F__INCLUDED_)
