opalwavfile.h

Go to the documentation of this file.
00001 /*
00002  * OpalWavFile.h
00003  *
00004  * WAV file class with auto-PCM conversion
00005  *
00006  * OpenH323 Library
00007  *
00008  * Copyright (c) 2002 Equivalence Pty. Ltd.
00009  *
00010  * The contents of this file are subject to the Mozilla Public License
00011  * Version 1.0 (the "License"); you may not use this file except in
00012  * compliance with the License. You may obtain a copy of the License at
00013  * http://www.mozilla.org/MPL/
00014  *
00015  * Software distributed under the License is distributed on an "AS IS"
00016  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
00017  * the License for the specific language governing rights and limitations
00018  * under the License.
00019  *
00020  * The Original Code is Open H323 Library.
00021  *
00022  * Contributor(s): ______________________________________.
00023  *
00024  * $Log: opalwavfile.h,v $
00025  * Revision 1.9  2005/11/30 13:05:01  csoutheren
00026  * Changed tags for Doxygen
00027  *
00028  * Revision 1.8  2004/08/26 08:05:03  csoutheren
00029  * Codecs now appear in abstract factory system
00030  * Fixed Windows factory bootstrap system (again)
00031  *
00032  * Revision 1.7  2004/08/09 11:11:33  csoutheren
00033  * Added stupid windows hack to force opalwavfile factories to register
00034  *
00035  * Revision 1.6  2004/07/15 11:13:49  rjongbloed
00036  * Migrated changes from crs_vxnml_devel branch into main trunk
00037  *
00038  * Revision 1.5.6.1  2004/07/07 07:10:11  csoutheren
00039  * Changed to use new factory based PWAVFile
00040  * Removed redundant blocking/unblocking when using G.723.1
00041  *
00042  * Revision 1.5  2002/09/16 01:14:15  robertj
00043  * Added #define so can select if #pragma interface/implementation is used on
00044  *   platform basis (eg MacOS) rather than compiler, thanks Robert Monaghan.
00045  *
00046  * Revision 1.4  2002/09/06 06:20:37  robertj
00047  * More cosmetic changes
00048  *
00049  * Revision 1.3  2002/08/08 13:00:02  craigs
00050  * Remove unused definition of LastReadCount thanks to Peter 'Luna' Runestig
00051  *
00052  * Revision 1.2  2002/08/05 10:03:47  robertj
00053  * Cosmetic changes to normalise the usage of pragma interface/implementation.
00054  *
00055  * Revision 1.1  2002/06/20 01:21:03  craigs
00056  * Initial version
00057  *
00058  */
00059 
00060 #ifndef __OPALWAVFILE_H
00061 #define __OPALWAVFILE_H
00062 
00063 #ifdef P_USE_PRAGMA
00064 #pragma interface
00065 #endif
00066 
00067 
00068 #include <ptclib/pwavfile.h>
00069 
00078 class OpalWAVFile : public PWAVFile
00079 {
00080   PCLASSINFO(OpalWAVFile, PWAVFile);
00081   public:
00082     OpalWAVFile(
00083       unsigned format = fmt_PCM 
00084     );
00085 
00098     OpalWAVFile(
00099       OpenMode mode,            
00100       int opts = ModeDefault,   
00101       unsigned format = fmt_PCM 
00102     );
00103 
00113     OpalWAVFile(
00114       const PFilePath & name,     
00115       OpenMode mode = ReadWrite,  
00116       int opts = ModeDefault,     
00117       unsigned format = fmt_PCM 
00118     );
00119 };
00120 
00121 #endif // __OPALWAVFILE_H
00122 
00123 
00124 // End of File ///////////////////////////////////////////////////////////////

Generated on Sat Sep 23 04:15:27 2006 for OpenH323 by  doxygen 1.4.7