summaryrefslogtreecommitdiff
path: root/source/modules/asura-utils/IO/DecodedData.h
blob: 73a2f74046df5905c3e00af237a90f684f6af4d1 (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
35
36
37
38
39
40
41
#ifndef _ASURA_ENGINE_DATA_H_
#define _ASURA_ENGINE_DATA_H_

#include <cstdlib>

#include <asura-utils/Threads/Thread.h>

#include "../Scripting/Portable.hpp"

#include "DataBuffer.h"

namespace AsuraEngine
{
	namespace IO
	{

		///
		/// ¿ÉÒÔÔÚÁíÒ»¸öÏ̹߳¹½¨µÄdata¼Ì³Ð´ËÀà¡£ÈçͼƬÊý¾Ý¡¢ÒôƵÊý¾ÝµÈ£¬¿ÉÒÔÔÚÁíÒ»¸öÏß³ÌÖнâÎöÔ­
		/// Îļþ£¬Éú³ÉÄÚ²¿Êý¾Ý¸ñʽ£¬ÈçÏñËØµÈ¡£
		///
		ASURA_ABSTRACT class DecodedData
		{
		public:

			///
			/// ´ÓÄÚ´æÖй¹½¨data£¬¿ÉÒÔ·ÅÔÚÁíÒ»¸öÏß³ÌÀïÃæ£¬´Ó×ÊÔ´¹ÜÀíϵͳÀïÃæ¼ÓÔØ¡£
			///
			DecodedData() {};
			virtual ~DecodedData() {};

			///
			/// ½âÂëÄÚ´æÖеÄÊý¾Ý²¢ÒÔijÖÖ¸ñʽ±£´æ¡£
			///
			virtual void Decode(DataBuffer& buffer) = 0;

		};

	}
}

#endif