1219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard/*
2219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** Copyright 2003-2010, VisualOn, Inc.
3219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard **
4219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** Licensed under the Apache License, Version 2.0 (the "License");
5219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** you may not use this file except in compliance with the License.
6219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** You may obtain a copy of the License at
7219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard **
8219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard **     http://www.apache.org/licenses/LICENSE-2.0
9219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard **
10219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** Unless required by applicable law or agreed to in writing, software
11219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** distributed under the License is distributed on an "AS IS" BASIS,
12219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** See the License for the specific language governing permissions and
14219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard ** limitations under the License.
15219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard */
16219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard/*******************************************************************************
17219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	File:		voIndex.h
18219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
19219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	Content:	module and ID definition
20219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
21219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard*******************************************************************************/
22219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
23219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#ifndef __voIndex_H__
24219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define __voIndex_H__
25219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
26219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#ifdef __cplusplus
27219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgardextern "C" {
28219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#endif /* __cplusplus */
29219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
30219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#include "voType.h"
31219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
32219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard/* Define the module ID */
33219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_SOURCE_ID(id, name) \
34219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_SRC_##name = _VO_INDEX_SOURCE | id,
35219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
36219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_CODEC_ID(id, name) \
37219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_DEC_##name = _VO_INDEX_DEC | id, \
38219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_ENC_##name = _VO_INDEX_ENC | id,
39219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
40219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_EFFECT_ID(id, name) \
41219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_EFT_##name = _VO_INDEX_EFFECT | id,
42219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
43219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_SINK_ID(id, name) \
44219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_SNK_##name = _VO_INDEX_SINK | id,
45219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
46219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_FILTER_ID(id, name) \
47219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_FLT_##name = _VO_INDEX_FILTER | id,
48219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
49219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_OMX_ID(id, name) \
50219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_OMX_##name = _VO_INDEX_OMX | id,
51219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
52219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define _MAKE_MFW_ID(id, name) \
53219e2627f1e062c10645664b0d2470d4dfaf5083Mans RullgardVO_INDEX_MFW_##name = _VO_INDEX_MFW | id,
54219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
55219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgardenum
56219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard{
57219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_SOURCE		= 0x01000000,
58219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_DEC			= 0x02000000,
59219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_ENC			= 0x03000000,
60219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_EFFECT		= 0x04000000,
61219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_SINK			= 0x05000000,
62219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_FILTER		= 0x06000000,
63219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_OMX			= 0x07000000,
64219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_VO_INDEX_MFW			= 0x08000000,
65219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
66219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define file parser modules
67219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x010000, MP4)
68219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x020000, AVI)
69219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x030000, ASF)
70219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x040000, REAL)
71219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x050000, AUDIO)
72219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x060000, FLASH)
73219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x070000, OGG)
74219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x080000, MKV)
75219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
76219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define network source modules
77219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x110000, RTSP)
78219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x120000, HTTP)
79219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
80219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define CMMB source modules
81219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x200000, CMMB)
82219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x210000, CMMB_INNO)
83219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x220000, CMMB_TELE)
84219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x230000, CMMB_SIANO)
85219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
86219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define DVBT source modules
87219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x300000, DVBT)
88219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x310000, DVBT_DIBCOM)
89219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
90219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define other source modules
91219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SOURCE_ID (0x400000, ID3)
92219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
93219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define video codec modules
94219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x010000, H264)
95219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x020000, MPEG4)
96219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x030000, H263)
97219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x040000, S263)
98219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x050000, RV)
99219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x060000, WMV)
100219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x070000, DIVX3)
101219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x080000, MJPEG)
102219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x090000, MPEG2)
103219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x0A0000, VP6)
104219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
105219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define audio codec modules
106219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x210000, AAC)
107219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x220000, MP3)
108219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x230000, WMA)
109219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x240000, RA)
110219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x250000, AMRNB)
111219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x260000, AMRWB)
112219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x270000, AMRWBP)
113219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x280000, QCELP)
114219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x290000, EVRC)
115219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x2A0000, ADPCM)
116219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x2B0000, MIDI)
117219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x2C0000, AC3)
118219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x2D0000, FLAC)
119219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x2E0000, DRA)
120219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x2F0000, OGG)
121219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x300000, G729)
122219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
123219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define image codec modules
124219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x410000, JPEG)
125219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x420000, GIF)
126219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x430000, PNG)
127219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_CODEC_ID (0x440000, TIF)
128219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
129219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define effect modules
130219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_EFFECT_ID (0x010000, EQ)
131219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
132219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define sink modules
133219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x010000, VIDEO)
134219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x020000, AUDIO)
135219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x030000, CCRRR)
136219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x040000, CCRRV)
137219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
138219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x110000, MP4)
139219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x120000, AVI)
140219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_SINK_ID (0x130000, AFW)
141219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
142219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	// define media frame module ID
143219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_MFW_ID (0x010000, VOMMPLAY)
144219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_MFW_ID (0x020000, VOMMREC)
145219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard	_MAKE_MFW_ID (0x030000, VOME)
146219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard};
147219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
148219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
149219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard/* define the error ID */
150219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_NONE						0x00000000
151219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_FINISH					0x00000001
152219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_BASE						0X80000000
153219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_FAILED					0x80000001
154219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_OUTOF_MEMORY				0x80000002
155219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_NOT_IMPLEMENT			0x80000003
156219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_INVALID_ARG				0x80000004
157219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_INPUT_BUFFER_SMALL		0x80000005
158219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_OUTPUT_BUFFER_SMALL		0x80000006
159219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_WRONG_STATUS				0x80000007
160219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_WRONG_PARAM_ID			0x80000008
161219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_LICENSE_ERROR			0x80000009
162219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
163219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard/* xxx is the module ID
164219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_FAILED					0x8xxx0001
165219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_OUTOF_MEMORY				0x8xxx0002
166219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_NOT_IMPLEMENT			0x8xxx0003
167219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_INVALID_ARG				0x8xxx0004
168219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_INPUT_BUFFER_SMALL		0x8xxx0005
169219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_OUTPUT_BUFFER_SMALL		0x8xxx0006
170219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_WRONG_STATUS				0x8xxx0007
171219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_WRONG_PARAM_ID			0x8xxx0008
172219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_LICENSE_ERROR			0x8xxx0009
173219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard// Module own error ID
174219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ERR_Module					0x8xxx0X00
175219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard*/
176219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
177219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define	VO_PID_COMMON_BASE				 0x40000000						/*!< The base of common param ID */
178219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define	VO_PID_COMMON_QUERYMEM			(VO_PID_COMMON_BASE | 0X0001)	/*!< Query the memory needed; Reserved. */
179219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define	VO_PID_COMMON_INPUTTYPE			(VO_PID_COMMON_BASE | 0X0002)	/*!< Set or get the input buffer type. VO_INPUT_TYPE */
180219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define	VO_PID_COMMON_HASRESOURCE		(VO_PID_COMMON_BASE | 0X0003)	/*!< Query it has resource to be used. VO_U32 *, 1 have, 0 No */
181219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define	VO_PID_COMMON_HEADDATA			(VO_PID_COMMON_BASE | 0X0004)	/*!< Decoder track header data. VO_CODECBUFFER * */
182219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define	VO_PID_COMMON_FLUSH				(VO_PID_COMMON_BASE | 0X0005)	/*!< Flush the codec buffer. VO_U32 *, 1 Flush, 0 No * */
183219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
184219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard/*
185219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard// Module Param ID
186219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#define VO_ID_Mdoule					0x0xxx1000
187219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard*/
188219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
189219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#ifdef __cplusplus
190219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard}
191219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#endif /* __cplusplus */
192219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard
193219e2627f1e062c10645664b0d2470d4dfaf5083Mans Rullgard#endif // __voIndex_H__
194