tuned out the knocking
[platform/upstream/libvorbis.git] / win32 / src / shmmap.h
1 /********************************************************************
2  *                                                                  *
3  * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
4  * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
5  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
7  *                                                                  *
8  * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
9  * by the XIPHOPHORUS Company http://www.xiph.org/                  *
10
11  ********************************************************************
12
13  function: Defines the structure of the shared memory segment.
14
15            Any new globals added to vorbis.dll which need to accessed
16            by other DLLs (vorbisenc.dll) should be added here.
17
18  created:  06-Sep-2001, Chris Wolf 
19
20  last mod: $Id: shmmap.h,v 1.1 2001/09/11 20:16:11 cwolf Exp $
21  ********************************************************************/
22 #ifndef _shmmap_h_
23 # define _shmmap_h_
24
25 #include <codec_internal.h>
26
27 #define NUMELEMENTS(x) (sizeof(x)/sizeof(x[0]))
28
29 #pragma pack(push, shared_map, 4)  // use a known structure alignment
30 typedef struct shared_map
31 {
32   vorbis_func_time      **p_time_P;
33   vorbis_func_floor     **p_floor_P;
34   vorbis_func_residue   **p_residue_P;
35   vorbis_func_mapping   **p_mapping_P;
36 } SHARED_MAP;
37 #pragma pack(pop, shared_map)
38
39 extern SHARED_MAP* g_shared_map;
40 extern SHARED_MAP* table_map2mem(int *len);
41 #endif /* _shmmap_h_ */