Exemplo n.º 1
0
static void
gst_cmml_tag_stream_set_property (GObject * object, guint property_id,
    const GValue * value, GParamSpec * pspec)
{
  GstCmmlTagStream *stream = GST_CMML_TAG_STREAM (object);

  switch (property_id) {
    case GST_CMML_TAG_STREAM_TIMEBASE:
      g_free (stream->timebase);
      stream->timebase = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_STREAM_UTC:
      g_free (stream->utc);
      stream->utc = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_STREAM_IMPORTS:
    {
      GValueArray *va = g_value_get_boxed (value);

      if (stream->imports)
        g_value_array_free (stream->imports);
      stream->imports = va != NULL ? g_value_array_copy (va) : NULL;
      break;
    }
    default:
      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
  }
}
Exemplo n.º 2
0
static void
gst_cmml_tag_clip_set_property (GObject * object, guint property_id,
    const GValue * value, GParamSpec * pspec)
{
  GstCmmlTagClip *clip = GST_CMML_TAG_CLIP (object);

  switch (property_id) {
    case GST_CMML_TAG_CLIP_EMPTY:
      clip->empty = g_value_get_boolean (value);
      break;
    case GST_CMML_TAG_CLIP_ID:
      g_free (clip->id);
      clip->id = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_TRACK:
      g_free (clip->track);
      clip->track = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_START_TIME:
      clip->start_time = g_value_get_uint64 (value);
      break;
    case GST_CMML_TAG_CLIP_END_TIME:
      clip->end_time = g_value_get_uint64 (value);
      break;
    case GST_CMML_TAG_CLIP_ANCHOR_HREF:
      g_free (clip->anchor_href);
      clip->anchor_href = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_ANCHOR_TEXT:
      g_free (clip->anchor_text);
      clip->anchor_text = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_IMG_SRC:
      g_free (clip->img_src);
      clip->img_src = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_IMG_ALT:
      g_free (clip->img_alt);
      clip->img_alt = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_DESC_TEXT:
      g_free (clip->desc_text);
      clip->desc_text = (guchar *) g_value_dup_string (value);
      break;
    case GST_CMML_TAG_CLIP_META:
    {
      GValueArray *va = (GValueArray *) g_value_get_boxed (value);

      if (clip->meta)
        g_value_array_free (clip->meta);

      clip->meta = va != NULL ? g_value_array_copy (va) : NULL;

      break;
    }
  }
}
static void
tp_base_media_call_stream_add_candidates (TpSvcCallStreamInterfaceMedia *iface,
    const GPtrArray *candidates,
    DBusGMethodInvocation *context)
{
  TpBaseMediaCallStream *self = TP_BASE_MEDIA_CALL_STREAM (iface);
  TpBaseMediaCallStreamClass *klass =
      TP_BASE_MEDIA_CALL_STREAM_GET_CLASS (self);
  GPtrArray *accepted_candidates = NULL;
  guint i;
  GError *error = NULL;

  if (klass->add_local_candidates == NULL)
    {
      GError e = { TP_ERROR, TP_ERROR_NOT_IMPLEMENTED,
          "Connection Manager did not implement "
          "TpBaseMediaCallStream::add_local_candidates vmethod" };
      dbus_g_method_return_error (context, &e);
      return;
    }

  DEBUG ("Adding %d candidates to stream %s", candidates->len,
      tp_base_call_stream_get_object_path ((TpBaseCallStream *) self));

  accepted_candidates = klass->add_local_candidates (self, candidates, &error);
  if (accepted_candidates == NULL)
    {
      dbus_g_method_return_error (context, error);
      g_clear_error (&error);
      return;
    }

  for (i = 0; i < accepted_candidates->len; i++)
    {
      GValueArray *c = g_ptr_array_index (accepted_candidates, i);

      G_GNUC_BEGIN_IGNORE_DEPRECATIONS
      g_ptr_array_add (self->priv->local_candidates,
          g_value_array_copy (c));
      G_GNUC_END_IGNORE_DEPRECATIONS
    }

  tp_svc_call_stream_interface_media_emit_local_candidates_added (self,
      accepted_candidates);
  tp_svc_call_stream_interface_media_return_from_add_candidates (context);

  g_ptr_array_unref (accepted_candidates);
}
static void
gst_audio_iir_filter_init (GstAudioIIRFilter * self)
{
  GValue v = { 0, };
  GValueArray *a;

  a = g_value_array_new (1);

  g_value_init (&v, G_TYPE_DOUBLE);
  g_value_set_double (&v, 1.0);
  g_value_array_append (a, &v);
  g_value_unset (&v);

  gst_audio_iir_filter_update_coefficients (self, a, g_value_array_copy (a));

  g_mutex_init (&self->lock);
}
Exemplo n.º 5
0
gboolean
rb_signal_accumulator_value_array (GSignalInvocationHint *hint,
				   GValue *return_accu,
				   const GValue *handler_return,
				   gpointer bleh)
{
	GValueArray *a;
	GValueArray *b;
	int i;

	if (handler_return == NULL)
		return TRUE;

	a = NULL;
	if (G_VALUE_HOLDS_BOXED (return_accu)) {
		a = g_value_get_boxed (return_accu);
		if (a != NULL) {
			a = g_value_array_copy (a);
		}
	}

	if (a == NULL) {
		a = g_value_array_new (1);
	}

	if (G_VALUE_HOLDS_BOXED (handler_return)) {
		b = g_value_get_boxed (handler_return);
		for (i=0; i < b->n_values; i++) {
			GValue *z = g_value_array_get_nth (b, i);
			a = g_value_array_append (a, z);
		}
	}

	g_value_unset (return_accu);
	g_value_init (return_accu, G_TYPE_VALUE_ARRAY);
	g_value_set_boxed (return_accu, a);
	return TRUE;
}
Exemplo n.º 6
0
static void
mame_gui_prefs_set_property (GObject *object,
			     guint prop_id,
			     const GValue *value,
			     GParamSpec *pspec)
{
	MameGuiPrefs *prefs;
	GValueArray *va = NULL;	/* Don't free this - the calling function must take the responsibility to do so */
	
	prefs = MAME_GUI_PREFS (object);

	if ((prop_id < NUM_PROPERTIES) && (prop_id >= PROP_DIR_ARTWORK)) {
		GMAMEUI_DEBUG ("Setting the directory value at %d with value %s",
			       (prop_id - PROP_DIR_ARTWORK), g_value_get_string (value));
		/* We are processing a directory property */
		prefs->priv->directories[prop_id - PROP_DIR_ARTWORK] = g_strdup (g_value_get_string (value));
		/* Note we use prop_id - PROP_DIR_ARTWORK since PDA is the first of the directory
		   properties */
		return;
	}

	switch (prop_id) {
		case PROP_UI_WIDTH:
			prefs->priv->ui_width = g_value_get_int (value);
			break;
		case PROP_UI_HEIGHT:
			prefs->priv->ui_height = g_value_get_int (value);
			break;
		case PROP_SHOW_TOOLBAR:
			prefs->priv->show_toolbar = g_value_get_boolean (value);
			break;
		case PROP_SHOW_STATUSBAR:
			prefs->priv->show_statusbar = g_value_get_boolean (value);
			break;
		case PROP_SHOW_FILTERLIST:
			prefs->priv->show_filterlist = g_value_get_boolean (value);
			break;
		case PROP_SHOW_SCREENSHOT:
			prefs->priv->show_screenshot = g_value_get_boolean (value);
			break;
		case PROP_XPOS_FILTERS:
			prefs->priv->xpos_filters = g_value_get_int (value);
			break;
		case PROP_XPOS_GAMELIST:
			prefs->priv->xpos_gamelist = g_value_get_int (value);
			break;
		case PROP_GAMECHECK:
			prefs->priv->GameCheck = g_value_get_boolean (value);
			break;
		case PROP_VERSIONCHECK:
			prefs->priv->VersionCheck = g_value_get_boolean (value);
			break;
		case PROP_USEXMAMEOPTIONS:
			prefs->priv->use_xmame_options = g_value_get_boolean (value);
			break;
		case PROP_PREFERCUSTOMICONS:
			prefs->priv->prefercustomicons = g_value_get_boolean (value);
			/* Emit the signal (so gamelist view can be changed */
			g_signal_emit (G_OBJECT (prefs), signals[GUI_PREFS_PREFERCUSTOMICONS_TOGGLED], 0,
				       prefs->priv->theprefix);
		case PROP_USEJOYINGUI:
			prefs->priv->gui_joy = g_value_get_boolean (value);
			break;
		case PROP_JOYSTICKNAME:
			prefs->priv->joystick_name = g_strdup (g_value_get_string (value));
			break;
		case PROP_THEPREFIX:
			prefs->priv->theprefix = g_value_get_boolean (value);

			/* Emit the signal (so gamelist view can be changed */
			g_signal_emit (G_OBJECT (prefs), signals[GUI_PREFS_THEPREFIX_TOGGLED], 0,
				       prefs->priv->theprefix);
			break;
		case PROP_CURRENT_ROM:
			prefs->priv->current_rom_name = g_strdup (g_value_get_string (value));
			break;
		case PROP_CURRENT_EXECUTABLE:
			prefs->priv->current_executable_name = g_strdup (g_value_get_string (value));
			break;	
		case PROP_EXECUTABLE_PATHS:
			va = g_value_get_boxed (value);
			if (prefs->priv->executable_paths)
				g_value_array_free (prefs->priv->executable_paths);
			prefs->priv->executable_paths = va != NULL ? g_value_array_copy (va) : NULL;
			break;
		case PROP_ROM_PATHS:
			va = g_value_get_boxed (value);
			if (prefs->priv->rom_paths)
				g_value_array_free (prefs->priv->rom_paths);
			prefs->priv->rom_paths = va != NULL ? g_value_array_copy (va) : NULL;
			break;
		case PROP_SAMPLE_PATHS:
			va = g_value_get_boxed (value);
			if (prefs->priv->sample_paths)
				g_value_array_free (prefs->priv->sample_paths);
			prefs->priv->sample_paths = va != NULL ? g_value_array_copy (va) : NULL;
			break;
		case PROP_CURRENT_ROMFILTER:
			prefs->priv->current_rom_filter = g_value_get_int (value);
			break;
		case PROP_CURRENT_MODE:
			prefs->priv->current_mode = g_value_get_int (value);
			break;
		case PROP_PREVIOUS_MODE:
			prefs->priv->previous_mode = g_value_get_int (value);
			break;
		case PROP_COLS_SHOWN:
			va = g_value_get_boxed (value);
			if (prefs->priv->cols_shown)
				g_value_array_free (prefs->priv->cols_shown);
			prefs->priv->cols_shown = va != NULL ? g_value_array_copy (va) : NULL;

			/* Emit the signal (so gamelist view can be changed */
			g_signal_emit (G_OBJECT (prefs), signals[GUI_PREFS_COL_TOGGLED], 0,
				       prefs->priv->cols_shown);
			break;
		case PROP_COLS_WIDTH:
			va = g_value_get_boxed (value);
			if (prefs->priv->cols_width)
				g_value_array_free (prefs->priv->cols_width);
			prefs->priv->cols_width = va != NULL ? g_value_array_copy (va) : NULL;
			break;
		case PROP_SORT_COL:
			prefs->priv->sort_col = g_value_get_int (value);
			break;
		case PROP_SORT_COL_DIR:
			prefs->priv->sort_col_direction = g_value_get_int (value);
			break;
		default:
			G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
			break;
	}
	
	/* As long as the notify::<property> callback is set, the handler
	   will then manage saving the key file */
}