summaryrefslogtreecommitdiff
path: root/3dc/win95/fragchnk.hpp
diff options
context:
space:
mode:
Diffstat (limited to '3dc/win95/fragchnk.hpp')
-rw-r--r--3dc/win95/fragchnk.hpp82
1 files changed, 82 insertions, 0 deletions
diff --git a/3dc/win95/fragchnk.hpp b/3dc/win95/fragchnk.hpp
new file mode 100644
index 0000000..4fc806e
--- /dev/null
+++ b/3dc/win95/fragchnk.hpp
@@ -0,0 +1,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 \ No newline at end of file