1 #ifndef _fragchnk_hpp_
2 #define _fragchnk_hpp_
3 
4 #include "chunk.hpp"
5 #include "chnktype.hpp"
6 
7 
8 class Fragment_Type_Data_Chunk : public Chunk
9 {
10 public :
11 
12 	Fragment_Type_Data_Chunk(Chunk_With_Children* parent,const char* name);
13 	Fragment_Type_Data_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
14 	~Fragment_Type_Data_Chunk();
15 
16 	size_t size_chunk ();
17 	void fill_data_block (char * data_start);
18 
19 
20 	char* frag_type_name;
21 	int pad1,pad2,pad3;
22 
23 };
24 
25 class Fragment_Type_Shape_Chunk : public Chunk
26 {
27 public:
28 
29 	Fragment_Type_Shape_Chunk(Chunk_With_Children* parent,const char* _name,int number,ChunkVectorInt _location);
30 	Fragment_Type_Shape_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
31 	~Fragment_Type_Shape_Chunk();
32 
33 	size_t size_chunk ();
34 	void fill_data_block (char * data_start);
35 
36 
37 	int num_fragments;
38 	ChunkVectorInt location;
39 	char* name;
40 
41 	int pad1,pad2,pad3;
42 
43 };
44 class Fragment_Type_Sound_Chunk : public Chunk
45 {
46 public:
47 
48 	Fragment_Type_Sound_Chunk(Chunk_With_Children* parent);
49 	Fragment_Type_Sound_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
50 	~Fragment_Type_Sound_Chunk();
51 
52 	size_t size_chunk ();
53 	void fill_data_block (char * data_start);
54 
55 	char* wav_name;
56 	unsigned long inner_range;
57 	unsigned long outer_range;
58 	int max_volume;
59 	int	pitch;
60 	int pad;
61 
62 };
63 
64 class Fragment_Type_Chunk : public Chunk_With_Children
65 {
66 public :
Fragment_Type_Chunk(Chunk_With_Children * parent,const char * name)67 	Fragment_Type_Chunk(Chunk_With_Children * parent,const char* name)
68 	: Chunk_With_Children (parent, "FRAGTYPE")
69 	{new Fragment_Type_Data_Chunk(this,name);}
70 
71 	Fragment_Type_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
72 
73 	const char* get_name();
74 
75 };
76 
77 
78 
79 
80 
81 
82 #endif
83