X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=wdq2wav.h;h=fceee293df2b9819095020e7dad1be57d33971c5;hb=c685afb2e6c30a8d010cc449fdb921e98dfccdfd;hp=a5076c0b653d91fa3e8fc9d2778769fbc4f52307;hpb=9ccb27ac548ef8ff8f23cec5574d6d9fb8494779;p=wdq2wav.git diff --git a/wdq2wav.h b/wdq2wav.h index a5076c0..fceee29 100644 --- a/wdq2wav.h +++ b/wdq2wav.h @@ -35,14 +35,14 @@ #include #include #include -#ifdef WIN32 +#ifdef _WIN32 #include #include #else #include #endif -#ifdef LINUX +#ifdef __linux__ #include #if __BYTE_ORDER == __BIG_ENDIAN #define WORDS_BIG_ENDIAN 1 @@ -73,6 +73,7 @@ public: std::string m_error; int m_fd; bool m_bLegacy_format; + bool m_bHires; int m_nMaxChannels; int m_nChannels; unsigned long int m_nSamples; @@ -84,9 +85,12 @@ public: unsigned int m_time_acq_start; unsigned int m_time_acq_stop; double m_time_between_channel_samples; + + bool any_packed_channels(); + bool is_channel_packed(int iChannel); }; -class WindaqChannel +class WindaqChannel { public: WindaqFile& r_wdq; @@ -100,16 +104,18 @@ public: signed short int m_max_raw_data; double m_max_scaled_data; double m_min_scaled_data; + double m_raw_mean; WindaqChannel (WindaqFile& wdq, const int channel); ~WindaqChannel (); + double raw2measured(signed short int raw) const { return (raw * m_slope) + m_intercept; } private: bool read_channel_data(); }; -class WavFile +class WavFile { public: bool m_valid; @@ -131,7 +137,7 @@ class WavFile bool WriteFile (); bool Play(); - + private: bool fill_header(); }; @@ -140,5 +146,5 @@ template inline T nearest (double x) { return (x > 0 ? - static_cast(x+0.5) : static_cast(x-0.5)); + static_cast(x+0.5) : static_cast(x-0.5)); }