summaryrefslogtreecommitdiff
path: root/source/modules/asura-core/mesh/mesh2d_handler.h
blob: 05e12f083cd7035b63e3fade6aac6644d9cea00f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#ifndef __ASURA_MESH2D_HANDLER_H__
#define __ASURA_MESH2D_HANDLER_H__

#include <asura-utils/io/data_buffer.h>
#include <asura-utils/type.h>

#include "mesh2d_data.h"

namespace AsuraEngine
{
	namespace Mesh
	{

		///
		/// ͱmesh
		///
		ASURA_ABSTRACT class Mesh2DHandler
		{
		public: 
			Mesh2DHandler() {};
			virtual ~Mesh2DHandler() {};

			virtual bool CanDecode(AEIO::DataBuffer& input) = 0;

			virtual void Decode(AEIO::DataBuffer& input, Mesh2DData& target) = 0;

			virtual void Encode(Mesh2DData& input, AEIO::DataBuffer& target) = 0;

		};

	}
}

#endif