[−][src]Trait gstreamer_rtsp_server::RTSPSessionExt
Required methods
fn allow_expire(&self)
Allow self to expire. This method must be called an equal
amount of time as RTSPSessionExt::prevent_expire.
fn filter(
&self,
func: Option<&mut dyn FnMut(&RTSPSession, &RTSPSessionMedia) -> RTSPFilterResult>
) -> Vec<RTSPSessionMedia>
&self,
func: Option<&mut dyn FnMut(&RTSPSession, &RTSPSessionMedia) -> RTSPFilterResult>
) -> Vec<RTSPSessionMedia>
Call func for each media in self. The result value of func determines
what happens to the media. func will be called with self
locked so no further actions on self can be performed from func.
If func returns RTSPFilterResult::Remove, the media will be removed from
self.
If func returns RTSPFilterResult::Keep, the media will remain in self.
If func returns RTSPFilterResult::Ref, the media will remain in self but
will also be added with an additional ref to the result glib::List of this
function..
When func is None, RTSPFilterResult::Ref will be assumed for all media.
func
a callback
user_data
user data passed to func
Returns
a GList with all
media for which func returned RTSPFilterResult::Ref. After usage, each
element in the glib::List should be unreffed before the list is freed.
fn get_header(&self) -> Option<GString>
Get the string that can be placed in the Session header field.
Returns
the Session header of self.
g_free after usage.
fn get_media(&self, path: &str) -> (Option<RTSPSessionMedia>, i32)
Get the session media for path. matched will contain the number of matched
characters of path.
path
the path for the media
matched
the amount of matched characters
Returns
the configuration for path in self.
fn get_sessionid(&self) -> Option<GString>
Get the sessionid of self.
Returns
the sessionid of self.
The value remains valid as long as self is alive.
fn get_timeout(&self) -> u32
fn is_expired_usec(&self, now: i64) -> bool
fn manage_media<P: IsA<RTSPMedia>>(
&self,
path: &str,
media: &P
) -> Result<RTSPSessionMedia, BoolError>
&self,
path: &str,
media: &P
) -> Result<RTSPSessionMedia, BoolError>
Manage the media object obj in self. path will be used to retrieve this
media from the session with RTSPSessionExt::get_media.
Ownership is taken from media.
path
the path for the media
media
a RTSPMedia
Returns
a new RTSPSessionMedia object.
fn next_timeout_usec(&self, now: i64) -> i32
Get the amount of milliseconds till the session will expire.
now
the current monotonic time
Returns
the amount of milliseconds since the session will time out.
fn prevent_expire(&self)
Prevent self from expiring.
fn release_media<P: IsA<RTSPSessionMedia>>(&self, media: &P) -> bool
Release the managed media in self, freeing the memory allocated by it.
media
a RTSPMedia
Returns
true if there are more media session left in self.
fn set_timeout(&self, timeout: u32)
Configure self for a timeout of timeout seconds. The session will be
cleaned up when there is no activity for timeout seconds.
timeout
the new timeout
fn touch(&self)
Update the last_access time of the session to the current time.
fn get_property_extra_timeout(&self) -> u32
fn set_property_extra_timeout(&self, extra_timeout: u32)
fn get_property_timeout_always_visible(&self) -> bool
fn set_property_timeout_always_visible(&self, timeout_always_visible: bool)
fn connect_property_extra_timeout_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_timeout_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_timeout_always_visible_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
Implementors
impl<O: IsA<RTSPSession>> RTSPSessionExt for O[src]
fn allow_expire(&self)[src]
fn filter(
&self,
func: Option<&mut dyn FnMut(&RTSPSession, &RTSPSessionMedia) -> RTSPFilterResult>
) -> Vec<RTSPSessionMedia>[src]
&self,
func: Option<&mut dyn FnMut(&RTSPSession, &RTSPSessionMedia) -> RTSPFilterResult>
) -> Vec<RTSPSessionMedia>
fn get_header(&self) -> Option<GString>[src]
fn get_media(&self, path: &str) -> (Option<RTSPSessionMedia>, i32)[src]
fn get_sessionid(&self) -> Option<GString>[src]
fn get_timeout(&self) -> u32[src]
fn is_expired_usec(&self, now: i64) -> bool[src]
fn manage_media<P: IsA<RTSPMedia>>(
&self,
path: &str,
media: &P
) -> Result<RTSPSessionMedia, BoolError>[src]
&self,
path: &str,
media: &P
) -> Result<RTSPSessionMedia, BoolError>
fn next_timeout_usec(&self, now: i64) -> i32[src]
fn prevent_expire(&self)[src]
fn release_media<P: IsA<RTSPSessionMedia>>(&self, media: &P) -> bool[src]
fn set_timeout(&self, timeout: u32)[src]
fn touch(&self)[src]
fn get_property_extra_timeout(&self) -> u32[src]
fn set_property_extra_timeout(&self, extra_timeout: u32)[src]
fn get_property_timeout_always_visible(&self) -> bool[src]
fn set_property_timeout_always_visible(&self, timeout_always_visible: bool)[src]
fn connect_property_extra_timeout_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_timeout_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_timeout_always_visible_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId