Merge pull request #506 from andrewcsmith/patch-2
[supercollider.git] / include / plugin_interface / SC_sndfile_stub.h
blob360a566fb47b3bb64a9f01749ef7efb861920e1b
1 /*
2 ** Copyright (C) 1999-2009 Erik de Castro Lopo <erikd@mega-nerd.com>
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU Lesser General Public License as published by
6 ** the Free Software Foundation; either version 2.1 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU Lesser General Public License for more details.
14 ** You should have received a copy of the GNU Lesser General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 ** SC_sndfile_stub.h -- stub of libsndfile definitions, used to preserve binary compatibility when libsndfile unavailable
21 ** taken from sndfile.h
22 **/
26 /* A SNDFILE* pointer can be passed around much like stdio.h's FILE* pointer. */
28 typedef struct SNDFILE_tag SNDFILE ;
32 #if (defined (_MSCVER) || defined (_MSC_VER))
33 typedef __int64_t sf_count_t ;
34 #define SF_COUNT_MAX 0x7fffffffffffffffi64
35 #else
36 typedef off_t sf_count_t ;
37 #define SF_COUNT_MAX 0x7FFFFFFFFFFFFFFFLL
38 #endif
41 /* A pointer to a SF_INFO structure is passed to sf_open_read () and filled in.
42 ** On write, the SF_INFO structure is filled in by the user and passed into
43 ** sf_open_write ().
46 struct SF_INFO
47 { sf_count_t frames ; /* Used to be called samples. Changed to avoid confusion. */
48 int samplerate ;
49 int channels ;
50 int format ;
51 int sections ;
52 int seekable ;
53 } ;
55 typedef struct SF_INFO SF_INFO ;