Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

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.8  2004/08/26 08:05:03  csoutheren
00026  * Codecs now appear in abstract factory system
00027  * Fixed Windows factory bootstrap system (again)
00028  *
00029  * Revision 1.7  2004/08/09 11:11:33  csoutheren
00030  * Added stupid windows hack to force opalwavfile factories to register
00031  *
00032  * Revision 1.6  2004/07/15 11:13:49  rjongbloed
00033  * Migrated changes from crs_vxnml_devel branch into main trunk
00034  *
00035  * Revision 1.5.6.1  2004/07/07 07:10:11  csoutheren
00036  * Changed to use new factory based PWAVFile
00037  * Removed redundant blocking/unblocking when using G.723.1
00038  *
00039  * Revision 1.5  2002/09/16 01:14:15  robertj
00040  * Added #define so can select if #pragma interface/implementation is used on
00041  *   platform basis (eg MacOS) rather than compiler, thanks Robert Monaghan.
00042  *
00043  * Revision 1.4  2002/09/06 06:20:37  robertj
00044  * More cosmetic changes
00045  *
00046  * Revision 1.3  2002/08/08 13:00:02  craigs
00047  * Remove unused definition of LastReadCount thanks to Peter 'Luna' Runestig
00048  *
00049  * Revision 1.2  2002/08/05 10:03:47  robertj
00050  * Cosmetic changes to normalise the usage of pragma interface/implementation.
00051  *
00052  * Revision 1.1  2002/06/20 01:21:03  craigs
00053  * Initial version
00054  *
00055  */
00056 
00057 #ifndef __OPALWAVFILE_H
00058 #define __OPALWAVFILE_H
00059 
00060 #ifdef P_USE_PRAGMA
00061 #pragma interface
00062 #endif
00063 
00064 
00065 #include <ptclib/pwavfile.h>
00066 
00075 class OpalWAVFile : public PWAVFile
00076 {
00077   PCLASSINFO(OpalWAVFile, PWAVFile);
00078   public:
00079     OpalWAVFile(
00080       unsigned format = fmt_PCM 
00081     );
00082 
00095     OpalWAVFile(
00096       OpenMode mode,            
00097       int opts = ModeDefault,   
00098       unsigned format = fmt_PCM 
00099     );
00100 
00110     OpalWAVFile(
00111       const PFilePath & name,     
00112       OpenMode mode = ReadWrite,  
00113       int opts = ModeDefault,     
00114       unsigned format = fmt_PCM 
00115     );
00116 };
00117 
00118 #endif // __OPALWAVFILE_H
00119 
00120 
00121 // End of File ///////////////////////////////////////////////////////////////

Generated on Tue Mar 15 11:17:08 2005 for OpenH323 by  doxygen 1.4.0