annotate libaf/format.c @ 33263:5f527a9a9521

Add an exit function. This function will allow performing clean-up operations. (MPlayer calls guiDone() before exiting, but only if the GUI has been initialized, i.e. if guiInit() has been called successfully. Any exit_player()/exit_player_with_rc() after GUI's cfg_read() until guiInit(), or any exit_player() during guiInit() itself will end the GUI without calling guiDone(). This exit function will at least handle abortions during guiInit() itself. It will be called twice in case of an guiExit() after GUI initialization - first directly, next by guiDone() via MPlayer's exit_player_with_rc().)
author ib
date Tue, 03 May 2011 12:19:22 +0000
parents 02b9c1a452e1
children febe300dbfc0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
28229
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
1 /*
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
2 * Copyright (C) 2005 Alex Beregszaszi
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
3 *
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
4 * This file is part of MPlayer.
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
5 *
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
6 * MPlayer is free software; you can redistribute it and/or modify
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
7 * it under the terms of the GNU General Public License as published by
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
8 * the Free Software Foundation; either version 2 of the License, or
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
9 * (at your option) any later version.
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
10 *
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
11 * MPlayer is distributed in the hope that it will be useful,
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
14 * GNU General Public License for more details.
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
15 *
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
16 * You should have received a copy of the GNU General Public License along
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
17 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
72d0b1444141 Replace informal license notices by standard license header
diego
parents: 24890
diff changeset
19 */
16115
69eadbd92faa added missing license header
alex
parents: 14748
diff changeset
20
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
21 #include <stdio.h>
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
22 #include <stdlib.h>
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
23 #include <string.h>
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
24 #include <inttypes.h>
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
25 #include <limits.h>
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
26
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
27 #include "af.h"
17863
8ec63246c118 last print on libaf to af_msg
reynaldo
parents: 16259
diff changeset
28 #include "help_mp.h"
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
29
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
30 // Convert from string to format
19108
5e767cabf4cd marks several read-only string parameters and function return-values which can only be used read-only as const. Patch by Stefan Huehner, stefan _AT huener-org
reynaldo
parents: 17876
diff changeset
31 int af_str2fmt(const char* str)
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
32 {
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
33 int format=0;
24595
85f669a84e7a cosmetics: misc typo fixes
diego
parents: 22748
diff changeset
34 // Scan for endianness
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
35 if(strstr(str,"be") || strstr(str,"BE"))
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
36 format |= AF_FORMAT_BE;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
37 else if(strstr(str,"le") || strstr(str,"LE"))
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
38 format |= AF_FORMAT_LE;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
39 else
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
40 format |= AF_FORMAT_NE;
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
41
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
42 // Scan for special formats
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
43 if(strstr(str,"mulaw") || strstr(str,"MULAW")){
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
44 format |= AF_FORMAT_MU_LAW; return format;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
45 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
46 if(strstr(str,"alaw") || strstr(str,"ALAW")){
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
47 format |= AF_FORMAT_A_LAW; return format;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
48 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
49 if(strstr(str,"ac3") || strstr(str,"AC3")){
30241
02b9c1a452e1 Add support for distinguishing between little- and big-endian SPDIF AC3
reimar
parents: 30236
diff changeset
50 format |= AF_FORMAT_AC3 | AF_FORMAT_16BIT; return format;
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
51 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
52 if(strstr(str,"mpeg2") || strstr(str,"MPEG2")){
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
53 format |= AF_FORMAT_MPEG2; return format;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
54 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
55 if(strstr(str,"imaadpcm") || strstr(str,"IMAADPCM")){
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
56 format |= AF_FORMAT_IMA_ADPCM; return format;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
57 }
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
58
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
59 // Scan for int/float
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
60 if(strstr(str,"float") || strstr(str,"FLOAT")){
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
61 format |= AF_FORMAT_F; return format;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
62 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
63 else
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
64 format |= AF_FORMAT_I;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
65
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
66 // Scan for signed/unsigned
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
67 if(strstr(str,"unsigned") || strstr(str,"UNSIGNED"))
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
68 format |= AF_FORMAT_US;
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
69 else
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
70 format |= AF_FORMAT_SI;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
71
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
72 return format;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
73 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
74
24890
a54a25221b79 Remove some pointless 'inline' qualifiers
uau
parents: 24595
diff changeset
75 int af_fmt2bits(int format)
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
76 {
30236
cb2e10d85c04 Add a hack to af_fmt2bits to recognize AC3 as a 16-bit format, since this
reimar
parents: 29263
diff changeset
77 if (AF_FORMAT_IS_AC3(format)) return 16;
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
78 return (format & AF_FORMAT_BITS_MASK)+8;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
79 // return (((format & AF_FORMAT_BITS_MASK)>>3)+1) * 8;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
80 #if 0
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
81 switch(format & AF_FORMAT_BITS_MASK)
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
82 {
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
83 case AF_FORMAT_8BIT: return 8;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
84 case AF_FORMAT_16BIT: return 16;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
85 case AF_FORMAT_24BIT: return 24;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
86 case AF_FORMAT_32BIT: return 32;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
87 case AF_FORMAT_48BIT: return 48;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
88 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
89 #endif
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
90 return -1;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
91 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
92
24890
a54a25221b79 Remove some pointless 'inline' qualifiers
uau
parents: 24595
diff changeset
93 int af_bits2fmt(int bits)
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
94 {
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
95 return (bits/8 - 1) << 3;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
96 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
97
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
98 /* Convert format to str input str is a buffer for the
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
99 converted string, size is the size of the buffer */
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
100 char* af_fmt2str(int format, char* str, int size)
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
101 {
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
102 int i=0;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
103
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
104 if (size < 1)
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
105 return NULL;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
106 size--; // reserve one for terminating 0
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
107
24595
85f669a84e7a cosmetics: misc typo fixes
diego
parents: 22748
diff changeset
108 // Endianness
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
109 if(AF_FORMAT_LE == (format & AF_FORMAT_END_MASK))
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
110 i+=snprintf(str,size-i,"little-endian ");
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
111 else
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
112 i+=snprintf(str,size-i,"big-endian ");
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
113
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
114 if(format & AF_FORMAT_SPECIAL_MASK){
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
115 switch(format & AF_FORMAT_SPECIAL_MASK){
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
116 case(AF_FORMAT_MU_LAW):
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
117 i+=snprintf(&str[i],size-i,"mu-law "); break;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
118 case(AF_FORMAT_A_LAW):
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
119 i+=snprintf(&str[i],size-i,"A-law "); break;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
120 case(AF_FORMAT_MPEG2):
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
121 i+=snprintf(&str[i],size-i,"MPEG-2 "); break;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
122 case(AF_FORMAT_AC3):
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
123 i+=snprintf(&str[i],size-i,"AC3 "); break;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
124 case(AF_FORMAT_IMA_ADPCM):
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
125 i+=snprintf(&str[i],size-i,"IMA-ADPCM "); break;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
126 default:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
127 i+=snprintf(&str[i],size-i,MSGTR_AF_FORMAT_UnknownFormat);
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
128 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
129 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
130 else{
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
131 // Bits
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
132 i+=snprintf(&str[i],size-i,"%d-bit ", af_fmt2bits(format));
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
133
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
134 // Point
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
135 if(AF_FORMAT_F == (format & AF_FORMAT_POINT_MASK))
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
136 i+=snprintf(&str[i],size-i,"float ");
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
137 else{
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
138 // Sign
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
139 if(AF_FORMAT_US == (format & AF_FORMAT_SIGN_MASK))
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
140 i+=snprintf(&str[i],size-i,"unsigned ");
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
141 else
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
142 i+=snprintf(&str[i],size-i,"signed ");
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
143
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
144 i+=snprintf(&str[i],size-i,"int ");
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
145 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
146 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
147 // remove trailing space
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
148 if (i > 0 && str[i - 1] == ' ')
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
149 i--;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
150 str[i] = 0; // make sure it is 0 terminated.
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
151 return str;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
152 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
153
16259
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
154 static struct {
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
155 const char *name;
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
156 const int format;
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
157 } af_fmtstr_table[] = {
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
158 { "mulaw", AF_FORMAT_MU_LAW },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
159 { "alaw", AF_FORMAT_A_LAW },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
160 { "mpeg2", AF_FORMAT_MPEG2 },
30241
02b9c1a452e1 Add support for distinguishing between little- and big-endian SPDIF AC3
reimar
parents: 30236
diff changeset
161 { "ac3le", AF_FORMAT_AC3_LE },
02b9c1a452e1 Add support for distinguishing between little- and big-endian SPDIF AC3
reimar
parents: 30236
diff changeset
162 { "ac3be", AF_FORMAT_AC3_BE },
02b9c1a452e1 Add support for distinguishing between little- and big-endian SPDIF AC3
reimar
parents: 30236
diff changeset
163 { "ac3ne", AF_FORMAT_AC3_NE },
16259
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
164 { "imaadpcm", AF_FORMAT_IMA_ADPCM },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
165
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
166 { "u8", AF_FORMAT_U8 },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
167 { "s8", AF_FORMAT_S8 },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
168 { "u16le", AF_FORMAT_U16_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
169 { "u16be", AF_FORMAT_U16_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
170 { "u16ne", AF_FORMAT_U16_NE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
171 { "s16le", AF_FORMAT_S16_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
172 { "s16be", AF_FORMAT_S16_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
173 { "s16ne", AF_FORMAT_S16_NE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
174 { "u24le", AF_FORMAT_U24_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
175 { "u24be", AF_FORMAT_U24_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
176 { "u24ne", AF_FORMAT_U24_NE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
177 { "s24le", AF_FORMAT_S24_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
178 { "s24be", AF_FORMAT_S24_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
179 { "s24ne", AF_FORMAT_S24_NE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
180 { "u32le", AF_FORMAT_U32_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
181 { "u32be", AF_FORMAT_U32_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
182 { "u32ne", AF_FORMAT_U32_NE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
183 { "s32le", AF_FORMAT_S32_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
184 { "s32be", AF_FORMAT_S32_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
185 { "s32ne", AF_FORMAT_S32_NE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
186 { "floatle", AF_FORMAT_FLOAT_LE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
187 { "floatbe", AF_FORMAT_FLOAT_BE },
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
188 { "floatne", AF_FORMAT_FLOAT_NE },
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28229
diff changeset
189
16259
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
190 { NULL, 0 }
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
191 };
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
192
19108
5e767cabf4cd marks several read-only string parameters and function return-values which can only be used read-only as const. Patch by Stefan Huehner, stefan _AT huener-org
reynaldo
parents: 17876
diff changeset
193 const char *af_fmt2str_short(int format)
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
194 {
16259
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
195 int i;
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
196
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
197 for (i = 0; af_fmtstr_table[i].name; i++)
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
198 if (af_fmtstr_table[i].format == format)
19109
6e840952870d Removes an unneeded cast. Patch by Stefan Huehner, stefan AT.. huehner.org
reynaldo
parents: 19108
diff changeset
199 return af_fmtstr_table[i].name;
16259
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
200
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
201 return "??";
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
202 }
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
203
19108
5e767cabf4cd marks several read-only string parameters and function return-values which can only be used read-only as const. Patch by Stefan Huehner, stefan _AT huener-org
reynaldo
parents: 17876
diff changeset
204 int af_str2fmt_short(const char* str)
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
205 {
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
206 int i;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
207
16259
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
208 for (i = 0; af_fmtstr_table[i].name; i++)
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
209 if (!strcasecmp(str, af_fmtstr_table[i].name))
bf5ee9e17e00 code reduction and less error prone, use the same table
alex
parents: 16115
diff changeset
210 return af_fmtstr_table[i].format;
14748
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
211
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
212 return -1;
85dc314b3d80 move the format related stuff to format.c
alex
parents:
diff changeset
213 }