annotate m_config.h @ 31816:ab9824b6acc7

dvd: Improve seeking by chapters. The current code seeks to the start of the chapter. From this position, it then tries to figure out the starting cell. This is completely suboptimal and error prone since the starting cell can be directly deduced from the chapter. patch by Olivier Rolland, billl users.sourceforge net
author diego
date Sun, 01 Aug 2010 22:51:15 +0000
parents c1a3f1bbba26
children 1ca3d798b518
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30429
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
1 /*
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
2 * This file is part of MPlayer.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
3 *
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
5 * it under the terms of the GNU General Public License as published by
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
7 * (at your option) any later version.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
8 *
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
12 * GNU General Public License for more details.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
13 *
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
14 * You should have received a copy of the GNU General Public License along
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
17 */
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 29263
diff changeset
18
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25634
diff changeset
19 #ifndef MPLAYER_M_CONFIG_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25634
diff changeset
20 #define MPLAYER_M_CONFIG_H
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
21
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
22 /// \defgroup Config Config manager
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
23 ///
18283
67d35fe89c8d Fix most of the mistakes pointed out by Diego.
albeu
parents: 18258
diff changeset
24 /// m_config provides an API to manipulate the config variables in MPlayer.
18316
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
25 /// It makes use of the \ref Options API to provide a context stack that
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
26 /// allows saving and later restoring the state of all variables.
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
27 ///@{
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
28
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
29 /// \file
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
30
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
31 typedef struct m_config_option m_config_option_t;
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
32 typedef struct m_config_save_slot m_config_save_slot_t;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
33 /// \ingroup ConfigProfiles
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
34 typedef struct m_profile m_profile_t;
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
35 struct m_option;
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
36 struct m_option_type;
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
37
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
38 /// Config option save slot
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
39 struct m_config_save_slot {
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
40 /// Previous level slot.
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
41 m_config_save_slot_t* prev;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
42 /// Level at which the save was made.
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
43 int lvl;
18316
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
44 // We have to store other datatypes in this as well,
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
45 // so make sure we get properly aligned addresses.
13246
5dea9e3618ba alignment for SPARC64, second try
reimar
parents: 10594
diff changeset
46 unsigned char data[0] __attribute__ ((aligned (8)));
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
47 };
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
48
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
49 /// Config option
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
50 struct m_config_option {
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
51 m_config_option_t* next;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
52 /// Full name (ie option:subopt).
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
53 char* name;
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
54 /// Option description.
25225
51c23a18a17b First try to mark some things in m_config correctly as const
reimar
parents: 23689
diff changeset
55 const struct m_option* opt;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
56 /// Save slot stack.
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
57 m_config_save_slot_t* slots;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
58 /// See \ref ConfigOptionFlags.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
59 unsigned int flags;
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
60 };
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
61
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
62 /// \defgroup ConfigProfiles Config profiles
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
63 /// \ingroup Config
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
64 ///
18283
67d35fe89c8d Fix most of the mistakes pointed out by Diego.
albeu
parents: 18258
diff changeset
65 /// Profiles allow to predefine some sets of options that can then
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
66 /// be applied later on with the internal -profile option.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
67 ///
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
68 ///@{
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
69
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
70 /// Config profile
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
71 struct m_profile {
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
72 m_profile_t* next;
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
73 char* name;
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
74 char* desc;
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
75 int num_opts;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
76 /// Option/value pair array.
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
77 char** opts;
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
78 };
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
79
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
80 ///@}
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
81
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
82 /// Config object
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
83 /** \ingroup Config */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
84 typedef struct m_config {
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
85 /// Registered options.
18283
67d35fe89c8d Fix most of the mistakes pointed out by Diego.
albeu
parents: 18258
diff changeset
86 /** This contains all options and suboptions.
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26029
diff changeset
87 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
88 m_config_option_t* opts;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
89 /// Current stack level.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
90 int lvl;
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
91 /// \ref OptionParserModes
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
92 int mode;
18283
67d35fe89c8d Fix most of the mistakes pointed out by Diego.
albeu
parents: 18258
diff changeset
93 /// List of defined profiles.
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
94 m_profile_t* profiles;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
95 /// Depth when recursively including profiles.
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
96 int profile_depth;
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
97 /// Options defined by the config itself.
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
98 struct m_option* self_opts;
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
99 } m_config_t;
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
100
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
101 /// \defgroup ConfigOptionFlags Config option flags
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
102 /// \ingroup Config
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
103 ///@{
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
104
18316
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
105 /// Set if an option has been set at the current level.
9912
39444d65c4cb Don't save restore all options wich point to the same variable.
albeu
parents: 8168
diff changeset
106 #define M_CFG_OPT_SET (1<<0)
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
107
18283
67d35fe89c8d Fix most of the mistakes pointed out by Diego.
albeu
parents: 18258
diff changeset
108 /// Set if another option already uses the same variable.
9912
39444d65c4cb Don't save restore all options wich point to the same variable.
albeu
parents: 8168
diff changeset
109 #define M_CFG_OPT_ALIAS (1<<1)
39444d65c4cb Don't save restore all options wich point to the same variable.
albeu
parents: 8168
diff changeset
110
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
111 ///@}
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
112
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
113 /// Create a new config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
114 /** \ingroup Config
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
115 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
116 m_config_t*
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
117 m_config_new(void);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
118
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
119 /// Free a config object.
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
120 void
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
121 m_config_free(m_config_t* config);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
122
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
123 /// Push a new context.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
124 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
125 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
126 void
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
127 m_config_push(m_config_t* config);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
128
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
129 /// Pop the current context restoring the previous context state.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
130 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
131 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
132 void
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
133 m_config_pop(m_config_t* config);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
134
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
135 /// Register some options to be used.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
136 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
137 * \param args An array of \ref m_option struct.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
138 * \return 1 on success, 0 on failure.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
139 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
140 int
25225
51c23a18a17b First try to mark some things in m_config correctly as const
reimar
parents: 23689
diff changeset
141 m_config_register_options(m_config_t *config, const struct m_option *args);
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
142
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
143 /// Set an option.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
144 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
145 * \param arg The option's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
146 * \param param The value of the option, can be NULL.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
147 * \return See \ref OptionParserReturn.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
148 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
149 int
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
150 m_config_set_option(m_config_t *config, char* arg, char* param);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
151
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
152 /// Check if an option setting is valid.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
153 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
154 * \param arg The option's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
155 * \param param The value of the option, can be NULL.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
156 * \return See \ref OptionParserReturn.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
157 */
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
158 int
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
159 m_config_check_option(m_config_t *config, char* arg, char* param);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
160
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
161 /// Get the option matching the given name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
162 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
163 * \param arg The option's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
164 */
25225
51c23a18a17b First try to mark some things in m_config correctly as const
reimar
parents: 23689
diff changeset
165 const struct m_option*
8164
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
166 m_config_get_option(m_config_t *config, char* arg);
487cfc28525d New config system + cleanup of header inter dependency
albeu
parents:
diff changeset
167
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
168 /// Print a list of all registered options.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
169 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
170 */
8168
ff6a98628e6c Fix the Gui with NEW_CONFIG
albeu
parents: 8164
diff changeset
171 void
ff6a98628e6c Fix the Gui with NEW_CONFIG
albeu
parents: 8164
diff changeset
172 m_config_print_option_list(m_config_t *config);
ff6a98628e6c Fix the Gui with NEW_CONFIG
albeu
parents: 8164
diff changeset
173
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
174 /// \addtogroup ConfigProfiles
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
175 ///@{
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
176
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
177 /// Find the profile with the given name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
178 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
179 * \param arg The profile's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
180 * \return The profile object or NULL.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
181 */
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
182 m_profile_t*
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
183 m_config_get_profile(m_config_t* config, char* name);
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
184
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
185 /// Get the profile with the given name, creating it if necessary.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
186 /** \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
187 * \param arg The profile's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
188 * \return The profile object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
189 */
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
190 m_profile_t*
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
191 m_config_add_profile(m_config_t* config, char* name);
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
192
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
193 /// Set the description of a profile.
18316
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
194 /** Used by the config file parser when defining a profile.
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26029
diff changeset
195 *
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
196 * \param p The profile object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
197 * \param arg The profile's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
198 */
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
199 void
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
200 m_profile_set_desc(m_profile_t* p, char* desc);
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
201
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
202 /// Add an option to a profile.
18316
b3be7df634b0 spelling/grammar/wording fixes in doxygen and non-doxygen comments
diego
parents: 18283
diff changeset
203 /** Used by the config file parser when defining a profile.
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26029
diff changeset
204 *
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
205 * \param config The config object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
206 * \param p The profile object.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
207 * \param name The option's name.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
208 * \param val The option's value.
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
209 */
17471
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
210 int
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
211 m_config_set_profile_option(m_config_t* config, m_profile_t* p,
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
212 char* name, char* val);
63909962d3fc Profiles support.
albeu
parents: 13246
diff changeset
213
25634
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
214 /// Enables profile usage
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
215 /** Used by the config file parser when loading a profile.
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26029
diff changeset
216 *
25634
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
217 * \param config The config object.
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
218 * \param p The profile object.
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
219 */
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
220 void
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
221 m_config_set_profile(m_config_t* config, m_profile_t* p);
4344e84f7a9f export m_config_set_profile()
ben
parents: 25225
diff changeset
222
18258
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
223 ///@}
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
224
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
225 ///@}
96568be4bfdc Doxygen attack!
albeu
parents: 17471
diff changeset
226
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25634
diff changeset
227 #endif /* MPLAYER_M_CONFIG_H */