-int main_GetIntVariable( char *psz_name, int i_default );
-char * main_GetPszVariable( char *psz_name, char *psz_default );
-void main_PutIntVariable( char *psz_name, int i_value );
-void main_PutPszVariable( char *psz_name, char *psz_value );
+struct vlc_t
+{
+ VLC_COMMON_MEMBERS
+
+ /* Global properties */
+ int i_argc; /* command line arguments count */
+ char ** ppsz_argv; /* command line arguments */
+ char * psz_homedir; /* user's home directory */
+ char * psz_configfile; /* location of config file */
+
+ /* Fast memcpy plugin used */
+ module_t * p_memcpy_module;
+#if defined( UNDER_CE )
+ void* ( __cdecl *pf_memcpy ) ( void *, const void *, size_t );
+ void* ( __cdecl *pf_memset ) ( void *, int, size_t );
+#else
+ void* ( *pf_memcpy ) ( void *, const void *, size_t );
+ void* ( *pf_memset ) ( void *, int, size_t );
+#endif
+
+ /* Shared data - these structures are accessed directly from p_vlc by
+ * several modules */
+
+ /* Locks */
+ vlc_mutex_t config_lock; /* lock for the config file */
+#ifdef SYS_DARWIN
+ vlc_mutex_t quicktime_lock; /* QT is not thread safe on OSX */
+#endif
+
+ /* Structure storing the action name / key associations */
+ struct hotkey
+ {
+ const char *psz_action;
+ int i_action;
+ int i_key;
+
+ } *p_hotkeys;
+};