This major release includes batch of changes with loss of backward compatibility.
Add entry headers
For application of all of including libraraies, entry headers are added.
Migration to gi-docgen for documentation
The gi-docgen is used instead of gtk-doc to generate documentation.
Use utility macro to define GObject stuffs
The utility macro available since GObject v2.44 is used.
Enhancement of test scripts
Test scripts are refined so that interfaces and boxed structures are tested as well.
Loss of backward compatibility between v0.2/0.3 releases
Following to GNOME convention for throw function
In GNOME convention, the throw function to report error at GError argument should return gboolean
value to report the overall operation finished successfully or not. At v0.3 release, the most of
public API are rewritten according to it.
Using GObject Interface
GObject Interface is utilized for some cases to express structure with union.
ALSACtl.ElemInfoCommon
andALSACtl.ElemInfoSingleArray
forstruct snd_ctl_elem_info
ALSASeq.QueueTimerCommon
forstruct snd_seq_queue_timer
Therefore some GObject-derived objects implements the interfaces.
ALSACtl.ElemInfoIec60958
ALSACtl.ElemInfoBoolean
ALSACtl.ElemInfoBytes
ALSACtl.ElemInfoInteger
ALSACtl.ElemInfoInteger64
ALSACtl.ElemInfoEnumerated
ALSASeq.QueueTimerAlsa
Some boxed structures are obsoleted and removed.
ALSACtl.ElemInfo
ALSACtl.QueueTimer
ALSACtl.QueueTimerDataAlsa
GObject Interface is utlized to define common feature of hwdep device as well.
ALSAHwdep.DeviceCommon
interface is added for the purpose.
Event expression for ALSA Sequencer
ALSASeq.Event
boxed structure is newly added to each event, and ALSASeq.EventCntr
is
simplified to include deserializer only. ALSASeq.EventError
domain is newly added to express
event handling problem.
Name consistency in time stamp expression
The word tstamp
is renamed to real time
in the most of functions, enumerations, object
names, and methods for name consistency.
ALSATimer.TstampEvent
boxed structure is renamed toALSATimer.RealTimeEvent
ALSATimer.EventType
enumeration is renamed toALSATimer.RealTimeEventType
ALSATimer.EventDataType
enumeration is renamed toALSATimer.EventType
ALSATimer.InstanceStatus.get_tstamp()
method is renamed toALSATimer.InstanceStatus.get_time()
ALSATimer.get_tstamp_source()
function is renamed toALSATimer.get_real_time_clock_id()
In time stamp, the counterpart of real time
is tick
. ALSATimer.TickEvent
boxed structure
is renamed to ALSATimer.TickTimeEvent
. ALSATimer.Event
, ALSATimer.EventDataTick
and
ALSATimer.EventDataTstamp
are obsoleted and removed. ALSATimer.UserInstance::handle-event
is obsoleted as well. The alternatives are available to retrieve corresponding event.
ALSATimer.UserInstance::handle-tick-time-event
ALSATimer.UserInstance::handle-real-time-event
ALSASeq.Tstamp
is obsoleted and removed as well. The accessor methods to it are rewritten
to retrieve either tick time or real time.
ALSASeq.Event.get_tick_time()
ALSASeq.Event.get_real_time()
ALSASeq.Event.get_tick_time_data()
ALSASeq.Event.get_real_time_data()
ALSASeq.EventDataQueue.get_tick_time_param()
ALSASeq.EventDataQueue.get_real_time_param()
ALSASeq.RemoveFilter.new_with_tick_time()
ALSASeq.RemoveFilter.new_with_real_time()
The word tstamp
still remains in the enumerations and properties to affects both tick
and real time
.
ALSASeq.EventTstampMode
ALSASeq.Event.get_tstamp_mode()
ALSASeq.PortInfo:tstamp-mode
ALSASeq.PortInfo:tstamp-overwrite
ALSASeq.SusbscribeData:has-tstamp
ALSASeq.SusbscribeData:tstamp-mode
Some properties are added to ALSASeq.SubscribeData
to obsolete ALSASeq.PortSubscribeFlag
.
ALSASeq.SubscribeData:is-exclusive
ALSASeq.SubscribeData:has-tstamp
ALSASeq.SubscribeData:tstamp-mode
ALSASeq.SubscribeData:queue-id
Rewrite setter method in ALSACtl.ElemValue
Below methods are rewritten to retrieve the pointer in internal storage instead of copying to given
buffer as fixed-sized array:
ALSACtl.ElemValue.get_bool
ALSACtl.ElemValue.get_int
ALSACtl.ElemValue.get_enum
ALSACtl.ElemValue.get_bytes
ALSACtl.ElemValue.get_iec60958_user_data
ALSACtl.ElemValue.get_iec60958_channel_status
ALSACtl.ElemValue.get_int64
Rewrite ALSASeq.RemoveFilter
ALSASeq.RemoveFilter is largely written so that it's GObject-derived object instead of boxed
structure for flexible configuration of filter condition.