Package flumotion :: Package component :: Package producers :: Package looper :: Module looper :: Class Looper
[hide private]

Class Looper

source code

             object --+                
                      |                
common.common.InitMixin --+            
                          |            
extern.log.log.Loggable --+            
                          |            
    component.BaseComponent --+        
                              |        
 feedcomponent010.FeedComponent --+    
                                  |    
 feedcomponent.ParseLaunchComponent --+
                                      |
                                     Looper

Nested Classes [hide private]
child class of BaseComponentMedium componentMediumClass
the medium class to use for this component
Instance Methods [hide private]
 
init(self)
A subclass should do as little as possible in its init method.
source code
 
do_check(self)
Subclasses can implement me to run any checks before the component performs setup.
source code
 
get_pipeline_string(self, properties)
Method that must be implemented by subclasses to produce the gstparse string for the component's pipeline.
source code
 
make_message_for_gstreamer_error(self, gerror, debug)
Make a flumotion error message to show to the user.
source code
 
run_discoverer(self) source code
 
on_segment_done(self) source code
 
on_pads_blocked(self) source code
 
configure_pipeline(self, pipeline, properties)
Method that can be implemented by subclasses if they wish to interact with the pipeline after it has been created and set on the component.
source code
 
do_seek(self, flushing)
Restarts the looping.
source code
 
do_setup(self)
Sets up component.
source code
 
do_stop(self)
BaseComponent vmethod for stopping.
source code

Inherited from feedcomponent.ParseLaunchComponent: add_default_eater_feeder, create_pipeline, get_eater_template, get_feeder_template, get_queue_string, parse_pipeline, parse_tmpl, set_pipeline

Inherited from feedcomponent010.FeedComponent: addEffect, attachPadMonitorToFeeder, bus_message_received_cb, cleanup, connect_feeders, do_pipeline_playing, eatFromFD, feedToFD, get_element, get_element_property, get_master_clock, get_pipeline, install_eater_continuity_watch, install_eater_event_probes, provide_master_clock, reconnectEater, set_element_property, set_master_clock, setup_completed, stop_pipeline, try_start_pipeline, unblock_eater

Inherited from component.BaseComponent: __init__, addMessage, adminCallRemote, check_properties, fixRenamedProperties, getMood, getName, getWorkerName, setMedium, setMood, setShutdownHook, setWorkerName, setup, stop, waitForHappy

Inherited from component.BaseComponent (private): _pollCPU, _pollMemory

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Inherited from extern.log.log.Loggable: __providedBy__, debug, doLog, error, info, log, logFunction, logObjectName, warning, warningFailure, writeMarker

Class Variables [hide private]

Inherited from feedcomponent.ParseLaunchComponent: DELIMITER, DEPAY_TMPL, EATER_TMPL, FDSRC_TMPL, FEEDER_TMPL, checkOffset, checkTimestamp

Inherited from feedcomponent010.FeedComponent: FEEDER_STATS_UPDATE_FREQUENCY, logCategory

Inherited from extern.log.log.Loggable: __implemented__, __provides__

Instance Variables [hide private]

Inherited from component.BaseComponent: medium, name, uiState

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

init(self)

source code 

A subclass should do as little as possible in its init method. In particular, it should not try to access resources.

Failures during init are marshalled back to the manager through the worker's remote_create method, since there is no component state proxied to the manager yet at the time of init.

Overrides: component.BaseComponent.init
(inherited documentation)

do_check(self)

source code 

Subclasses can implement me to run any checks before the component performs setup.

Messages can be added to the component state's 'messages' list key. Any error messages added will trigger the component going to sad, with flumotion.common.errors.ComponentSetupError being raised before getting to setup stage; do_setup() will not be called.

In the event of a fatal problem that can't be expressed through an error message, this method should raise an exception or return a failure.

It is not necessary to chain up in this function. The return value may be a deferred.

Overrides: component.BaseComponent.do_check
(inherited documentation)

get_pipeline_string(self, properties)

source code 

Method that must be implemented by subclasses to produce the gstparse string for the component's pipeline. Subclasses should not chain up; this method raises a NotImplemented error.

Returns: a new pipeline string representation.

Overrides: feedcomponent.ParseLaunchComponent.get_pipeline_string
(inherited documentation)

make_message_for_gstreamer_error(self, gerror, debug)

source code 

Make a flumotion error message to show to the user.

This method may be overridden by components that have special knowledge about potential errors. If the component does not know about the error, it can chain up to this implementation, which will make a generic message.

Parameters:
  • gerror - The GError from the error message posted on the GStreamer message bus.
  • debug - A string with debugging information.
Returns:
A flumotion.common.messages.Message to show to the user.
Overrides: feedcomponent010.FeedComponent.make_message_for_gstreamer_error
(inherited documentation)

configure_pipeline(self, pipeline, properties)

source code 

Method that can be implemented by subclasses if they wish to interact with the pipeline after it has been created and set on the component.

This could include attaching signals and bus handlers.

Overrides: feedcomponent.ParseLaunchComponent.configure_pipeline
(inherited documentation)

do_seek(self, flushing)

source code 

Restarts the looping.

Returns True if the seeking was accepted, Returns False otherwiser

do_setup(self)

source code 

Sets up component.

Invokes the create_pipeline and set_pipeline vmethods, which subclasses can provide.

Overrides: component.BaseComponent.do_setup
(inherited documentation)

do_stop(self)

source code 

BaseComponent vmethod for stopping. The component should do any cleanup it needs, but must not set the component's mood to sleeping.

Returns:
twisted.internet.defer.Deferred
Overrides: component.BaseComponent.do_stop
(inherited documentation)