コード例 #1
0
ファイル: gstxvidenc.c プロジェクト: ChinnaSuhas/ossbuild
static void
gst_xvidenc_class_init (GstXvidEncClass * klass)
{
  GstElementClass *gstelement_class;
  GObjectClass *gobject_class;
  GParamSpec *pspec;

  gobject_class = G_OBJECT_CLASS (klass);
  gstelement_class = GST_ELEMENT_CLASS (klass);

  parent_class = g_type_class_peek_parent (klass);

  GST_DEBUG_CATEGORY_INIT (xvidenc_debug, "xvidenc", 0, "XviD encoder");

  gobject_class->finalize = gst_xvidenc_finalize;

  gobject_class->set_property = gst_xvidenc_set_property;
  gobject_class->get_property = gst_xvidenc_get_property;

  /* prop handling */
  xvidenc_prop_count = 0;
  xvidenc_pspec_quark = g_quark_from_static_string ("xvid-enc-param-spec-data");

  pspec = g_param_spec_enum ("profile", "Profile",
      "XviD/MPEG-4 encoding profile",
      GST_TYPE_XVIDENC_PROFILE, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, profile);

  pspec = g_param_spec_enum ("quant-type", "Quantizer Type",
      "Quantizer type", GST_TYPE_XVIDENC_QUANT_TYPE, 0,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, quant_type);

  pspec = g_param_spec_enum ("pass", "Encoding pass/type",
      "Encoding pass/type",
      GST_TYPE_XVIDENC_PASS, XVIDENC_CBR,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, pass);

  pspec = g_param_spec_int ("bitrate", "Bitrate",
      "[CBR|PASS2] Target video bitrate (bps)",
      0, G_MAXINT, 1800000, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, bitrate);

  pspec = g_param_spec_int ("quantizer", "Quantizer",
      "[QUANT] Quantizer to apply for constant quantizer mode",
      2, 31, 2, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, quant);

  pspec = g_param_spec_string ("statsfile", "Statistics Filename",
      "[PASS1|PASS2] Filename to store data for 2-pass encoding",
      "xvid-stats.log", G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, filename);

  pspec = g_param_spec_int ("max-key-interval", "Max. Key Interval",
      "Maximum number of frames between two keyframes (< 0 is in sec)",
      -100, G_MAXINT, -10, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_key_interval);

  pspec = g_param_spec_boolean ("closed-gop", "Closed GOP",
      "Closed GOP", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, closed_gop);

  pspec = g_param_spec_int ("motion", "ME Quality",
      "Quality of Motion Estimation", 0, 6, 6,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, motion);

  pspec = g_param_spec_boolean ("me-chroma", "ME Chroma",
      "Enable use of Chroma planes for Motion Estimation",
      TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, me_chroma);

  pspec = g_param_spec_int ("me-vhq", "ME DCT/Frequency",
      "Extent in which to use DCT to minimize encoding length",
      0, 4, 1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, me_vhq);

  pspec = g_param_spec_boolean ("me-quarterpel", "ME Quarterpel",
      "Use quarter pixel precision for motion vector search",
      FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, me_quarterpel);

  pspec = g_param_spec_boolean ("lumimasking", "Lumimasking",
      "Enable lumimasking - apply more compression to dark or bright areas",
      FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, lumimasking);

  pspec = g_param_spec_int ("max-bframes", "Max B-Frames",
      "Maximum B-frames in a row", 0, G_MAXINT, 1,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_bframes);

  pspec = g_param_spec_int ("bquant-ratio", "B-quantizer ratio",
      "Ratio in B-frame quantizer computation", 0, 200, 150,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, bquant_ratio);

  pspec = g_param_spec_int ("bquant-offset", "B-quantizer offset",
      "Offset in B-frame quantizer computation",
      0, 200, 100, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, bquant_offset);

  pspec = g_param_spec_int ("bframe-threshold", "B-Frame Threshold",
      "Higher threshold yields more chance that B-frame is used",
      -255, 255, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, bframe_threshold);

  pspec = g_param_spec_boolean ("gmc", "Global Motion Compensation",
      "Allow generation of Sprite Frames for Pan/Zoom/Rotating images",
      FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, gmc);

  pspec = g_param_spec_boolean ("trellis", "Trellis Quantization",
      "Enable Trellis Quantization", FALSE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, trellis);

  pspec = g_param_spec_boolean ("interlaced", "Interlaced Material",
      "Enable for interlaced video material", FALSE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, interlaced);

  pspec = g_param_spec_boolean ("cartoon", "Cartoon Material",
      "Adjust thresholds for flat looking cartoons", FALSE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, cartoon);

  pspec = g_param_spec_boolean ("greyscale", "Disable Chroma",
      "Do not write chroma data in encoded video", FALSE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, greyscale);

  pspec = g_param_spec_boolean ("hqacpred", "High quality AC prediction",
      "Enable high quality AC prediction", TRUE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, hqacpred);

  pspec = g_param_spec_int ("max-iquant", "Max Quant I-Frames",
      "Upper bound for I-frame quantization", 0, 31, 31,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_iquant);

  pspec = g_param_spec_int ("min-iquant", "Min Quant I-Frames",
      "Lower bound for I-frame quantization", 0, 31, 2,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, min_iquant);

  pspec = g_param_spec_int ("max-pquant", "Max Quant P-Frames",
      "Upper bound for P-frame quantization", 0, 31, 31,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_pquant);

  pspec = g_param_spec_int ("min-pquant", "Min Quant P-Frames",
      "Lower bound for P-frame quantization", 0, 31, 2,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, min_pquant);

  pspec = g_param_spec_int ("max-bquant", "Max Quant B-Frames",
      "Upper bound for B-frame quantization", 0, 31, 31,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_bquant);

  pspec = g_param_spec_int ("min-bquant", "Min Quant B-Frames",
      "Lower bound for B-frame quantization", 0, 31, 2,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, min_bquant);

  pspec = g_param_spec_int ("reaction-delay-factor", "Reaction Delay Factor",
      "[CBR] Reaction delay factor", -1, 100, -1,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, reaction_delay_factor);

  pspec = g_param_spec_int ("averaging-period", "Averaging Period",
      "[CBR] Number of frames for which XviD averages bitrate",
      -1, 100, -1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, averaging_period);

  pspec = g_param_spec_int ("buffer", "Buffer Size",
      "[CBR] Size of the video buffers", -1, G_MAXINT, -1,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, buffer);

  pspec = g_param_spec_int ("keyframe-boost", "Keyframe boost",
      "[PASS2] Bitrate boost for keyframes", 0, 100, 0,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, keyframe_boost);

  pspec = g_param_spec_int ("curve-compression-high", "Curve Compression High",
      "[PASS2] Shrink factor for upper part of bitrate curve",
      0, 100, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, curve_compression_high);

  pspec = g_param_spec_int ("curve-compression-low", "Curve Compression Low",
      "[PASS2] Growing factor for lower part of bitrate curve",
      0, 100, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, curve_compression_low);

  pspec = g_param_spec_int ("flow-control-strength", "Flow Control Strength",
      "[PASS2] Overflow control strength per frame",
      -1, 100, 5, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, overflow_control_strength);

  pspec =
      g_param_spec_int ("max-overflow-improvement", "Max Overflow Improvement",
      "[PASS2] Amount in % that flow control can increase frame size compared to ideal curve",
      -1, 100, 5, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_overflow_improvement);

  pspec =
      g_param_spec_int ("max-overflow-degradation", "Max Overflow Degradation",
      "[PASS2] Amount in % that flow control can decrease frame size compared to ideal curve",
      -1, 100, 5, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, max_overflow_degradation);

  pspec = g_param_spec_int ("keyframe-reduction", "Keyframe Reduction",
      "[PASS2] Keyframe size reduction in % of those within threshold",
      -1, 100, 20, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, kfreduction);

  pspec = g_param_spec_int ("keyframe-threshold", "Keyframe Threshold",
      "[PASS2] Distance between keyframes not to be subject to reduction",
      -1, 100, 1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, kfthreshold);

  pspec =
      g_param_spec_int ("container-frame-overhead", "Container Frame Overhead",
      "[PASS2] Average container overhead per frame", -1, 100, -1,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
  gst_xvidenc_add_pspec (gobject_class, pspec, container_frame_overhead);

  gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_xvidenc_change_state);
}
コード例 #2
0
ファイル: gstfacedetect.c プロジェクト: iainlane/gstreamer
/* initialize the facedetect's class */
static void
gst_face_detect_class_init (GstFaceDetectClass * klass)
{
  GObjectClass *gobject_class;
  GstOpencvVideoFilterClass *gstopencvbasefilter_class;

  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
  gobject_class = (GObjectClass *) klass;
  gstopencvbasefilter_class = (GstOpencvVideoFilterClass *) klass;

  gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_face_detect_finalize);
  gobject_class->set_property = gst_face_detect_set_property;
  gobject_class->get_property = gst_face_detect_get_property;

  gstopencvbasefilter_class->cv_trans_ip_func = gst_face_detect_transform_ip;
  gstopencvbasefilter_class->cv_set_caps = gst_face_detect_set_caps;

  g_object_class_install_property (gobject_class, PROP_DISPLAY,
      g_param_spec_boolean ("display", "Display",
          "Sets whether the detected faces should be highlighted in the output",
          TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_FACE_PROFILE,
      g_param_spec_string ("profile", "Face profile",
          "Location of Haar cascade file to use for face detection",
          DEFAULT_FACE_PROFILE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_NOSE_PROFILE,
      g_param_spec_string ("nose-profile", "Nose profile",
          "Location of Haar cascade file to use for nose detection",
          DEFAULT_NOSE_PROFILE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_MOUTH_PROFILE,
      g_param_spec_string ("mouth-profile", "Mouth profile",
          "Location of Haar cascade file to use for mouth detection",
          DEFAULT_MOUTH_PROFILE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_EYES_PROFILE,
      g_param_spec_string ("eyes-profile", "Eyes profile",
          "Location of Haar cascade file to use for eye-pair detection",
          DEFAULT_EYES_PROFILE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_FLAGS,
      g_param_spec_flags ("flags", "Flags", "Flags to cvHaarDetectObjects",
          GST_TYPE_OPENCV_FACE_DETECT_FLAGS, DEFAULT_FLAGS,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_SCALE_FACTOR,
      g_param_spec_double ("scale-factor", "Scale factor",
          "Factor by which the frame is scaled after each object scan",
          1.1, 10.0, DEFAULT_SCALE_FACTOR,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_MIN_NEIGHBORS,
      g_param_spec_int ("min-neighbors", "Mininum neighbors",
          "Minimum number (minus 1) of neighbor rectangles that makes up "
          "an object", 0, G_MAXINT, DEFAULT_MIN_NEIGHBORS,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_MIN_SIZE_WIDTH,
      g_param_spec_int ("min-size-width", "Minimum face width",
          "Minimum area width to be recognized as a face", 0, G_MAXINT,
          DEFAULT_MIN_SIZE_WIDTH, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_MIN_SIZE_HEIGHT,
      g_param_spec_int ("min-size-height", "Minimum face height",
          "Minimum area height to be recognized as a face", 0, G_MAXINT,
          DEFAULT_MIN_SIZE_HEIGHT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  gst_element_class_set_static_metadata (element_class,
      "facedetect",
      "Filter/Effect/Video",
      "Performs face detection on videos and images, providing detected positions via bus messages",
      "Michael Sheldon <*****@*****.**>");

  gst_element_class_add_pad_template (element_class,
      gst_static_pad_template_get (&src_factory));
  gst_element_class_add_pad_template (element_class,
      gst_static_pad_template_get (&sink_factory));
}
コード例 #3
0
static void
clutter_x11_texture_pixmap_class_init (ClutterX11TexturePixmapClass *klass)
{
  GObjectClass      *object_class = G_OBJECT_CLASS (klass);
  ClutterActorClass *actor_class = CLUTTER_ACTOR_CLASS (klass);
  GParamSpec        *pspec;
  ClutterBackend    *default_backend;

  g_type_class_add_private (klass, sizeof (ClutterX11TexturePixmapPrivate));

  object_class->dispose      = clutter_x11_texture_pixmap_dispose;
  object_class->set_property = clutter_x11_texture_pixmap_set_property;
  object_class->get_property = clutter_x11_texture_pixmap_get_property;

  actor_class->realize       = clutter_x11_texture_pixmap_realize;

  klass->update_area         = clutter_x11_texture_pixmap_update_area_real;

  actor_class->paint = clutter_x11_texture_pixmap_paint;

  pspec = g_param_spec_uint ("pixmap",
                             "Pixmap",
                             "The X11 Pixmap to be bound",
                             0, G_MAXINT,
                             None,
                             G_PARAM_READWRITE);

  g_object_class_install_property (object_class, PROP_PIXMAP, pspec);

  pspec = g_param_spec_uint ("pixmap-width",
                             "Pixmap width",
                             "The width of the "
                             "pixmap bound to this texture",
                             0, G_MAXUINT,
                             0,
                             G_PARAM_READABLE);

  g_object_class_install_property (object_class, PROP_PIXMAP_WIDTH, pspec);

  pspec = g_param_spec_uint ("pixmap-height",
                             "Pixmap height",
                             "The height of the "
                             "pixmap bound to this texture",
                             0, G_MAXUINT,
                             0,
                             G_PARAM_READABLE);

  g_object_class_install_property (object_class, PROP_PIXMAP_HEIGHT, pspec);

  pspec = g_param_spec_uint ("pixmap-depth",
                             "Pixmap Depth",
                             "The depth (in number of bits) of the "
                             "pixmap bound to this texture",
                             0, G_MAXUINT,
                             0,
                             G_PARAM_READABLE);

  g_object_class_install_property (object_class, PROP_DEPTH, pspec);

  pspec = g_param_spec_boolean ("automatic-updates",
                                "Automatic Updates",
                                "If the texture should be kept in "
                                "sync with any pixmap changes.",
                                FALSE,
                                G_PARAM_READWRITE);

  g_object_class_install_property (object_class, PROP_AUTO, pspec);

  pspec = g_param_spec_uint ("window",
                             "Window",
                             "The X11 Window to be bound",
                             0, G_MAXINT,
                             None,
                             G_PARAM_READWRITE);

  g_object_class_install_property (object_class, PROP_WINDOW, pspec);

  pspec = g_param_spec_boolean ("window-mapped",
                                "Window Mapped",
                                "If window is mapped",
                                FALSE,
                                G_PARAM_READABLE);

  g_object_class_install_property (object_class,
                                   PROP_WINDOW_MAPPED, pspec);


  pspec = g_param_spec_boolean ("destroyed",
                                "Destroyed",
                                "If window has been destroyed",
                                FALSE,
                                G_PARAM_READABLE);

  g_object_class_install_property (object_class,
                                   PROP_DESTROYED, pspec);

  pspec = g_param_spec_int ("window-x",
                            "Window X",
                            "X position of window on screen according to X11",
                            G_MININT, G_MAXINT, 0, G_PARAM_READABLE);

  g_object_class_install_property (object_class,
                                   PROP_WINDOW_X, pspec);


  pspec = g_param_spec_int ("window-y",
                            "Window Y",
                            "Y position of window on screen according to X11",
                            G_MININT, G_MAXINT, 0, G_PARAM_READABLE);

  g_object_class_install_property (object_class,
                                   PROP_WINDOW_Y, pspec);

  pspec = g_param_spec_boolean ("window-override-redirect",
                                "Window Override Redirect",
                                "If this is an override-redirect window",
                                FALSE,
                                G_PARAM_READABLE);

  g_object_class_install_property (object_class,
                                   PROP_WINDOW_OVERRIDE_REDIRECT, pspec);


  /**
   * ClutterX11TexturePixmap::update-area:
   * @texture: the object which received the signal
   *
   * The ::update-area signal is emitted when an area of the Texture Pixmap
   * changes. The four parameters correspond to X, Y, width and height
   *
   * Since: 0.8
   */
  signals[UPDATE_AREA] =
      g_signal_new ("update-area",
                    G_TYPE_FROM_CLASS (object_class),
                    G_SIGNAL_RUN_FIRST,
                    G_STRUCT_OFFSET (ClutterX11TexturePixmapClass, \
                                     update_area),
                    NULL, NULL,
                    clutter_marshal_VOID__INT_INT_INT_INT,
                    G_TYPE_NONE, 4,
                    G_TYPE_INT,
                    G_TYPE_INT,
                    G_TYPE_INT,
                    G_TYPE_INT);

  /**
    * ClutterX11TexturePixmap::pixmap-freeing:
    * @texture: the object which received the signal
    *
    * The ::pixmap-freeing signal is emitted to notify whoever is interested
    * that the pixmap is about to be freed with XFreePixmap. This is useful
    * for eglx-texture-pixmap when we really need to eglDestroySurface BEFORE
    * the pixmap gets killed.
    *
    * Since: 0.8
    */
  signals[PIXMAP_FREEING] =
      g_signal_new ("pixmap-freeing",
                    G_TYPE_FROM_CLASS (object_class),
                    G_SIGNAL_RUN_FIRST,
                    0, NULL, NULL,
                    g_cclosure_marshal_VOID__VOID,
                    G_TYPE_NONE, 0, NULL);

  default_backend = clutter_get_default_backend ();

  if (!CLUTTER_IS_BACKEND_X11 (default_backend))
    {
      g_critical ("ClutterX11TexturePixmap instanciated with a "
                  "non-X11 backend");
      return;
    }
}
コード例 #4
0
static void
empathy_account_widget_class_init (EmpathyAccountWidgetClass *klass)
{
  GObjectClass *oclass = G_OBJECT_CLASS (klass);
  GParamSpec *param_spec;

  oclass->get_property = do_get_property;
  oclass->set_property = do_set_property;
  oclass->constructed = do_constructed;
  oclass->dispose = do_dispose;
  oclass->finalize = do_finalize;

  param_spec = g_param_spec_string ("protocol",
      "protocol", "The protocol of the account",
      NULL,
      G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
  g_object_class_install_property (oclass, PROP_PROTOCOL, param_spec);

  param_spec = g_param_spec_object ("settings",
      "settings", "The settings of the account",
      EMPATHY_TYPE_ACCOUNT_SETTINGS,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT_ONLY);
  g_object_class_install_property (oclass, PROP_SETTINGS, param_spec);

  param_spec = g_param_spec_boolean ("simple",
      "simple", "Whether the account widget is a simple or an advanced one",
      FALSE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT_ONLY);
  g_object_class_install_property (oclass, PROP_SIMPLE, param_spec);

  param_spec = g_param_spec_boolean ("creating-account",
      "creating-account",
      "TRUE if we're creating an account, FALSE if we're modifying it",
      FALSE,
      G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT_ONLY);
  g_object_class_install_property (oclass, PROP_CREATING_ACCOUNT, param_spec);

  signals[HANDLE_APPLY] =
    g_signal_new ("handle-apply", G_TYPE_FROM_CLASS (klass),
        G_SIGNAL_RUN_LAST, 0, NULL, NULL,
        g_cclosure_marshal_VOID__BOOLEAN,
        G_TYPE_NONE,
        1, G_TYPE_BOOLEAN);

  /* This signal is emitted when an account has been created and enabled. */
  signals[ACCOUNT_CREATED] =
      g_signal_new ("account-created", G_TYPE_FROM_CLASS (klass),
          G_SIGNAL_RUN_LAST, 0, NULL, NULL,
          g_cclosure_marshal_VOID__VOID,
          G_TYPE_NONE,
          0);

  signals[CANCELLED] =
      g_signal_new ("cancelled", G_TYPE_FROM_CLASS (klass),
          G_SIGNAL_RUN_LAST, 0, NULL, NULL,
          g_cclosure_marshal_VOID__VOID,
          G_TYPE_NONE,
          0);

  g_type_class_add_private (klass, sizeof (EmpathyAccountWidgetPriv));
}
コード例 #5
0
ファイル: gtkplotflux.c プロジェクト: teknoxgroup/genius
static void
gtk_plot_flux_class_init (GtkPlotFluxClass *klass)
{
  GtkObjectClass *object_class;
  GtkWidgetClass *widget_class;
  GtkPlotDataClass *data_class;
  GObjectClass *gobject_class = G_OBJECT_CLASS(klass);

  parent_class = g_type_class_ref (gtk_plot_data_get_type ());

  object_class = (GtkObjectClass *) klass;
  widget_class = (GtkWidgetClass *) klass;
  data_class = (GtkPlotDataClass *) klass;

  gobject_class->set_property = gtk_plot_flux_set_property;
  gobject_class->get_property = gtk_plot_flux_get_property;
  object_class->destroy = gtk_plot_flux_destroy;


  /**
   * GtkPlotFlux:centered:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_CENTERED,
  g_param_spec_boolean ("centered",
                           P_(""),
                           P_(""),
                           FALSE,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:style:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_STYLE,
  g_param_spec_int ("style",
                           P_(""),
                           P_(""),
                           0,G_MAXINT,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:width:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_WIDTH,
  g_param_spec_int ("width",
                           P_(""),
                           P_(""),
                           0,G_MAXINT,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:length:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_LENGTH,
  g_param_spec_int ("length",
                           P_(""),
                           P_(""),
                           0,G_MAXINT,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:scale_max:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_SCALE_MAX,
  g_param_spec_double ("scale_max",
                           P_(""),
                           P_(""),
                           0,G_MAXDOUBLE,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:size_max:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_SIZE_MAX,
  g_param_spec_int ("size_max",
                           P_(""),
                           P_(""),
                           0,G_MAXINT,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:show_scale:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_SHOW_SCALE,
  g_param_spec_boolean ("show_scale",
                           P_(""),
                           P_(""),
                           FALSE,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:labels_precision:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_LABEL_PRECISION,
  g_param_spec_int ("labels_precision",
                           P_(""),
                           P_(""),
                           0,G_MAXINT,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:labels_style:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_LABEL_STYLE,
  g_param_spec_int ("labels_style",
                           P_(""),
                           P_(""),
                           0,G_MAXINT,0,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:labels_prefix:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_LABEL_PREFIX,
  g_param_spec_string ("labels_prefix",
                           P_(""),
                           P_(""),
                           NULL,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  /**
   * GtkPlotFlux:labels_suffix:
   *
   *
   **/
  g_object_class_install_property (gobject_class,
                           ARG_LABEL_SUFFIX,
  g_param_spec_string ("labels_suffix",
                           P_(""),
                           P_(""),
                           NULL,
                           G_PARAM_READABLE|G_PARAM_WRITABLE));

  data_class->draw_legend = gtk_plot_flux_draw_legend;
  data_class->get_legend_size = gtk_plot_flux_get_legend_size;
  data_class->draw_symbol = gtk_plot_flux_draw_symbol;
}
コード例 #6
0
static void
mech_window_frame_class_init (MechWindowFrameClass *klass)
{
  MechAreaClass *area_class = MECH_AREA_CLASS (klass);
  GObjectClass *object_class = G_OBJECT_CLASS (klass);

  object_class->set_property = mech_window_frame_set_property;
  object_class->get_property = mech_window_frame_get_property;

  area_class->add = mech_window_frame_add;
  area_class->remove = mech_window_frame_remove;
  area_class->handle_event = mech_window_frame_handle_event;

  g_object_class_install_property (object_class,
                                   PROP_MAXIMIZED,
                                   g_param_spec_boolean ("maximized",
                                                         "maximized",
                                                         "Whether the window is maximized",
                                                         FALSE,
                                                         G_PARAM_READWRITE |
                                                         G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (object_class,
                                   PROP_MAXIMIZED,
                                   g_param_spec_boolean ("resizable",
                                                         "resizable",
                                                         "Whether the window is resizable",
                                                         TRUE,
                                                         G_PARAM_READWRITE |
                                                         G_PARAM_STATIC_STRINGS));
  signals[MOVE] =
    g_signal_new ("move",
                  G_TYPE_FROM_CLASS (klass),
                  G_SIGNAL_RUN_LAST,
                  G_STRUCT_OFFSET (MechWindowFrameClass, move),
                  NULL, NULL,
                  g_cclosure_marshal_VOID__BOXED,
                  G_TYPE_NONE, 1,
                  MECH_TYPE_EVENT | G_SIGNAL_TYPE_STATIC_SCOPE);
  signals[RESIZE] =
    g_signal_new ("resize",
                  G_TYPE_FROM_CLASS (klass),
                  G_SIGNAL_RUN_LAST,
                  G_STRUCT_OFFSET (MechWindowFrameClass, resize),
                  NULL, NULL,
                  _mech_marshal_VOID__BOXED_FLAGS,
                  G_TYPE_NONE, 2,
                  MECH_TYPE_EVENT | G_SIGNAL_TYPE_STATIC_SCOPE,
                  MECH_TYPE_SIDE_FLAGS);
  signals[CLOSE] =
    g_signal_new ("close",
                  G_TYPE_FROM_CLASS (klass),
                  G_SIGNAL_RUN_LAST,
                  G_STRUCT_OFFSET (MechWindowFrameClass, close),
                  NULL, NULL,
                  g_cclosure_marshal_VOID__VOID,
                  G_TYPE_NONE, 0);

  mech_area_class_set_delegate (MECH_AREA_CLASS (klass),
				MECH_TYPE_TEXT,
				G_PRIVATE_OFFSET (MechWindowFrame, title));
}
コード例 #7
0
  GObjectClass *object_class = G_OBJECT_CLASS (class);
  GeglOperationClass *operation_class = GEGL_OPERATION_CLASS (class);
  GeglOperationSinkClass *sink_class = GEGL_OPERATION_SINK_CLASS (class);

  operation_class->opencl_support = FALSE;
  sink_class->needs_full = TRUE;

  object_class->get_property = photos_operation_jpg_guess_sizes_get_property;
  object_class->set_property = photos_operation_jpg_guess_sizes_set_property;
  sink_class->process = photos_operation_jpg_guess_sizes_process;

  g_object_class_install_property (object_class,
                                   PROP_OPTIMIZE,
                                   g_param_spec_boolean ("optimize",
                                                         "Optimize",
                                                         "Use optimized huffman tables",
                                                         TRUE,
                                                         G_PARAM_CONSTRUCT | G_PARAM_READWRITE));

  g_object_class_install_property (object_class,
                                   PROP_PROGRESSIVE,
                                   g_param_spec_boolean ("progressive",
                                                         "Progressive",
                                                         "Create progressive JPEG images",
                                                         TRUE,
                                                         G_PARAM_CONSTRUCT | G_PARAM_READWRITE));

  g_object_class_install_property (object_class,
                                   PROP_QUALITY,
                                   g_param_spec_int ("quality",
                                                     "Quality",
コード例 #8
0
ファイル: gstshout2.c プロジェクト: TheBigW/gst-plugins-good
static void
gst_shout2send_class_init (GstShout2sendClass * klass)
{
  GObjectClass *gobject_class;
  GstBaseSinkClass *gstbasesink_class;

  gobject_class = (GObjectClass *) klass;
  gstbasesink_class = (GstBaseSinkClass *) klass;

  parent_class = g_type_class_peek_parent (klass);

  gobject_class->set_property = gst_shout2send_set_property;
  gobject_class->get_property = gst_shout2send_get_property;
  gobject_class->finalize = (GObjectFinalizeFunc) gst_shout2send_finalize;

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_IP,
      g_param_spec_string ("ip", "ip", "ip", DEFAULT_IP,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_PORT,
      g_param_spec_int ("port", "port", "port", 1, G_MAXUSHORT, DEFAULT_PORT,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_PASSWORD,
      g_param_spec_string ("password", "password", "password", DEFAULT_PASSWORD,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_USERNAME,
      g_param_spec_string ("username", "username", "username", DEFAULT_USERNAME,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  /* metadata */
  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_PUBLIC,
      g_param_spec_boolean ("public", "public",
          "If the stream should be listed on the server's stream directory",
          DEFAULT_PUBLIC, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_STREAMNAME,
      g_param_spec_string ("streamname", "streamname", "name of the stream",
          DEFAULT_STREAMNAME, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_DESCRIPTION,
      g_param_spec_string ("description", "description", "description",
          DEFAULT_DESCRIPTION, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_GENRE,
      g_param_spec_string ("genre", "genre", "genre", DEFAULT_GENRE,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_PROTOCOL,
      g_param_spec_enum ("protocol", "protocol", "Connection Protocol to use",
          GST_TYPE_SHOUT_PROTOCOL, DEFAULT_PROTOCOL,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));


  /* icecast only */
  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_MOUNT,
      g_param_spec_string ("mount", "mount", "mount", DEFAULT_MOUNT,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_URL,
      g_param_spec_string ("url", "url", "url", DEFAULT_URL,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  /* signals */
  gst_shout2send_signals[SIGNAL_CONNECTION_PROBLEM] =
      g_signal_new ("connection-problem", G_TYPE_FROM_CLASS (klass),
      G_SIGNAL_RUN_CLEANUP, G_STRUCT_OFFSET (GstShout2sendClass,
          connection_problem), NULL, NULL, g_cclosure_marshal_VOID__INT,
      G_TYPE_NONE, 1, G_TYPE_INT);

  gstbasesink_class->start = GST_DEBUG_FUNCPTR (gst_shout2send_start);
  gstbasesink_class->stop = GST_DEBUG_FUNCPTR (gst_shout2send_stop);
  gstbasesink_class->unlock = GST_DEBUG_FUNCPTR (gst_shout2send_unlock);
  gstbasesink_class->unlock_stop =
      GST_DEBUG_FUNCPTR (gst_shout2send_unlock_stop);
  gstbasesink_class->render = GST_DEBUG_FUNCPTR (gst_shout2send_render);
  gstbasesink_class->event = GST_DEBUG_FUNCPTR (gst_shout2send_event);
}
コード例 #9
0
ファイル: gdbusserver.c プロジェクト: PeterXu/gst-mobile
static void
g_dbus_server_class_init (GDBusServerClass *klass)
{
  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);

  gobject_class->finalize     = g_dbus_server_finalize;
  gobject_class->set_property = g_dbus_server_set_property;
  gobject_class->get_property = g_dbus_server_get_property;

  /**
   * GDBusServer:flags:
   *
   * Flags from the #GDBusServerFlags enumeration.
   *
   * Since: 2.26
   */
  g_object_class_install_property (gobject_class,
                                   PROP_FLAGS,
                                   g_param_spec_flags ("flags",
                                                       P_("Flags"),
                                                       P_("Flags for the server"),
                                                       G_TYPE_DBUS_SERVER_FLAGS,
                                                       G_DBUS_SERVER_FLAGS_NONE,
                                                       G_PARAM_READABLE |
                                                       G_PARAM_WRITABLE |
                                                       G_PARAM_CONSTRUCT_ONLY |
                                                       G_PARAM_STATIC_NAME |
                                                       G_PARAM_STATIC_BLURB |
                                                       G_PARAM_STATIC_NICK));

  /**
   * GDBusServer:guid:
   *
   * The guid of the server.
   *
   * Since: 2.26
   */
  g_object_class_install_property (gobject_class,
                                   PROP_GUID,
                                   g_param_spec_string ("guid",
                                                        P_("GUID"),
                                                        P_("The guid of the server"),
                                                        NULL,
                                                        G_PARAM_READABLE |
                                                        G_PARAM_WRITABLE |
                                                        G_PARAM_CONSTRUCT_ONLY |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB |
                                                        G_PARAM_STATIC_NICK));

  /**
   * GDBusServer:address:
   *
   * The D-Bus address to listen on.
   *
   * Since: 2.26
   */
  g_object_class_install_property (gobject_class,
                                   PROP_ADDRESS,
                                   g_param_spec_string ("address",
                                                        P_("Address"),
                                                        P_("The address to listen on"),
                                                        NULL,
                                                        G_PARAM_READABLE |
                                                        G_PARAM_WRITABLE |
                                                        G_PARAM_CONSTRUCT_ONLY |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB |
                                                        G_PARAM_STATIC_NICK));

  /**
   * GDBusServer:client-address:
   *
   * The D-Bus address that clients can use.
   *
   * Since: 2.26
   */
  g_object_class_install_property (gobject_class,
                                   PROP_CLIENT_ADDRESS,
                                   g_param_spec_string ("client-address",
                                                        P_("Client Address"),
                                                        P_("The address clients can use"),
                                                        NULL,
                                                        G_PARAM_READABLE |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB |
                                                        G_PARAM_STATIC_NICK));

  /**
   * GDBusServer:active:
   *
   * Whether the server is currently active.
   *
   * Since: 2.26
   */
  g_object_class_install_property (gobject_class,
                                   PROP_ACTIVE,
                                   g_param_spec_boolean ("active",
                                                         P_("Active"),
                                                         P_("Whether the server is currently active"),
                                                         FALSE,
                                                         G_PARAM_READABLE |
                                                         G_PARAM_STATIC_NAME |
                                                         G_PARAM_STATIC_BLURB |
                                                         G_PARAM_STATIC_NICK));

  /**
   * GDBusServer:authentication-observer:
   *
   * A #GDBusAuthObserver object to assist in the authentication process or %NULL.
   *
   * Since: 2.26
   */
  g_object_class_install_property (gobject_class,
                                   PROP_AUTHENTICATION_OBSERVER,
                                   g_param_spec_object ("authentication-observer",
                                                        P_("Authentication Observer"),
                                                        P_("Object used to assist in the authentication process"),
                                                        G_TYPE_DBUS_AUTH_OBSERVER,
                                                        G_PARAM_READABLE |
                                                        G_PARAM_WRITABLE |
                                                        G_PARAM_CONSTRUCT_ONLY |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB |
                                                        G_PARAM_STATIC_NICK));

  /**
   * GDBusServer::new-connection:
   * @server: The #GDBusServer emitting the signal.
   * @connection: A #GDBusConnection for the new connection.
   *
   * Emitted when a new authenticated connection has been made. Use
   * g_dbus_connection_get_peer_credentials() to figure out what
   * identity (if any), was authenticated.
   *
   * If you want to accept the connection, take a reference to the
   * @connection object and return %TRUE. When you are done with the
   * connection call g_dbus_connection_close() and give up your
   * reference. Note that the other peer may disconnect at any time -
   * a typical thing to do when accepting a connection is to listen to
   * the #GDBusConnection::closed signal.
   *
   * If #GDBusServer:flags contains %G_DBUS_SERVER_FLAGS_RUN_IN_THREAD
   * then the signal is emitted in a new thread dedicated to the
   * connection. Otherwise the signal is emitted in the <link
   * linkend="g-main-context-push-thread-default">thread-default main
   * loop</link> of the thread that @server was constructed in.
   *
   * You are guaranteed that signal handlers for this signal runs
   * before incoming messages on @connection are processed. This means
   * that it's suitable to call g_dbus_connection_register_object() or
   * similar from the signal handler.
   *
   * Returns: %TRUE to claim @connection, %FALSE to let other handlers
   * run.
   *
   * Since: 2.26
   */
  _signals[NEW_CONNECTION_SIGNAL] = g_signal_new ("new-connection",
                                                  G_TYPE_DBUS_SERVER,
                                                  G_SIGNAL_RUN_LAST,
                                                  G_STRUCT_OFFSET (GDBusServerClass, new_connection),
                                                  g_signal_accumulator_true_handled,
                                                  NULL, /* accu_data */
                                                  NULL,
                                                  G_TYPE_BOOLEAN,
                                                  1,
                                                  G_TYPE_DBUS_CONNECTION);
}
コード例 #10
0
ファイル: soup-cookie-jar.c プロジェクト: BabaNina/libsoup
static void
soup_cookie_jar_class_init (SoupCookieJarClass *jar_class)
{
	GObjectClass *object_class = G_OBJECT_CLASS (jar_class);

	g_type_class_add_private (jar_class, sizeof (SoupCookieJarPrivate));

	object_class->constructed = constructed;
	object_class->finalize = finalize;
	object_class->set_property = set_property;
	object_class->get_property = get_property;

	/**
	 * SoupCookieJar::changed
	 * @jar: the #SoupCookieJar
	 * @old_cookie: the old #SoupCookie value
	 * @new_cookie: the new #SoupCookie value
	 *
	 * Emitted when @jar changes. If a cookie has been added,
	 * @new_cookie will contain the newly-added cookie and
	 * @old_cookie will be %NULL. If a cookie has been deleted,
	 * @old_cookie will contain the to-be-deleted cookie and
	 * @new_cookie will be %NULL. If a cookie has been changed,
	 * @old_cookie will contain its old value, and @new_cookie its
	 * new value.
	 **/
	signals[CHANGED] =
		g_signal_new ("changed",
			      G_OBJECT_CLASS_TYPE (object_class),
			      G_SIGNAL_RUN_FIRST,
			      G_STRUCT_OFFSET (SoupCookieJarClass, changed),
			      NULL, NULL,
			      soup_marshal_NONE__BOXED_BOXED,
			      G_TYPE_NONE, 2, 
			      SOUP_TYPE_COOKIE | G_SIGNAL_TYPE_STATIC_SCOPE,
			      SOUP_TYPE_COOKIE | G_SIGNAL_TYPE_STATIC_SCOPE);

	/**
	 * SOUP_COOKIE_JAR_READ_ONLY:
	 *
	 * Alias for the #SoupCookieJar:read-only property. (Whether
	 * or not the cookie jar is read-only.)
	 **/
	g_object_class_install_property (
		object_class, PROP_READ_ONLY,
		g_param_spec_boolean (SOUP_COOKIE_JAR_READ_ONLY,
				      "Read-only",
				      "Whether or not the cookie jar is read-only",
				      FALSE,
				      G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));

	/**
	 * SOUP_COOKIE_JAR_ACCEPT_POLICY:
	 *
	 * Alias for the #SoupCookieJar:accept-policy property.
	 **/
	g_object_class_install_property (
		object_class, PROP_ACCEPT_POLICY,
		g_param_spec_enum (SOUP_COOKIE_JAR_ACCEPT_POLICY,
				   "Accept-policy",
				   "The policy the jar should follow to accept or reject cookies",
				   SOUP_TYPE_COOKIE_JAR_ACCEPT_POLICY,
				   SOUP_COOKIE_JAR_ACCEPT_ALWAYS,
				   G_PARAM_READWRITE));
}
コード例 #11
0
static void
nm_setting_ip_tunnel_class_init (NMSettingIPTunnelClass *setting_class)
{
	GObjectClass *object_class = G_OBJECT_CLASS (setting_class);
	NMSettingClass *parent_class = NM_SETTING_CLASS (setting_class);

	g_type_class_add_private (setting_class, sizeof (NMSettingIPTunnelPrivate));

	/* virtual methods */
	object_class->set_property = set_property;
	object_class->get_property = get_property;
	object_class->finalize     = finalize;
	parent_class->verify       = verify;

	/**
	 * NMSettingIPTunnel:parent:
	 *
	 * If given, specifies the parent interface name or parent connection UUID
	 * the new device will be bound to so that tunneled packets will only be
	 * routed via that interface.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_PARENT,
		 g_param_spec_string (NM_SETTING_IP_TUNNEL_PARENT, "", "",
		                      NULL,
		                      G_PARAM_READWRITE |
		                      NM_SETTING_PARAM_INFERRABLE |
		                      G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:mode:
	 *
	 * The tunneling mode, for example %NM_IP_TUNNEL_MODE_IPIP or
	 * %NM_IP_TUNNEL_MODE_GRE.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_MODE,
		 g_param_spec_uint (NM_SETTING_IP_TUNNEL_MODE, "", "",
		                    0, G_MAXUINT, 0,
		                    G_PARAM_READWRITE |
		                    NM_SETTING_PARAM_INFERRABLE |
		                    G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:local:
	 *
	 * The local endpoint of the tunnel; the value can be empty, otherwise it
	 * must contain an IPv4 or IPv6 address.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_LOCAL,
		 g_param_spec_string (NM_SETTING_IP_TUNNEL_LOCAL, "", "",
		                      NULL,
		                      G_PARAM_READWRITE |
		                      NM_SETTING_PARAM_INFERRABLE |
		                      G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:remote:
	 *
	 * The remote endpoint of the tunnel; the value must contain an IPv4 or IPv6
	 * address.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_REMOTE,
		 g_param_spec_string (NM_SETTING_IP_TUNNEL_REMOTE, "", "",
		                      NULL,
		                      G_PARAM_READWRITE |
		                      NM_SETTING_PARAM_INFERRABLE |
		                      G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:ttl
	 *
	 * The TTL to assign to tunneled packets. 0 is a special value meaning that
	 * packets inherit the TTL value.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_TTL,
		 g_param_spec_uint (NM_SETTING_IP_TUNNEL_TTL, "", "",
		                    0, 255, 0,
		                    G_PARAM_READWRITE |
		                    G_PARAM_CONSTRUCT |
		                    NM_SETTING_PARAM_INFERRABLE |
		                    G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:tos
	 *
	 * The type of service (IPv4) or traffic class (IPv6) field to be set on
	 * tunneled packets.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_TOS,
		 g_param_spec_uint (NM_SETTING_IP_TUNNEL_TOS, "", "",
		                    0, 255, 0,
		                    G_PARAM_READWRITE |
		                    G_PARAM_CONSTRUCT |
		                    NM_SETTING_PARAM_INFERRABLE |
		                    G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:path-mtu-discovery
	 *
	 * Whether to enable Path MTU Discovery on this tunnel.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_PATH_MTU_DISCOVERY,
		 g_param_spec_boolean (NM_SETTING_IP_TUNNEL_PATH_MTU_DISCOVERY, "", "",
		                       TRUE,
		                       G_PARAM_READWRITE |
		                       G_PARAM_CONSTRUCT |
		                       NM_SETTING_PARAM_INFERRABLE |
		                       G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:input-key:
	 *
	 * The key used for tunnel input packets; the property is valid only for
	 * certain tunnel modes (GRE, IP6GRE). If empty, no key is used.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_INPUT_KEY,
		 g_param_spec_string (NM_SETTING_IP_TUNNEL_INPUT_KEY, "", "",
		                      NULL,
		                      G_PARAM_READWRITE |
		                      NM_SETTING_PARAM_INFERRABLE |
		                      G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:output-key:
	 *
	 * The key used for tunnel output packets; the property is valid only for
	 * certain tunnel modes (GRE, IP6GRE). If empty, no key is used.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_OUTPUT_KEY,
		 g_param_spec_string (NM_SETTING_IP_TUNNEL_OUTPUT_KEY, "", "",
		                      NULL,
		                      G_PARAM_READWRITE |
		                      NM_SETTING_PARAM_INFERRABLE |
		                      G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:encapsulation-limit:
	 *
	 * How many additional levels of encapsulation are permitted to be prepended
	 * to packets. This property applies only to IPv6 tunnels.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_ENCAPSULATION_LIMIT,
		 g_param_spec_uint (NM_SETTING_IP_TUNNEL_ENCAPSULATION_LIMIT, "", "",
		                    0, 255, 0,
		                    G_PARAM_READWRITE |
		                    G_PARAM_CONSTRUCT |
		                    NM_SETTING_PARAM_INFERRABLE |
		                    G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunnel:flow-label:
	 *
	 * The flow label to assign to tunnel packets. This property applies only to
	 * IPv6 tunnels.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_FLOW_LABEL,
		 g_param_spec_uint (NM_SETTING_IP_TUNNEL_FLOW_LABEL, "", "",
		                    0, (1 << 20) - 1, 0,
		                    G_PARAM_READWRITE |
		                    G_PARAM_CONSTRUCT |
		                    NM_SETTING_PARAM_INFERRABLE |
		                    G_PARAM_STATIC_STRINGS));

	/**
	 * NMSettingIPTunel:mtu:
	 *
	 * If non-zero, only transmit packets of the specified size or smaller,
	 * breaking larger packets up into multiple fragments.
	 *
	 * Since: 1.2
	 **/
	g_object_class_install_property
		(object_class, PROP_MTU,
		 g_param_spec_uint (NM_SETTING_IP_TUNNEL_MTU, "", "",
		                    0, G_MAXUINT, 0,
		                    G_PARAM_READWRITE |
		                    G_PARAM_CONSTRUCT |
		                    NM_SETTING_PARAM_FUZZY_IGNORE |
		                    G_PARAM_STATIC_STRINGS));
}
コード例 #12
0
static void
gst_audio_fx_base_fir_filter_class_init (GstAudioFXBaseFIRFilterClass * klass)
{
  GObjectClass *gobject_class = (GObjectClass *) klass;
  GstBaseTransformClass *trans_class = (GstBaseTransformClass *) klass;
  GstAudioFilterClass *filter_class = (GstAudioFilterClass *) klass;
  GstCaps *caps;

  GST_DEBUG_CATEGORY_INIT (gst_audio_fx_base_fir_filter_debug,
      "audiofxbasefirfilter", 0, "FIR filter base class");

  gobject_class->finalize = gst_audio_fx_base_fir_filter_finalize;
  gobject_class->set_property = gst_audio_fx_base_fir_filter_set_property;
  gobject_class->get_property = gst_audio_fx_base_fir_filter_get_property;

  /**
   * GstAudioFXBaseFIRFilter::low-latency:
   *
   * Work in low-latency mode. This mode is much slower for large filter sizes
   * but the latency is always only the pre-latency of the filter.
   *
   * Since: 0.10.18
   */
  g_object_class_install_property (gobject_class, PROP_LOW_LATENCY,
      g_param_spec_boolean ("low-latency", "Low latency",
          "Operate in low latency mode. This mode is slower but the "
          "latency will only be the filter pre-latency. "
          "Can only be changed in states < PAUSED!", DEFAULT_LOW_LATENCY,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  /**
   * GstAudioFXBaseFIRFilter::drain-on-changes:
   *
   * Whether the filter should be drained when its coeficients change
   *
   * Note: Currently this only works if the kernel size is not changed!
   * Support for drainless kernel size changes will be added in the future.
   *
   * Since: 0.10.18
   */
  g_object_class_install_property (gobject_class, PROP_DRAIN_ON_CHANGES,
      g_param_spec_boolean ("drain-on-changes", "Drain on changes",
          "Drains the filter when its coeficients change",
          DEFAULT_DRAIN_ON_CHANGES,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  caps = gst_caps_from_string (ALLOWED_CAPS);
  gst_audio_filter_class_add_pad_templates (GST_AUDIO_FILTER_CLASS (klass),
      caps);
  gst_caps_unref (caps);

  trans_class->transform =
      GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_transform);
  trans_class->start = GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_start);
  trans_class->stop = GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_stop);
  trans_class->sink_event =
      GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_sink_event);
  trans_class->query = GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_query);
  trans_class->transform_size =
      GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_transform_size);
  filter_class->setup = GST_DEBUG_FUNCPTR (gst_audio_fx_base_fir_filter_setup);
}
コード例 #13
0
static void
nm_supplicant_interface_class_init (NMSupplicantInterfaceClass *klass)
{
	GObjectClass *object_class = G_OBJECT_CLASS (klass);

	g_type_class_add_private (object_class, sizeof (NMSupplicantInterfacePrivate));

	object_class->dispose = dispose;
	object_class->set_property = set_property;
	object_class->get_property = get_property;

	/* Properties */
	g_object_class_install_property (object_class, PROP_SCANNING,
		g_param_spec_boolean ("scanning",
		                      "Scanning",
		                      "Scanning",
		                      FALSE,
		                      G_PARAM_READABLE));

	/* Signals */
	signals[STATE] =
		g_signal_new (NM_SUPPLICANT_INTERFACE_STATE,
		              G_OBJECT_CLASS_TYPE (object_class),
		              G_SIGNAL_RUN_LAST,
		              G_STRUCT_OFFSET (NMSupplicantInterfaceClass, state),
		              NULL, NULL,
		              _nm_marshal_VOID__UINT_UINT,
		              G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_UINT);

	signals[REMOVED] =
		g_signal_new (NM_SUPPLICANT_INTERFACE_REMOVED,
		              G_OBJECT_CLASS_TYPE (object_class),
		              G_SIGNAL_RUN_LAST,
		              G_STRUCT_OFFSET (NMSupplicantInterfaceClass, removed),
		              NULL, NULL,
		              g_cclosure_marshal_VOID__VOID,
		              G_TYPE_NONE, 0);

	signals[NEW_BSS] =
		g_signal_new (NM_SUPPLICANT_INTERFACE_NEW_BSS,
		              G_OBJECT_CLASS_TYPE (object_class),
		              G_SIGNAL_RUN_LAST,
		              G_STRUCT_OFFSET (NMSupplicantInterfaceClass, new_bss),
		              NULL, NULL,
		              g_cclosure_marshal_VOID__POINTER,
		              G_TYPE_NONE, 1, G_TYPE_POINTER);

	signals[SCAN_DONE] =
		g_signal_new (NM_SUPPLICANT_INTERFACE_SCAN_DONE,
		              G_OBJECT_CLASS_TYPE (object_class),
		              G_SIGNAL_RUN_LAST,
		              G_STRUCT_OFFSET (NMSupplicantInterfaceClass, scan_done),
		              NULL, NULL,
		              g_cclosure_marshal_VOID__BOOLEAN,
		              G_TYPE_NONE, 1, G_TYPE_BOOLEAN);

	signals[CONNECTION_ERROR] =
		g_signal_new (NM_SUPPLICANT_INTERFACE_CONNECTION_ERROR,
		              G_OBJECT_CLASS_TYPE (object_class),
		              G_SIGNAL_RUN_LAST,
		              G_STRUCT_OFFSET (NMSupplicantInterfaceClass, connection_error),
		              NULL, NULL,
		              _nm_marshal_VOID__STRING_STRING,
		              G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_STRING);
}
コード例 #14
0
ファイル: clutter-dominatrix.c プロジェクト: UIKit0/toys
static void
clutter_dominatrix_class_init (ClutterDominatrixClass *klass)
{
  GObjectClass *object_class = G_OBJECT_CLASS (klass);

  object_class->constructor = clutter_dominatrix_constructor;
  object_class->set_property = clutter_dominatrix_set_property;
  object_class->get_property = clutter_dominatrix_get_property;
  object_class->finalize     = clutter_dominatrix_finalize;

  g_type_class_add_private (klass, sizeof (ClutterDominatrixPrivate));

  /**
   * ClutterDominatrix:rotate-handle-width:
   *
   * Width of the rotation handle.
   */
  g_object_class_install_property (object_class,
                                   PROP_ROTATE_HANDLE_WIDTH,
                                   g_param_spec_int ("rotate-handle-width",
                                                "width of rotation handle",
                                                "width of rotation handle",
                                                0, G_MAXINT,
                                                0,
                                                CLUTTER_PARAM_READWRITE));

  /**
   * ClutterDominatrix:rotate-handle-height:
   *
   * Height of the rotation handle.
   */
  g_object_class_install_property (object_class,
                                   PROP_ROTATE_HANDLE_HEIGHT,
                                   g_param_spec_int ("rotate-handle-height",
                                                "height of rotation handle",
                                                "height of rotation handle",
                                                0, G_MAXINT,
                                                0,
                                                CLUTTER_PARAM_READWRITE));

  /**
   * ClutterDominatrix:move-handle-width:
   *
   * Width of the move handle.
   */
  g_object_class_install_property (object_class,
                                   PROP_MOVE_HANDLE_WIDTH,
                                   g_param_spec_int ("move-handle-width",
                                                "width of move handle",
                                                "width of move handle",
                                                0, G_MAXINT,
                                                0,
                                                CLUTTER_PARAM_READWRITE));

  /**
   * ClutterDominatrix:move-handle-height:
   *
   * Height of the move handle.
   */
  g_object_class_install_property (object_class,
                                   PROP_MOVE_HANDLE_HEIGHT,
                                   g_param_spec_int ("move-handle-height",
                                                "height of move handle",
                                                "height of move handle",
                                                0, G_MAXINT,
                                                0,
                                                CLUTTER_PARAM_READWRITE));

  
  /**
   * ClutterDominatrix:slave:
   *
   * Slave we are manipulating.
   */
  g_object_class_install_property (object_class,
                                   PROP_SLAVE,
                                   g_param_spec_pointer ("slave",
                                                "slave",
                                                "slave",
				                G_PARAM_CONSTRUCT |
						CLUTTER_PARAM_READWRITE));

  /**
   * ClutterDominatrix:scale:
   *
   * Whether dragging in the no-mans land should be translated to scaling
   * or resizing. Deafult TRUE
   */
  g_object_class_install_property (object_class,
                                   PROP_SCALE,
                                   g_param_spec_boolean ("scale",
                                                "whether to scale or resize",
                                                "whether to scale or resize",
						TRUE,
                                                CLUTTER_PARAM_READWRITE));

  /**
   * ClutterDominatrix:disable-rotation:
   *
   * Whether rotation should be disabled; default FALSE
   */
  g_object_class_install_property (object_class,
                                   PROP_DISABLE_ROTATION,
                                   g_param_spec_boolean ("disable-rotation",
                                                "whether to rotate",
                                                "whether to rotate",
						FALSE,
                                                CLUTTER_PARAM_READWRITE));
  

  /**
   * ClutterDominatrix:disable-resizing:
   *
   * Whether resizing should be disabled; default FALSE
   */
  g_object_class_install_property (object_class,
                                   PROP_DISABLE_RESIZING,
                                   g_param_spec_boolean ("disable-resizing",
                                                "whether to resize",
                                                "whether to resize",
						FALSE,
                                                CLUTTER_PARAM_READWRITE));
  
  /**
   * ClutterDominatrix:disable-movement:
   *
   * Whether moving should be disabled; default FALSE
   */
  g_object_class_install_property (object_class,
                                   PROP_DISABLE_MOVEMENT,
                                   g_param_spec_boolean ("disable-movement",
                                                "whether to move",
                                                "whether to move",
						FALSE,
                                                CLUTTER_PARAM_READWRITE));
  
  /**
   * ClutterDominatrix:gravity:
   *
   * Gravity to use when scaling; default CLUTTER_GRAVITY_CENTER
   */
  g_object_class_install_property (object_class,
                                   PROP_GRAVITY,
                                   g_param_spec_enum ("gravity",
                                            "which gravity to use for scaling",
                                            "which gravity to use for scaling",
					    CLUTTER_TYPE_GRAVITY,
					    CLUTTER_GRAVITY_CENTER,
			                    G_PARAM_CONSTRUCT |
                                            CLUTTER_PARAM_READWRITE));

  /**
   * ClutterDominatrix::manipulation-started:
   * @dmx: the object which received the signal
   *
   * This signal is emitted each time the users starts to manipulate the
   * actor.
   *
   */
  dmx_signals[MANIPULATION_STARTED] =
    g_signal_new ("manipulation-started",
                  G_TYPE_FROM_CLASS (object_class),
                  G_SIGNAL_RUN_LAST,
                  G_STRUCT_OFFSET (ClutterDominatrixClass,
				   manipulation_started),
                  NULL, NULL,
                  g_cclosure_marshal_VOID__VOID,
                  G_TYPE_NONE, 0);
  
  /**
   * ClutterDominatrix::manipulation-ended:
   * @dmx: the object which received the signal
   *
   * This signal is emitted each time the users starts to manipulate the
   * actor.
   *
   */
  dmx_signals[MANIPULATION_ENDED] =
    g_signal_new ("manipulation-ended",
                  G_TYPE_FROM_CLASS (object_class),
                  G_SIGNAL_RUN_LAST,
                  G_STRUCT_OFFSET (ClutterDominatrixClass,
				   manipulation_ended),
                  NULL, NULL,
                  g_cclosure_marshal_VOID__VOID,
                  G_TYPE_NONE, 0);
}
コード例 #15
0
ファイル: gstgnomevfssrc.c プロジェクト: spunktsch/svtplayer
static void
gst_gnome_vfs_src_class_init (GstGnomeVFSSrcClass * klass)
{
  GObjectClass *gobject_class;
  GstBaseSrcClass *gstbasesrc_class;

  gobject_class = G_OBJECT_CLASS (klass);
  gstbasesrc_class = GST_BASE_SRC_CLASS (klass);

  parent_class = g_type_class_peek_parent (klass);

  gobject_class->finalize = gst_gnome_vfs_src_finalize;
  gobject_class->set_property = gst_gnome_vfs_src_set_property;
  gobject_class->get_property = gst_gnome_vfs_src_get_property;

  /* properties */
  gst_element_class_install_std_props (GST_ELEMENT_CLASS (klass),
      "location", ARG_LOCATION, G_PARAM_READWRITE, NULL);
  g_object_class_install_property (gobject_class,
      ARG_HANDLE,
      g_param_spec_boxed ("handle",
          "GnomeVFSHandle", "Handle for GnomeVFS",
          GST_TYPE_GNOME_VFS_HANDLE,
          GST_PARAM_MUTABLE_READY | G_PARAM_READWRITE |
          G_PARAM_STATIC_STRINGS));

  /* icecast stuff */
  g_object_class_install_property (gobject_class,
      ARG_IRADIO_MODE,
      g_param_spec_boolean ("iradio-mode",
          "iradio-mode",
          "Enable internet radio mode (extraction of shoutcast/icecast metadata)",
          FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class,
      ARG_IRADIO_NAME,
      g_param_spec_string ("iradio-name",
          "iradio-name", "Name of the stream", NULL,
          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, ARG_IRADIO_GENRE,
      g_param_spec_string ("iradio-genre", "iradio-genre",
          "Genre of the stream", NULL,
          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, ARG_IRADIO_URL,
      g_param_spec_string ("iradio-url", "iradio-url",
          "Homepage URL for radio stream", NULL,
          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, ARG_IRADIO_TITLE,
      g_param_spec_string ("iradio-title", "iradio-title",
          "Name of currently playing song", NULL,
          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));

  gstbasesrc_class->start = GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_start);
  gstbasesrc_class->stop = GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_stop);
  gstbasesrc_class->get_size = GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_get_size);
  gstbasesrc_class->is_seekable =
      GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_is_seekable);
  gstbasesrc_class->check_get_range =
      GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_check_get_range);
  gstbasesrc_class->create = GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_create);
  gstbasesrc_class->query = GST_DEBUG_FUNCPTR (gst_gnome_vfs_src_query);
}
コード例 #16
0
static void
nmt_newt_listbox_class_init (NmtNewtListboxClass *listbox_class)
{
	GObjectClass *object_class = G_OBJECT_CLASS (listbox_class);
	NmtNewtWidgetClass *widget_class = NMT_NEWT_WIDGET_CLASS (listbox_class);
	NmtNewtComponentClass *component_class = NMT_NEWT_COMPONENT_CLASS (listbox_class);

	g_type_class_add_private (listbox_class, sizeof (NmtNewtListboxPrivate));

	/* virtual methods */
	object_class->set_property = nmt_newt_listbox_set_property;
	object_class->get_property = nmt_newt_listbox_get_property;
	object_class->finalize     = nmt_newt_listbox_finalize;

	widget_class->size_request  = nmt_newt_listbox_size_request;
	widget_class->size_allocate = nmt_newt_listbox_size_allocate;
	widget_class->activated     = nmt_newt_listbox_activated;

	component_class->build_component = nmt_newt_listbox_build_component;

	/* properties */

	/**
	 * NmtNewtListbox:height:
	 *
	 * The listbox's height, or -1 if it has no fixed height.
	 */
	g_object_class_install_property
		(object_class, PROP_HEIGHT,
		 g_param_spec_int ("height", "", "",
		                   -1, 255, -1,
		                   G_PARAM_READWRITE |
		                   G_PARAM_STATIC_STRINGS));
	/**
	 * NmtNewtListbox:flags:
	 *
	 * The listbox's #NmtNewtListboxFlags.
	 */
	g_object_class_install_property
		(object_class, PROP_FLAGS,
		 g_param_spec_uint ("flags", "", "",
		                    0, 0xFFFF, 0,
		                    G_PARAM_READWRITE |
		                    G_PARAM_CONSTRUCT_ONLY |
		                    G_PARAM_STATIC_STRINGS));
	/**
	 * NmtNewtListbox:active:
	 *
	 * The currently-selected row.
	 */
	g_object_class_install_property
		(object_class, PROP_ACTIVE,
		 g_param_spec_int ("active", "", "",
		                   0, G_MAXINT, 0,
		                   G_PARAM_READWRITE |
		                   G_PARAM_STATIC_STRINGS));
	/**
	 * NmtNewtListbox:active-key:
	 *
	 * The key of the currently-selected row.
	 */
	g_object_class_install_property
		(object_class, PROP_ACTIVE_KEY,
		 g_param_spec_pointer ("active-key", "", "",
		                       G_PARAM_READWRITE |
		                       G_PARAM_STATIC_STRINGS));
	/**
	 * NmtNewtListbox:skip-null-keys:
	 *
	 * If %TRUE, rows with %NULL key values will be skipped over when
	 * navigating the list with the arrow keys.
	 */
	g_object_class_install_property
		(object_class, PROP_SKIP_NULL_KEYS,
		 g_param_spec_boolean ("skip-null-keys", "", "",
		                       FALSE,
		                       G_PARAM_READWRITE |
		                       G_PARAM_CONSTRUCT_ONLY |
		                       G_PARAM_STATIC_STRINGS));
}
コード例 #17
0
static void
egg_piecewise_linear_view_class_init (EggPiecewiseLinearViewClass *klass)
{
    GObjectClass    *gobject_class = G_OBJECT_CLASS (klass);
    GtkWidgetClass  *widget_class  = GTK_WIDGET_CLASS (klass);

    gobject_class->set_property = egg_piecewise_linear_view_set_property;
    gobject_class->get_property = egg_piecewise_linear_view_get_property;
    gobject_class->dispose = egg_piecewise_linear_view_dispose;

    widget_class->size_request = egg_piecewise_linear_view_size_request;
    widget_class->expose_event = egg_piecewise_linear_view_expose;
    widget_class->button_press_event = egg_piecewise_linear_button_press;
    widget_class->button_release_event = egg_piecewise_linear_button_release;
    widget_class->motion_notify_event = egg_piecewise_linear_motion_notify;

    egg_piecewise_linear_view_properties[PROP_GRID_X] =
        g_param_spec_boolean ("x-grid",
                              "TRUE if grid on x-axis should be shown",
                              "TRUE if grid on x-axis should be shown",
                              TRUE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_GRID_Y] =
        g_param_spec_boolean ("y-grid",
                              "TRUE if grid on y-axis should be shown",
                              "TRUE if grid on y-axis should be shown",
                              TRUE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_SNAP_TO_X] =
        g_param_spec_boolean ("snap-to-x",
                              "TRUE if points should snap to x-axis",
                              "TRUE if points should snap to x-axis",
                              FALSE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_SNAP_TO_Y] =
        g_param_spec_boolean ("snap-to-y",
                              "TRUE if points should snap to y-axis",
                              "TRUE if points should snap to y-axis",
                              FALSE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_GRID_X_INCREMENT] =
        g_param_spec_double ("x-grid-increment",
                             "Number of values to skip between x-axis grid lines",
                             "Number of values to skip between x-axis grid lines",
                             0.0, DBL_MAX, 1.0,
                             G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_GRID_Y_INCREMENT] =
        g_param_spec_double ("y-grid-increment",
                             "Number of values to skip between y-axis grid lines",
                             "Number of values to skip between y-axis grid lines",
                             0.0, DBL_MAX, 1.0,
                             G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_FIXED_X] =
        g_param_spec_boolean ("fixed-x-axis",
                              "TRUE if x values cannot be changed",
                              "TRUE if x values cannot be changed",
                              FALSE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_FIXED_Y] =
        g_param_spec_boolean ("fixed-y-axis",
                              "TRUE if y values cannot be changed",
                              "TRUE if y values cannot be changed",
                              FALSE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_FIXED_BORDERS] =
        g_param_spec_boolean ("fixed-borders",
                              "TRUE if border values cannot be changed",
                              "TRUE if border values cannot be changed",
                              FALSE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_RESTRICT_X] =
        g_param_spec_boolean ("restrict-x",
                              "TRUE if points cannot fall below/exceed their neighbors on the x-axis",
                              "TRUE if points cannot fall below/exceed their neighbors on the x-axis",
                              FALSE,
                              G_PARAM_READWRITE);

    egg_piecewise_linear_view_properties[PROP_RESTRICT_Y] =
        g_param_spec_boolean ("restrict-y",
                              "TRUE if points cannot fall below/exceed their neighbors on the y-axis",
                              "TRUE if points cannot fall below/exceed their neighbors on the y-axis",
                              FALSE,
                              G_PARAM_READWRITE);

    g_object_class_install_properties (gobject_class,
                                       N_PROPERTIES,
                                       egg_piecewise_linear_view_properties);

    egg_piecewise_linear_view_signals[POINT_CHANGED] =
        g_signal_new ("point-changed",
                      G_TYPE_FROM_CLASS (klass),
                      G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
                      0,
                      NULL, NULL,
                      g_cclosure_marshal_VOID__UINT,
                      G_TYPE_NONE,
                      1, G_TYPE_UINT);

    g_type_class_add_private (klass, sizeof (EggPiecewiseLinearViewPrivate));
}
コード例 #18
0
ファイル: tidy-grid.c プロジェクト: knewter/gnome-shell
static void
tidy_grid_class_init (TidyGridClass *klass)
{
  GObjectClass *gobject_class = (GObjectClass *) klass;
  ClutterActorClass *actor_class = (ClutterActorClass *) klass;

  gobject_class->dispose = tidy_grid_dispose;
  gobject_class->finalize = tidy_grid_finalize;

  gobject_class->set_property = tidy_grid_set_property;
  gobject_class->get_property = tidy_grid_get_property;

  actor_class->paint                = tidy_grid_paint;
  actor_class->pick                 = tidy_grid_pick;
  actor_class->get_preferred_width  = tidy_grid_get_preferred_width;
  actor_class->get_preferred_height = tidy_grid_get_preferred_height;
  actor_class->allocate             = tidy_grid_allocate;

  g_type_class_add_private (klass, sizeof (TidyGridPrivate));


  g_object_class_install_property
                   (gobject_class,
                    PROP_ROW_GAP,
                    clutter_param_spec_unit ("row-gap",
                                             "Row gap",
                                             "gap between rows in the layout",
                                             0, CLUTTER_MAXUNIT,
                                             0,
                                             G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

  g_object_class_install_property
                   (gobject_class,
                    PROP_COLUMN_GAP,
                    clutter_param_spec_unit ("column-gap",
                                             "Column gap",
                                             "gap between columns in the layout",
                                             0, CLUTTER_MAXUNIT,
                                             0,
                                             G_PARAM_READWRITE|G_PARAM_CONSTRUCT));


  g_object_class_install_property
                   (gobject_class,
                    PROP_HOMOGENOUS_ROWS,
                    g_param_spec_boolean ("homogenous-rows",
                                          "homogenous rows",
                                          "Should all rows have the same height?",
                                          FALSE,
                                          G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

  g_object_class_install_property
                   (gobject_class,
                    PROP_HOMOGENOUS_COLUMNS,
                    g_param_spec_boolean ("homogenous-columns",
                                          "homogenous columns",
                                          "Should all columns have the same height?",
                                          FALSE,
                                          G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

  g_object_class_install_property
                   (gobject_class,
                    PROP_COLUMN_MAJOR,
                    g_param_spec_boolean ("column-major",
                                          "column-major",
                                          "Do a column filling first instead of row filling first",
                                          FALSE,
                                          G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

  g_object_class_install_property
                   (gobject_class,
                    PROP_END_ALIGN,
                    g_param_spec_boolean ("end-align",
                                          "end-align",
                                          "Right/bottom aligned rows/columns",
                                          FALSE,
                                          G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

  g_object_class_install_property
                   (gobject_class,
                    PROP_VALIGN,
                    g_param_spec_double ("valign",
                                         "Vertical align",
                                         "Vertical alignment of items within cells",
                                          0.0, 1.0, 0.0,
                                          G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

  g_object_class_install_property
                   (gobject_class,
                    PROP_HALIGN,
                    g_param_spec_double ("halign",
                                         "Horizontal align",
                                         "Horizontal alignment of items within cells",
                                          0.0, 1.0, 0.0,
                                          G_PARAM_READWRITE|G_PARAM_CONSTRUCT));

}
コード例 #19
0
					 g_param_spec_object ("data-model", NULL, "Data model for which the iter is for", 
                                                               GDA_TYPE_DATA_MODEL, 
							       (G_PARAM_READABLE | G_PARAM_WRITABLE |
								G_PARAM_CONSTRUCT)));
	g_object_class_install_property (object_class, PROP_FORCED_MODEL,
					 g_param_spec_object ("forced-model", NULL, "Overrides the data model the iter "
							      "is attached to (reserved for internal usage)", 
                                                               GDA_TYPE_DATA_MODEL,
							       (G_PARAM_READABLE | G_PARAM_WRITABLE)));
	g_object_class_install_property (object_class, PROP_CURRENT_ROW,
					 g_param_spec_int ("current-row", NULL, "Current represented row in the data model", 
							   -1, G_MAXINT, -1,
							   (G_PARAM_READABLE | G_PARAM_WRITABLE)));
	g_object_class_install_property (object_class, PROP_UPDATE_MODEL,
					 g_param_spec_boolean ("update-model", "Tells if parameters changes are forwarded "
							       "to the GdaDataModel", NULL, TRUE,
							       (G_PARAM_READABLE | G_PARAM_WRITABLE)));
}

static void
gda_data_model_iter_init (GdaDataModelIter *iter)
{
	iter->priv = g_new0 (GdaDataModelIterPrivate, 1);
	iter->priv->data_model = NULL;
	iter->priv->row = -1;
	iter->priv->model_changes_signals[0] = 0;
	iter->priv->model_changes_signals[1] = 0;
	iter->priv->model_changes_signals[2] = 0;
	iter->priv->keep_param_changes = FALSE;
}
コード例 #20
0
ファイル: gstspectrum.c プロジェクト: adesurya/gst-mobile
static void
gst_spectrum_class_init (GstSpectrumClass * klass)
{
  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
  GstBaseTransformClass *trans_class = GST_BASE_TRANSFORM_CLASS (klass);
  GstAudioFilterClass *filter_class = GST_AUDIO_FILTER_CLASS (klass);
  GstCaps *caps;

  gobject_class->set_property = gst_spectrum_set_property;
  gobject_class->get_property = gst_spectrum_get_property;
  gobject_class->finalize = gst_spectrum_finalize;

  trans_class->start = GST_DEBUG_FUNCPTR (gst_spectrum_start);
  trans_class->stop = GST_DEBUG_FUNCPTR (gst_spectrum_stop);
  trans_class->transform_ip = GST_DEBUG_FUNCPTR (gst_spectrum_transform_ip);
  trans_class->passthrough_on_same_caps = TRUE;

  filter_class->setup = GST_DEBUG_FUNCPTR (gst_spectrum_setup);

  /**
   * GstSpectrum:post-messages
   *
   * Post messages on the bus with spectrum information.
   *
   * Since: 0.10.17
   */
  g_object_class_install_property (gobject_class, PROP_POST_MESSAGES,
      g_param_spec_boolean ("post-messages", "Post Messages",
          "Whether to post a 'spectrum' element message on the bus for each "
          "passed interval", DEFAULT_POST_MESSAGES,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_MESSAGE_MAGNITUDE,
      g_param_spec_boolean ("message-magnitude", "Magnitude",
          "Whether to add a 'magnitude' field to the structure of any "
          "'spectrum' element messages posted on the bus",
          DEFAULT_MESSAGE_MAGNITUDE,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_MESSAGE_PHASE,
      g_param_spec_boolean ("message-phase", "Phase",
          "Whether to add a 'phase' field to the structure of any "
          "'spectrum' element messages posted on the bus",
          DEFAULT_MESSAGE_PHASE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_INTERVAL,
      g_param_spec_uint64 ("interval", "Interval",
          "Interval of time between message posts (in nanoseconds)",
          1, G_MAXUINT64, DEFAULT_INTERVAL,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_BANDS,
      g_param_spec_uint ("bands", "Bands", "Number of frequency bands",
          0, G_MAXUINT, DEFAULT_BANDS,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (gobject_class, PROP_THRESHOLD,
      g_param_spec_int ("threshold", "Threshold",
          "dB threshold for result. All lower values will be set to this",
          G_MININT, 0, DEFAULT_THRESHOLD,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  /**
   * GstSpectrum:multi-channel
   *
   * Send separate results for each channel
   *
   * Since: 0.10.29
   */
  g_object_class_install_property (gobject_class, PROP_MULTI_CHANNEL,
      g_param_spec_boolean ("multi-channel", "Multichannel results",
          "Send separate results for each channel",
          DEFAULT_MULTI_CHANNEL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  GST_DEBUG_CATEGORY_INIT (gst_spectrum_debug, "spectrum", 0,
      "audio spectrum analyser element");

  gst_element_class_set_static_metadata (element_class, "Spectrum analyzer",
      "Filter/Analyzer/Audio",
      "Run an FFT on the audio signal, output spectrum data",
      "Erik Walthinsen <*****@*****.**>, "
      "Stefan Kost <*****@*****.**>, "
      "Sebastian Dröge <*****@*****.**>");

  caps = gst_caps_from_string (ALLOWED_CAPS);
  gst_audio_filter_class_add_pad_templates (filter_class, caps);
  gst_caps_unref (caps);
}
コード例 #21
0
ファイル: eggspreadtablednd.c プロジェクト: UIKit0/glom
						     EGG_DRAG_ENABLED,
						     G_PARAM_READABLE | G_PARAM_WRITABLE));

  /**
   * EggSpreadTableDnd:drop-enabled:
   *
   * Whether this spread table accepts drops.
   *
   * If this is set to %FALSE then the EggSpreadTableDnd::widget-drop-possible
   * signal will never be emitted.
   */
  g_object_class_install_property (gobject_class,
                                   PROP_DROP_ENABLED,
                                   g_param_spec_boolean ("drop-enabled",
							 P_("Drop Enabled"),
							 P_("Whether this spread table accepts drops"),
							 TRUE,
							 G_PARAM_READABLE | G_PARAM_WRITABLE));


  /**
   * EggSpreadTableDnd::widget-drop-possible:
   * @eggspreadtablednd: An #EggSpreadTableDnd
   * @widget: The currently dragging widget to check
   * @drop_possible: (out): Location to store whether the @eggspreadtablednd should accept @widget
   *
   * Emitted to check if @widget can be dropped into @eggspreadtablednd.
   *
   * The first connected signal to return TRUE decides whether @widget
   * can be dropped into @eggspreadtablednd.
   *
コード例 #22
0
static void
modem_class_init (ModemClass *klass)
{
  GObjectClass *object_class = G_OBJECT_CLASS (klass);
  ModemOfaceClass *oface_class = MODEM_OFACE_CLASS (klass);

  DEBUG ("enter");

  object_class->constructed = modem_constructed;
  object_class->dispose = modem_dispose;
  object_class->finalize = modem_finalize;
  object_class->get_property = modem_get_property;
  object_class->set_property = modem_set_property;

  oface_class->ofono_interface = MODEM_OFACE_MODEM;
  oface_class->property_mapper = modem_property_mapper;
  oface_class->connect = modem_connect;
  oface_class->disconnect = modem_disconnect;

  g_type_class_add_private (klass, sizeof (ModemPrivate));

  signals[SIGNAL_INTERFACE_ADDED] = g_signal_new ("interface-added",
      G_OBJECT_CLASS_TYPE (klass),
      G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
      0,
      NULL, NULL,
      g_cclosure_marshal_VOID__OBJECT,
      G_TYPE_NONE, 1, G_TYPE_OBJECT);

  signals[SIGNAL_INTERFACE_REMOVED] = g_signal_new ("interface-removed",
      G_OBJECT_CLASS_TYPE (klass),
      G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
      0,
      NULL, NULL,
      g_cclosure_marshal_VOID__OBJECT,
      G_TYPE_NONE, 1, G_TYPE_OBJECT);

  signals[SIGNAL_IMSI_ADDED] = g_signal_new ("imsi-added",
      G_OBJECT_CLASS_TYPE (klass),
      G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
      0,
      NULL, NULL,
      g_cclosure_marshal_VOID__STRING,
      G_TYPE_NONE, 1, G_TYPE_STRING);

  g_object_class_install_property (object_class, PROP_POWERED,
      g_param_spec_boolean ("powered",
          "Powered",
          "The power state of the modem device",
          FALSE,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_ONLINE,
      g_param_spec_boolean ("online",
          "Online",
          "The radio state of the modem. Online is false in flight mode.",
          FALSE,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_NAME,
      g_param_spec_string ("name",
          "Name",
          "Friendly name of the modem device.",
          "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_MANUFACTURER,
      g_param_spec_string ("manufacturer",
          "Manufacturer",
          "The manufacturer of the modem device.",
          "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_MODEL,
      g_param_spec_string ("model",
          "Model",
          "The model of the modem device.",
          "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_REVISION,
      g_param_spec_string ("revision",
          "Revision",
          "The revision of the modem device.",
          "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_IMEI,
      g_param_spec_string ("imei",
          "Serial",
          "The IMEI (serial number) of the modem device.",
          "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (object_class, PROP_FEATURES,
      g_param_spec_boxed ("features",
          "Features",
          "List of currently enabled features with simple "
          "string abbreviations like 'sms', 'sim' etc.",
          G_TYPE_STRV,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  /* XXX/KV: should this be removed as this is oFono-specific */
  g_object_class_install_property (object_class, PROP_INTERFACES,
      g_param_spec_boxed ("interfaces",
          "Interfaces",
          "Set of interfaces currently supported by the modem. "
          "The set depends on the state of the device "
          "(registration status, SIM inserted status, "
          "network capabilities, device capabilities, etc.)",
          G_TYPE_STRV,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
}
コード例 #23
0
ファイル: gstshmdatasrc.c プロジェクト: Bepartofyou/shmdata
static void
gst_shmdata_src_class_init (GstShmdataSrcClass * klass)
{
  GObjectClass *gobject_class;
  GstElementClass *gstelement_class;
  GstBaseSrcClass *gstbasesrc_class;
  GstPushSrcClass *gstpush_src_class;

  gobject_class = (GObjectClass *) klass;
  gstelement_class = (GstElementClass *) klass;
  gstbasesrc_class = (GstBaseSrcClass *) klass;
  gstpush_src_class = (GstPushSrcClass *) klass;

  gobject_class->set_property = gst_shmdata_src_set_property;
  gobject_class->get_property = gst_shmdata_src_get_property;
  gobject_class->finalize = gst_shmdata_src_finalize;

  gstelement_class->change_state = gst_shmdata_src_change_state;

  gstbasesrc_class->start = GST_DEBUG_FUNCPTR (gst_shmdata_src_start);
  gstbasesrc_class->stop = GST_DEBUG_FUNCPTR (gst_shmdata_src_stop);
  gstbasesrc_class->unlock = GST_DEBUG_FUNCPTR (gst_shmdata_src_unlock);
  gstbasesrc_class->unlock_stop = GST_DEBUG_FUNCPTR (gst_shmdata_src_unlock_stop);

  gstpush_src_class->create = gst_shmdata_src_create;

  g_object_class_install_property (gobject_class, PROP_SOCKET_PATH,
                                   g_param_spec_string ("socket-path",
                                                        "Path to the control socket",
                                                        "The path to the control socket used to control the shared memory"
                                                        " transport", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (
      gobject_class,
      PROP_CAPS,
      g_param_spec_string (
          "caps",
          "Data type exposed in the shared memory",
          "The data type (caps) exposed in the shared memory, and proposed for negociation",
          NULL,
          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));

  g_object_class_install_property (
      gobject_class,
      PROP_BYTES_SINCE_LAST_REQUEST,
      g_param_spec_uint64 (
          "bytes",
          "Bytes number since last request",
          "The number of bytes that passed the shmdata since last request",
          0,
          G_MAXUINT64,
          0,
          G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
  
  g_object_class_install_property (
      gobject_class,
      PROP_COPY_BUFFERS,
      g_param_spec_boolean ("copy-buffers", "copy buffers into the pipeline",
                            "False if buffers from shared memory are used into the pipeline",
                            FALSE,
                            G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  
  gst_element_class_add_pad_template (gstelement_class,
                                      gst_static_pad_template_get (&srctemplate));

  gst_element_class_set_static_metadata (gstelement_class,
                                         "Shmdata Source",
                                         "Source",
                                         "Receive data from a shmdata",
                                         "Nicolas Bouillot <*****@*****.**>");

  GST_DEBUG_CATEGORY_INIT (shmdatasrc_debug, "shmdatasrc", 0, "Shmdata Source");
}
コード例 #24
0
ファイル: gtktogglebutton.c プロジェクト: 3v1n0/gtk
  button_class = (GtkButtonClass*) class;

  gobject_class->set_property = gtk_toggle_button_set_property;
  gobject_class->get_property = gtk_toggle_button_get_property;

  widget_class->mnemonic_activate = gtk_toggle_button_mnemonic_activate;

  button_class->clicked = gtk_toggle_button_clicked;

  class->toggled = NULL;

  g_object_class_install_property (gobject_class,
                                   PROP_ACTIVE,
                                   g_param_spec_boolean ("active",
							 P_("Active"),
							 P_("If the toggle button should be pressed in"),
							 FALSE,
							 GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));

  g_object_class_install_property (gobject_class,
                                   PROP_INCONSISTENT,
                                   g_param_spec_boolean ("inconsistent",
							 P_("Inconsistent"),
							 P_("If the toggle button is in an \"in between\" state"),
							 FALSE,
							 GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));

  g_object_class_install_property (gobject_class,
                                   PROP_DRAW_INDICATOR,
                                   g_param_spec_boolean ("draw-indicator",
							 P_("Draw Indicator"),
コード例 #25
0
static void
gst_video_parse_class_init (GstVideoParseClass * klass)
{
  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);

  gobject_class->set_property = gst_video_parse_set_property;
  gobject_class->get_property = gst_video_parse_get_property;

  g_object_class_install_property (gobject_class, PROP_FORMAT,
      g_param_spec_enum ("format", "Format", "Format of images in raw stream",
          GST_TYPE_VIDEO_FORMAT, GST_VIDEO_FORMAT_I420,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_WIDTH,
      g_param_spec_int ("width", "Width", "Width of images in raw stream",
          0, INT_MAX, 320, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_HEIGHT,
      g_param_spec_int ("height", "Height", "Height of images in raw stream",
          0, INT_MAX, 240, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_FRAMERATE,
      gst_param_spec_fraction ("framerate", "Frame Rate",
          "Frame rate of images in raw stream", 0, 1, G_MAXINT, 1, 25, 1,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_PAR,
      gst_param_spec_fraction ("pixel-aspect-ratio", "Pixel Aspect Ratio",
          "Pixel aspect ratio of images in raw stream", 1, 100, 100, 1, 1, 1,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_INTERLACED,
      g_param_spec_boolean ("interlaced", "Interlaced flag",
          "True if video is interlaced", FALSE,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_TOP_FIELD_FIRST,
      g_param_spec_boolean ("top-field-first", "Top field first",
          "True if top field is earlier than bottom field", TRUE,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_STRIDES,
      g_param_spec_string ("strides", "Strides",
          "Stride of each planes in bytes using string format: 's0,s1,s2,s3'",
          NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_OFFSETS,
      g_param_spec_string ("offsets", "Offsets",
          "Offset of each planes in bytes using string format: 'o0,o1,o2,o3'",
          NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_FRAMESIZE,
      g_param_spec_uint ("framesize", "Framesize",
          "Size of an image in raw stream (0: default)", 0, G_MAXUINT, 0,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  gst_element_class_set_static_metadata (gstelement_class, "Video Parse",
      "Filter/Video",
      "Converts stream into video frames (deprecated: use rawvideoparse instead)",
      "David Schleef <*****@*****.**>, "
      "Sebastian Dröge <*****@*****.**>");

  gst_element_class_add_pad_template (gstelement_class,
      gst_static_pad_template_get (&static_sink_template));
  gst_element_class_add_pad_template (gstelement_class,
      gst_static_pad_template_get (&static_src_template));

  GST_DEBUG_CATEGORY_INIT (gst_video_parse_debug, "videoparse", 0,
      "videoparse element");
}
コード例 #26
0
static void
propono_connection_class_init (ProponoConnectionClass *klass)
{
  GObjectClass* object_class = G_OBJECT_CLASS (klass);

  g_type_class_add_private (klass, sizeof (ProponoConnectionPrivate));

  object_class->finalize = propono_connection_finalize;
  object_class->set_property = propono_connection_set_property;
  object_class->get_property = propono_connection_get_property;

  klass->impl_fill_writer = default_fill_writer;
  klass->impl_parse_item = default_parse_item;
  klass->impl_get_best_name = default_get_best_name;
  klass->impl_fill_conn_from_file = NULL;
  klass->impl_parse_options_widget = default_parse_options_widget;

  g_object_class_install_property (object_class,
                                   PROP_PROTOCOL,
                                   g_param_spec_string ("protocol",
                                                        "protocol",
	                                                "connection protocol",
                                                        NULL,
	                                                G_PARAM_READWRITE |
                                                        G_PARAM_CONSTRUCT |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_HOST,
                                   g_param_spec_string ("host",
                                                        "hostname",
	                                                "hostname or ip address of this connection",
                                                        NULL,
	                                                G_PARAM_READWRITE |
                                                        G_PARAM_CONSTRUCT |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_PORT,
                                   g_param_spec_int ("port",
                                                     "port",
	                                              "tcp/ip port of this connection",
                                                      0,
                                                      G_MAXINT,
                                                      0,
	                                              G_PARAM_READWRITE |
                                                      G_PARAM_CONSTRUCT |
                                                      G_PARAM_STATIC_NICK |
                                                      G_PARAM_STATIC_NAME |
                                                      G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_USERNAME,
                                   g_param_spec_string ("username",
                                                        "username",
	                                                "username (if any) necessary for complete this connection",
                                                        NULL,
	                                                G_PARAM_READWRITE |
                                                        G_PARAM_CONSTRUCT |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_PASSWORD,
                                   g_param_spec_string ("password",
                                                        "password",
	                                                "password (if any) necessary for complete this connection",
                                                        NULL,
	                                                G_PARAM_READWRITE |
                                                        G_PARAM_CONSTRUCT |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_NAME,
                                   g_param_spec_string ("name",
                                                        "connection name",
	                                                "friendly name for this connection",
                                                        NULL,
	                                                G_PARAM_READWRITE |
                                                        G_PARAM_CONSTRUCT |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_BEST_NAME,
                                   g_param_spec_string ("best-name",
                                                        "best-name",
	                                                "preferred name for this connection",
                                                        NULL,
	                                                G_PARAM_READABLE |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

  g_object_class_install_property (object_class,
                                   PROP_FULLSCREEN,
                                   g_param_spec_boolean ("fullscreen",
                                                        "Full screen connection",
	                                                "Whether this connection is a view-only one",
                                                        FALSE,
	                                                G_PARAM_READWRITE |
                                                        G_PARAM_CONSTRUCT |
                                                        G_PARAM_STATIC_NICK |
                                                        G_PARAM_STATIC_NAME |
                                                        G_PARAM_STATIC_BLURB));

}
static void
gst_soup_http_client_sink_class_init (GstSoupHttpClientSinkClass * klass)
{
  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
  GstBaseSinkClass *base_sink_class = GST_BASE_SINK_CLASS (klass);

  gobject_class->set_property = gst_soup_http_client_sink_set_property;
  gobject_class->get_property = gst_soup_http_client_sink_get_property;
  gobject_class->dispose = gst_soup_http_client_sink_dispose;
  gobject_class->finalize = gst_soup_http_client_sink_finalize;

  g_object_class_install_property (gobject_class,
      PROP_LOCATION,
      g_param_spec_string ("location", "Location",
          "URI to send to", "", G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class,
      PROP_USER_AGENT,
      g_param_spec_string ("user-agent", "User-Agent",
          "Value of the User-Agent HTTP request header field",
          DEFAULT_USER_AGENT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class,
      PROP_AUTOMATIC_REDIRECT,
      g_param_spec_boolean ("automatic-redirect", "automatic-redirect",
          "Automatically follow HTTP redirects (HTTP Status Code 3xx)",
          TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class,
      PROP_PROXY,
      g_param_spec_string ("proxy", "Proxy",
          "HTTP proxy server URI", "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class,
      PROP_USER_ID,
      g_param_spec_string ("user-id", "user-id",
          "user id for authentication", "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_USER_PW,
      g_param_spec_string ("user-pw", "user-pw",
          "user password for authentication", "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_PROXY_ID,
      g_param_spec_string ("proxy-id", "proxy-id",
          "user id for proxy authentication", "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_PROXY_PW,
      g_param_spec_string ("proxy-pw", "proxy-pw",
          "user password for proxy authentication", "",
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_SESSION,
      g_param_spec_object ("session", "session",
          "SoupSession object to use for communication",
          SOUP_TYPE_SESSION, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_COOKIES,
      g_param_spec_boxed ("cookies", "Cookies", "HTTP request cookies",
          G_TYPE_STRV, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_RETRY_DELAY,
      g_param_spec_int ("retry-delay", "Retry Delay",
          "Delay in seconds between retries after a failure", 1, G_MAXINT, 5,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
  g_object_class_install_property (gobject_class, PROP_RETRIES,
      g_param_spec_int ("retries", "Retries",
          "Maximum number of retries, zero to disable, -1 to retry forever",
          -1, G_MAXINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 /**
   * GstSoupHttpClientSink::http-log-level:
   *
   * If set and > 0, captures and dumps HTTP session data as
   * log messages if log level >= GST_LEVEL_TRACE
   *
   * Since: 1.4
   */
  g_object_class_install_property (gobject_class, PROP_SOUP_LOG_LEVEL,
      g_param_spec_enum ("http-log-level", "HTTP log level",
          "Set log level for soup's HTTP session log",
          SOUP_TYPE_LOGGER_LOG_LEVEL, DEFAULT_SOUP_LOG_LEVEL,
          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));

  gst_element_class_add_static_pad_template (gstelement_class,
      &gst_soup_http_client_sink_sink_template);

  gst_element_class_set_static_metadata (gstelement_class, "HTTP client sink",
      "Generic", "Sends streams to HTTP server via PUT",
      "David Schleef <*****@*****.**>");

  base_sink_class->set_caps =
      GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_set_caps);
  if (0)
    base_sink_class->get_times =
        GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_get_times);
  base_sink_class->start = GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_start);
  base_sink_class->stop = GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_stop);
  base_sink_class->unlock =
      GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_unlock);
  base_sink_class->event = GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_event);
  if (0)
    base_sink_class->preroll =
        GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_preroll);
  base_sink_class->render =
      GST_DEBUG_FUNCPTR (gst_soup_http_client_sink_render);

  GST_DEBUG_CATEGORY_INIT (souphttpclientsink_dbg, "souphttpclientsink", 0,
      "souphttpclientsink element");

}
コード例 #28
0
ファイル: psppire-selector.c プロジェクト: RobertDash/pspp
  GObjectClass *object_class = G_OBJECT_CLASS (class);
  GtkButtonClass *button_class = GTK_BUTTON_CLASS (class);
  GParamSpec *orientation_spec =
    g_param_spec_enum ("orientation",
		       "Orientation",
		       "Where the selector is relative to its subjects",
		       PSPPIRE_TYPE_SELECTOR_ORIENTATION,
		       PSPPIRE_SELECT_SOURCE_BEFORE_DEST /* default value */,
		       G_PARAM_CONSTRUCT_ONLY |G_PARAM_READWRITE);


 /* Meaningfull only if more than one selector shares this selectors source */
  GParamSpec *primary_spec =
    g_param_spec_boolean ("primary",
			  "Primary",
			  "Whether this selector should be the primary selector for the source",
			  FALSE,
			  G_PARAM_READWRITE);

  GParamSpec *source_widget_spec = 
    g_param_spec_object ("source-widget",
			 "Source Widget",
			 "The widget to be used as the source for this selector",
			 GTK_TYPE_WIDGET,
			 G_PARAM_READWRITE);

  GParamSpec *dest_widget_spec = 
    g_param_spec_object ("dest-widget",
			 "Destination Widget",
			 "The widget to be used as the destination for this selector",
			 GTK_TYPE_WIDGET,
コード例 #29
0
ファイル: source-spinner-item.c プロジェクト: rmujica/Nitido
static void source_spinner_item_class_init (SourceSpinnerItemClass * klass) {
	source_spinner_item_parent_class = g_type_class_peek_parent (klass);
	g_type_class_add_private (klass, sizeof (SourceSpinnerItemPrivate));
	G_OBJECT_CLASS (klass)->get_property = source_spinner_item_get_property;
	G_OBJECT_CLASS (klass)->set_property = source_spinner_item_set_property;
	G_OBJECT_CLASS (klass)->finalize = source_spinner_item_finalize;
	/**
	 * Whether or not the spinner is currently visible and spinning.
	 */
	g_object_class_install_property (G_OBJECT_CLASS (klass), SOURCE_SPINNER_ITEM_SPINNING, g_param_spec_boolean ("spinning", "spinning", "spinning", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
}
コード例 #30
0
ファイル: gstcmmltag.c プロジェクト: JJCG/gst-plugins-good
/* Clip tag */
static void
gst_cmml_tag_clip_class_init (GstCmmlTagClipClass * clip_class)
{
  GObjectClass *klass = G_OBJECT_CLASS (clip_class);

  klass->set_property = gst_cmml_tag_clip_set_property;
  klass->get_property = gst_cmml_tag_clip_get_property;
  klass->finalize = gst_cmml_tag_clip_finalize;

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_EMPTY,
      g_param_spec_boolean ("empty",
          "Empty clip flag",
          "An empty clip only marks the end of the previous clip",
          TRUE, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_ID,
      g_param_spec_string ("id",
          "Clip id",
          "Id of the clip", NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_TRACK,
      g_param_spec_string ("track",
          "Track number",
          "The track this clip belongs to",
          "default", G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_START_TIME,
      g_param_spec_uint64 ("start-time",
          "Start time",
          "The start time (in seconds) of the clip",
          0, G_MAXUINT64, GST_CLOCK_TIME_NONE,
          G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_END_TIME,
      g_param_spec_uint64 ("end-time",
          "End time",
          "The end time (in seconds) of the clip (only set if extract-mode=true)",
          0, G_MAXUINT64, GST_CLOCK_TIME_NONE,
          G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_ANCHOR_HREF,
      g_param_spec_string ("anchor-uri",
          "Anchor URI",
          "The location of a Web resource closely connected to the clip",
          NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_ANCHOR_TEXT,
      g_param_spec_string ("anchor-text",
          "Anchor text",
          "A short description of the resource pointed by anchor-uri",
          NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_IMG_SRC,
      g_param_spec_string ("img-uri",
          "Image URI",
          "The URI of a representative image for the clip",
          NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_IMG_ALT,
      g_param_spec_string ("img-alt",
          "Image alternative text",
          "Alternative text to be displayed instead of the image "
          "specified in img-uri", NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_DESC_TEXT,
      g_param_spec_string ("description",
          "Description",
          "A textual description of the content of the clip",
          NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_object_class_install_property (klass, GST_CMML_TAG_CLIP_META,
      g_param_spec_value_array ("meta",
          "Meta annotations",
          "Meta annotations for the clip",
          NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));

  g_value_register_transform_func (G_TYPE_STRING, GST_TYPE_CMML_TAG_CLIP,
      gst_cmml_tag_clip_value_from_string_value);
}