r4019: *** empty log message ***
[wdq2wav.git] / wdq2wav.h
index 0caab1e72fdf3d0d2f6783a9a420041b579e3cc9..1b36d5016cdd6b417fa511d5a54d62d0d6a9d7e3 100644 (file)
--- a/wdq2wav.h
+++ b/wdq2wav.h
@@ -8,7 +8,7 @@
 **
 **  Copyright (c) 2003 Kevin Rosenberg
 **
-**  $Id: wdq2wav.h,v 1.7 2003/01/21 11:23:09 kevin Exp $
+**  $Id: wdq2wav.h,v 1.10 2003/02/12 07:24:32 kevin Exp $
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
@@ -24,6 +24,7 @@
 **  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 ******************************************************************************/
 
+#include <stdio.h>
 #include <iostream>
 #include <cstdio>
 #include <cstring>
 #include <sstream>
 #include <ctime>
 #include <fcntl.h>
-#include <unistd.h>
 #include <sys/types.h>
 #include <sys/stat.h>
+#ifdef WIN32
+#include <io.h>
+#include <getopt.h>
+#else
+#include <unistd.h>
+#endif
+
+#ifdef LINUX
+#include <endian.h>
+#if __BYTE_ORDER == __BIG_ENDIAN
+#define WORDS_BIG_ENDIAN 1
+#endif
+#endif
 
 extern const char* g_szIdStr;
 extern bool g_quiet;
@@ -46,7 +59,7 @@ void error_msg (const char *msg);
 void info_msg (const char *msg);
 void info_msg_sans_newline (const char *msg);
 
-bool wdq2wav (const char* wdq_fname, const int channel, const char *wav_fname);
+bool wdq2wav (const char* wdq_fname, const int channel, const char *wav_fname, bool play);
 
 class WindaqFile
 {
@@ -59,7 +72,7 @@ public:
   bool m_valid;
   std::string m_error;
   int m_fd;
-  unsigned int m_nChannels;
+  int m_nChannels;
   unsigned int m_nSamples;
   double m_sample_rate;
   unsigned int m_sr_denom, m_sr_numer;
@@ -104,6 +117,8 @@ class WavFile
   unsigned int m_nBitsPerSample;
   unsigned int m_nBytesPerSample;
   signed short int* m_data;
+  unsigned long int m_nHeaderBytes;
+  unsigned long int m_nDataBytes;
   unsigned long int m_nFileBytes;
 
   WavFile (WindaqChannel& wdq_channel, const char* fname);
@@ -111,6 +126,8 @@ class WavFile
 
   bool WriteFile ();
 
+  bool Play();
+  
  private:
   bool fill_header();
 };