Difference between revisions of "Hacker Guide/Variables"

From VideoLAN Wiki
Jump to navigation Jump to search
Line 8: Line 8:
  
 
=== var_Get ===
 
=== var_Get ===
 +
 +
'''va_Get*''' functions will get the value if the variable exist (error overwise).
 +
 
  var_Get ( vlc_object_t *, const char *, vlc_value_t * );
 
  var_Get ( vlc_object_t *, const char *, vlc_value_t * );
 
  var_GetBool( p_obj, psz_name );
 
  var_GetBool( p_obj, psz_name );
Line 16: Line 19:
 
  var_GetNonEmptyString( p_obj, psz_name );
 
  var_GetNonEmptyString( p_obj, psz_name );
 
  var_GetAddress( p_obj, psz_name );
 
  var_GetAddress( p_obj, psz_name );
 
will get the value if the variable exist (error overwise).
 
  
 
=== var_Inherit ===
 
=== var_Inherit ===

Revision as of 21:04, 21 March 2011

Introduction

VLC media player has a powerful "object variable" infrastructure, that can be used to pass information between modules.

It can be compared to an Observer Pattern.

Variable Functions

var_Get

va_Get* functions will get the value if the variable exist (error overwise).

var_Get ( vlc_object_t *, const char *, vlc_value_t * );
var_GetBool( p_obj, psz_name );
var_GetInteger( p_obj, psz_name );
var_GetTime( p_obj, psz_name );
var_GetFloat( p_obj, psz_name );
var_GetString( p_obj, psz_name );
var_GetNonEmptyString( p_obj, psz_name );
var_GetAddress( p_obj, psz_name );

var_Inherit

var_Inherit

will get the default value or the one setted by the parent object.

var_CreateGet

var_CreateGet

will create the variable and the get the default value if the variable wasn't already created. If the varible does exist before the call it will get the current value (and increment the refcount).

A variable must be created if you want to add a callback or change the value (with var_Set) of a variable