summaryrefslogtreecommitdiff
path: root/3dc/win95/fragchnk.hpp
blob: 4fc806ea828922023be14325741d219c2953c177 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#ifndef _fragchnk_hpp_
#define _fragchnk_hpp_

#include "chunk.hpp"
#include "chnktype.hpp"


class Fragment_Type_Data_Chunk : public Chunk
{
public :
	
	Fragment_Type_Data_Chunk(Chunk_With_Children* parent,const char* name);
	Fragment_Type_Data_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
	~Fragment_Type_Data_Chunk();
	
	size_t size_chunk ();
	void fill_data_block (char * data_start);
	

	char* frag_type_name;
	int pad1,pad2,pad3;

};

class Fragment_Type_Shape_Chunk : public Chunk
{
public:	
	
	Fragment_Type_Shape_Chunk(Chunk_With_Children* parent,const char* _name,int number,ChunkVectorInt _location);
	Fragment_Type_Shape_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
	~Fragment_Type_Shape_Chunk();
	
	size_t size_chunk ();
	void fill_data_block (char * data_start);
	
	
	int num_fragments;
	ChunkVectorInt location;
	char* name;
	
	int pad1,pad2,pad3;	

};
class Fragment_Type_Sound_Chunk : public Chunk
{
public:	
	
	Fragment_Type_Sound_Chunk(Chunk_With_Children* parent);
	Fragment_Type_Sound_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
	~Fragment_Type_Sound_Chunk();
	
	size_t size_chunk ();
	void fill_data_block (char * data_start);
	
	char* wav_name;
	unsigned long inner_range;
	unsigned long outer_range;
	int max_volume;
	int	pitch;
	int pad;	

};

class Fragment_Type_Chunk : public Chunk_With_Children
{
public :
	Fragment_Type_Chunk(Chunk_With_Children * parent,const char* name)
	: Chunk_With_Children (parent, "FRAGTYPE")
	{new Fragment_Type_Data_Chunk(this,name);}
	
	Fragment_Type_Chunk (Chunk_With_Children * const parent,const char *, size_t const);

	const char* get_name();

};






#endif