gstreamermm  1.4.3
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gst::AudioClock Class Reference

A Helper object for implementing audio clocks. More...

Inheritance diagram for Gst::AudioClock:
Inheritance graph
[legend]
Collaboration diagram for Gst::AudioClock:
Collaboration graph
[legend]

Public Types

typedef sigc::slot
< Gst::ClockTime, const
Glib::RefPtr< Gst::Clock >& > 
SlotGetTime
 For example, Gst::ClockTime on_get_time(const Glib::RefPtr<Gst::Clock>& clock);. More...
 

Public Member Functions

virtual ~AudioClock ()
 
GstAudioClock* gobj ()
 Provides access to the underlying C GObject. More...
 
const GstAudioClock* gobj () const
 Provides access to the underlying C GObject. More...
 
GstAudioClock* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
- Public Member Functions inherited from Gst::SystemClock
virtual ~SystemClock ()
 
GstSystemClock* gobj ()
 Provides access to the underlying C GObject. More...
 
const GstSystemClock* gobj () const
 Provides access to the underlying C GObject. More...
 
GstSystemClock* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
- Public Member Functions inherited from Gst::Clock
virtual ~Clock ()
 
GstClock* gobj ()
 Provides access to the underlying C GObject. More...
 
const GstClock* gobj () const
 Provides access to the underlying C GObject. More...
 
GstClock* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
bool add_observation (ClockTime slave_time, ClockTime master_time, gdouble* result)
 The time master of the master clock and the time slave of the slave clock are added to the list of observations. More...
 
bool set_master (const Clock& master_clock)
 Set master as the master clock for clock. More...
 
Glib::RefPtr< Gst::Clockget_master ()
 Get the master clock that clock is slaved to or 0 when the clock is not slaved to any master clock. More...
 
Glib::RefPtr< const Gst::Clockget_master () const
 Get the master clock that clock is slaved to or 0 when the clock is not slaved to any master clock. More...
 
ClockTime set_resolution (ClockTime resolution)
 Set the accuracy of the clock. More...
 
ClockTime get_resolution () const
 Get the accuracy of the clock. More...
 
ClockTime get_time () const
 Gets the current time of the given clock. More...
 
Glib::RefPtr< Gst::ClockIDcreate_single_shot_id (ClockTime time)
 Get a Gst::ClockID from clock to trigger a single shot notification at the requested time. More...
 
Glib::RefPtr< Gst::ClockIDcreate_periodic_id (ClockTime start_time, ClockTime intervals)
 Get an ID from clock to trigger a periodic notification. More...
 
ClockTime get_internal_time () const
 Gets the current internal time of the given clock. More...
 
ClockTime adjust_unlocked (ClockTime internal_time)
 Converts the given internal clock time to the external time, adjusting for the rate and reference time set with set_calibration() and making sure that the returned time is increasing. More...
 
ClockTime unadjust_unlocked (ClockTime external_time)
 Converts the given external clock time to the internal time of clock, using the rate and reference time set with set_calibration(). More...
 
void get_calibration (ClockTime&internal, ClockTime& external, ClockTime& rate_num, ClockTime& rate_denom) const
 Gets the internal rate and reference time of clock. More...
 
void set_calibration (ClockTime internal, ClockTime external, ClockTime rate_num, ClockTime rate_denom)
 Adjusts the rate and time of clock. More...
 
Glib::PropertyProxy< guint64 > property_timeout ()
 The amount of time, in nanoseconds, to sample master and slave clocks. More...
 
Glib::PropertyProxy_ReadOnly
< guint64 > 
property_timeout () const
 The amount of time, in nanoseconds, to sample master and slave clocks. More...
 
Glib::PropertyProxy< int > property_window_size ()
 The size of the window used to calculate rate and offset. More...
 
Glib::PropertyProxy_ReadOnly< int > property_window_size () const
 The size of the window used to calculate rate and offset. More...
 
Glib::PropertyProxy< int > property_window_threshold ()
 The threshold to start calculating rate and offset. More...
 
Glib::PropertyProxy_ReadOnly< int > property_window_threshold () const
 The threshold to start calculating rate and offset. More...
 
virtual ClockTime change_resolution_vfunc (ClockTime old_resolution, ClockTime new_resolution)
 Change the resolution of the clock. More...
 
virtual ClockTime get_resolution_vfunc () const
 Get the resolution of the clock. More...
 
virtual ClockTime get_internal_time_vfunc () const
 Get the internal unadjusted time of the clock. More...
 
virtual ClockReturn wait_vfunc (const Glib::RefPtr< Gst::ClockID >& id, ClockTimeDiff& jitter)
 Perform a blocking wait for the given Gst::ClockID. More...
 
virtual ClockReturn wait_async_vfunc (const Glib::RefPtr< Gst::ClockID >& id)
 Perform an asynchronous wait for the given Gst::ClockID. More...
 
virtual void unschedule_vfunc (const Glib::RefPtr< Gst::ClockID >& id)
 Unblock a blocking or async wait operation. More...
 
- Public Member Functions inherited from Gst::Object
virtual ~Object ()
 
GstObject* gobj ()
 Provides access to the underlying C GObject. More...
 
const GstObject* gobj () const
 Provides access to the underlying C GObject. More...
 
GstObject* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
bool is_element () const
 
bool is_element_factory () const
 
bool is_pad () const
 
bool is_pad_template () const
 
bool is_bin () const
 
guint32 get_flags () const
 Returns the entire set of flags for the object. More...
 
bool set_name (const Glib::ustring& name)
 Sets the name of object, or gives object a guaranteed unique name (if name is 0). More...
 
Glib::ustring get_name () const
 Returns a copy of the name of object. More...
 
bool set_parent (const Glib::RefPtr< Gst::Object >& parent)
 Sets the parent of object to parent. More...
 
Glib::RefPtr< Gst::Objectget_parent ()
 Returns the parent of object. More...
 
Glib::RefPtr< const Gst::Objectget_parent () const
 Returns the parent of object. More...
 
void unparent ()
 Clear the parent of object, removing the associated reference. More...
 
bool has_ancestor (const Glib::RefPtr< const Gst::Object >& ancestor) const
 Check if object has an ancestor ancestor somewhere up in the hierarchy. More...
 
Glib::ustring get_path_string ()
 Generates a string describing the path of object in the object hierarchy. More...
 
Glib::PropertyProxy
< Glib::ustring
property_name ()
 The name of the object. More...
 
Glib::PropertyProxy_ReadOnly
< Glib::ustring
property_name () const
 The name of the object. More...
 
Glib::SignalProxy2< void,
const Glib::RefPtr< Object >
&, GParamSpec* > 
signal_deep_notify ()
 
int get_refcount () const
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 
static Glib::RefPtr< AudioClockcreate (const Glib::ustring& name, const SlotGetTime& time_slot)
 Create a new Gst::AudioClock instance. More...
 
- Static Public Member Functions inherited from Gst::SystemClock
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 
static Glib::RefPtr< Gst::Clockobtain ()
 Get a handle to the default system clock. More...
 
- Static Public Member Functions inherited from Gst::Clock
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 
- Static Public Member Functions inherited from Gst::Object
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 
static bool check_uniqueness (const Glib::ListHandle< const Gst::Object >& list, const Glib::ustring& name)
 Checks to see if there is any object named name in list. More...
 

Protected Member Functions

 AudioClock (const Glib::ustring& name, const SlotGetTime& time_slot)
 
- Protected Member Functions inherited from Gst::SystemClock
 SystemClock ()
 
- Protected Member Functions inherited from Gst::Object
virtual void on_deep_notify (const Glib::RefPtr< Object >& prop_object, GParamSpec* prop)
 This is a default handler for the signal signal_deep_notify(). More...
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gst::AudioClockwrap (GstAudioClock* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

Detailed Description

A Helper object for implementing audio clocks.

Gst::AudioClock makes it easy for elements to implement a Gst::Clock, they simply need to provide a slot that returns the current clock time.

This object is internally used to implement the clock in Gst::AudioBaseSink.

Last reviewed on 2006-09-27 (0.10.12).

Member Typedef Documentation

For example, Gst::ClockTime on_get_time(const Glib::RefPtr<Gst::Clock>& clock);.

This function will be called whenever the current clock time needs to be calculated. If this function returns Gst::CLOCK_TIME_NONE, the last reported time will be returned by the clock.

Parameters
clockThe Gst::AudioClock.

Constructor & Destructor Documentation

virtual Gst::AudioClock::~AudioClock ( )
virtual
Gst::AudioClock::AudioClock ( const Glib::ustring name,
const SlotGetTime time_slot 
)
protected

Member Function Documentation

static Glib::RefPtr<AudioClock> Gst::AudioClock::create ( const Glib::ustring name,
const SlotGetTime time_slot 
)
static

Create a new Gst::AudioClock instance.

Whenever the clock time should be calculated it will call time_slot. When time_slot returns Gst::CLOCK_TIME_NONE, the clock will return the last reported time.

Parameters
nameThe name of the clock.
time_slotA slot that returns the time.
Returns
a new Gst::AudioClock.
static GType Gst::AudioClock::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

GstAudioClock* Gst::AudioClock::gobj ( )
inline

Provides access to the underlying C GObject.

const GstAudioClock* Gst::AudioClock::gobj ( ) const
inline

Provides access to the underlying C GObject.

GstAudioClock* Gst::AudioClock::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

Friends And Related Function Documentation

Glib::RefPtr< Gst::AudioClock > wrap ( GstAudioClock *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file: