2 #ifndef INC_CWaveData
\r
3 #define INC_CWaveData
\r
6 #include "CRingBuffer.h"
\r
10 //
\83C
\83\93\83N
\83\8b\81[
\83h
\82Í
\95K
\82¸
\95K
\97v
\82È
\95¨
\82¾
\82¯
\r
11 //
\93à
\95\94\82Å
\97\98\97p
\82·
\82é
\82¾
\82¯
\82Ì
\95¨
\82Í
\83\
\81[
\83X
\82É
\8bL
\8fq
\r
13 //
\8aÖ
\90\94\96¼
\82Í
\83\8d\81[
\83\8f\83L
\83\83\83\81\83\8b\83P
\81[
\83X
\82Æ
\82·
\82é
\r
16 // wave buffer struct
\r
17 struct StructWaveBuffer
\r
19 //
\83o
\83b
\83t
\83@
\82Ö
\82Ì
\83|
\83C
\83\93\83^
\r
20 char* m_pWaveBuffer;
\r
21 //
\98^
\89¹
\8e\9e\8aÔ [
\83~
\83\8a\95b]
\r
22 DWORD m_RecorMilliSecond;
\r
23 //
\83o
\83b
\83t
\83@
\83T
\83C
\83Y [byte]
\r
28 ////////////////////////////////////////////////////////////////////////////////
\r
30 // Wave
\83f
\81[
\83^
\82ð
\88µ
\82¤
\83N
\83\89\83X
\r
31 //
\83o
\83b
\83t
\83@
\82Ì
\8aÇ
\97\9d\81i
\8am
\95Û
\82Æ
\89ð
\95ú
\81j
\82ð
\8ds
\82¤
\r
32 //
\83L
\83\85\81[
\82ð
\97p
\82¢
\82Ä
\83o
\83b
\83t
\83@
\8aÇ
\97\9d\82ð
\8ds
\82¤
\r
33 ////////////////////////////////////////////////////////////////////////////////
\r
34 class CWaveData : public CRingBuffer<StructWaveBuffer>
\r
36 ////////////////////////////////////////////////////////////////////////////////
\r
37 //
\83\81\83\93\83o
\95Ï
\90\94\r
38 ////////////////////////////////////////////////////////////////////////////////
\r
40 ////////////////////////////////////////////////////////////////////////////////
\r
41 //
\83R
\83\93\83X
\83g
\83\89\83N
\83^
\r
42 ////////////////////////////////////////////////////////////////////////////////
\r
46 ////////////////////////////////////////////////////////////////////////////////
\r
47 //
\83f
\83X
\83g
\83\89\83N
\83^
\r
48 ////////////////////////////////////////////////////////////////////////////////
\r
52 ////////////////////////////////////////////////////////////////////////////////
\r
53 // static
\8aÖ
\90\94\81A
\83R
\81[
\83\8b\83o
\83b
\83N
\8aÖ
\90\94\r
54 ////////////////////////////////////////////////////////////////////////////////
\r
55 ////////////////////////////////////////////////////////////////////////////////
\r
56 //
\91\80\8dì
\83\81\83\
\83b
\83h
\r
57 ////////////////////////////////////////////////////////////////////////////////
\r
59 //
\83o
\83b
\83t
\83@
\82ð
\8am
\95Û
\r
60 bool allocate(int in_BufferNumber, DWORD in_RecorMilliSecond, DWORD in_BufferSize)
\r
62 if(!CRingBuffer::allocate(in_BufferNumber) || in_BufferSize == 0){
\r
66 for(int i = 0; i < in_BufferNumber; i++){
\r
67 StructWaveBuffer tempWaveBuffer;
\r
68 tempWaveBuffer.m_RecorMilliSecond = in_RecorMilliSecond;
\r
69 tempWaveBuffer.m_BufferSize = in_BufferSize;
\r
70 tempWaveBuffer.m_pWaveBuffer = new char[tempWaveBuffer.m_BufferSize];
\r
71 *at(i) = tempWaveBuffer;
\r
79 for(size_t i = 0; i < size(); i++){
\r
80 StructWaveBuffer* tempWaveBuffer = at(i);
\r
81 delete tempWaveBuffer->m_pWaveBuffer;
\r
83 CRingBuffer::clear();
\r
86 ////////////////////////////////////////////////////////////////////////////////
\r
87 //
\91®
\90«
\83\81\83\
\83b
\83h
\r
88 ////////////////////////////////////////////////////////////////////////////////
\r
89 ////////////////////////////////////////////////////////////////////////////////
\r
90 //
\83C
\83e
\83\8c\81[
\83V
\83\87\83\93\r
91 ////////////////////////////////////////////////////////////////////////////////
\r
92 ////////////////////////////////////////////////////////////////////////////////
\r
94 ////////////////////////////////////////////////////////////////////////////////
\r
95 ////////////////////////////////////////////////////////////////////////////////
\r
97 ////////////////////////////////////////////////////////////////////////////////
\r
98 ////////////////////////////////////////////////////////////////////////////////
\r
99 //
\8f\83\90\88\89¼
\91z
\8aÖ
\90\94\81A
\92è
\8b`
\82Ì
\82Ý
\81i
\94ñ
\8eÀ
\91\95\92ñ
\8b\9f\81j
\r
100 ////////////////////////////////////////////////////////////////////////////////
\r
101 ////////////////////////////////////////////////////////////////////////////////
\r
102 //
\93à
\95\94\83N
\83\89\83X
\r
103 ////////////////////////////////////////////////////////////////////////////////
\r
109 #endif //INC_CWaveData
\r