annotate metadata.h @ 25661:293aeec83153

Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with an almost-trivial implementation. This allows making the builtin codec structs const, and it also makes clearer that this "selected" status is not used outside the init functions.
author reimar
date Sat, 12 Jan 2008 14:05:46 +0000
parents 3f0d00abc073
children 4129c8cfa742
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19532
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
1 /*
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
2 * Copyright (C) 2006 Benjamin Zores
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
3 * Set of helper routines for stream metadata and properties retrieval.
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
4 *
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
5 * This program is free software; you can redistribute it and/or modify
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
6 * it under the terms of the GNU General Public License as published by
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
7 * the Free Software Foundation; either version 2 of the License, or
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
8 * (at your option) any later version.
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
9 *
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
10 * This program is distributed in the hope that it will be useful,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
13 * GNU General Public License for more details.
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
14 *
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
16 * along with this program; if not, write to the Free Software Foundation,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
17 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
18 */
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
19
23689
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 19532
diff changeset
20 #ifndef METADATA_H
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 19532
diff changeset
21 #define METADATA_H
19532
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
22
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
23 typedef enum metadata_s metadata_t;
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
24 enum metadata_s {
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
25 /* common info */
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
26 META_NAME = 0,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
27
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
28 /* video stream properties */
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
29 META_VIDEO_CODEC,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
30 META_VIDEO_BITRATE,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
31 META_VIDEO_RESOLUTION,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
32
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
33 /* audio stream properties */
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
34 META_AUDIO_CODEC,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
35 META_AUDIO_BITRATE,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
36 META_AUDIO_SAMPLES,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
37
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
38 /* ID3 tags and other stream infos */
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
39 META_INFO_TITLE,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
40 META_INFO_ARTIST,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
41 META_INFO_ALBUM,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
42 META_INFO_YEAR,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
43 META_INFO_COMMENT,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
44 META_INFO_TRACK,
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
45 META_INFO_GENRE
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
46 };
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
47
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
48 char *get_metadata (metadata_t type);
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
49
23689
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 19532
diff changeset
50 #endif /* METADATA_H */
19532
13599373bb02 added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff changeset
51