[][src]Enum gstreamer::DebugLevel

#[non_exhaustive]pub enum DebugLevel {
    None,
    Error,
    Warning,
    Fixme,
    Info,
    Debug,
    Log,
    Trace,
    Memdump,
    Count,
    // some variants omitted
}

The level defines the importance of a debugging message. The more important a message is, the greater the probability that the debugging system outputs it.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
None

No debugging level specified or desired. Used to deactivate debugging output.

Error

Error messages are to be used only when an error occurred that stops the application from keeping working correctly. An examples is gst_element_error, which outputs a message with this priority. It does not mean that the application is terminating as with g_error.

Warning

Warning messages are to inform about abnormal behaviour that could lead to problems or weird behaviour later on. An example of this would be clocking issues ("your computer is pretty slow") or broken input data ("Can't synchronize to stream.")

Fixme

Fixme messages are messages that indicate that something in the executed code path is not fully implemented or handled yet. Note that this does not replace proper error handling in any way, the purpose of this message is to make it easier to spot incomplete/unfinished pieces of code when reading the debug log.

Info

Informational messages should be used to keep the developer updated about what is happening. Examples where this should be used are when a typefind function has successfully determined the type of the stream or when an mp3 plugin detects the format to be used. ("This file has mono sound.")

Debug

Debugging messages should be used when something common happens that is not the expected default behavior, or something that's useful to know but doesn't happen all the time (ie. per loop iteration or buffer processed or event handled). An example would be notifications about state changes or receiving/sending of events.

Log

Log messages are messages that are very common but might be useful to know. As a rule of thumb a pipeline that is running as expected should never output anything else but LOG messages whilst processing data. Use this log level to log recurring information in chain functions and loop functions, for example.

Trace

Tracing-related messages. Examples for this are referencing/dereferencing of objects.

Memdump

memory dump messages are used to log (small) chunks of data as memory dumps in the log. They will be displayed as hexdump with ASCII characters.

Count

The number of defined debugging levels.

Trait Implementations

impl Clone for DebugLevel[src]

impl Copy for DebugLevel[src]

impl Debug for DebugLevel[src]

impl Eq for DebugLevel[src]

impl<'a> FromValue<'a> for DebugLevel[src]

impl<'a> FromValueOptional<'a> for DebugLevel[src]

impl Hash for DebugLevel[src]

impl Ord for DebugLevel[src]

impl PartialEq<DebugLevel> for DebugLevel[src]

impl PartialOrd<DebugLevel> for DebugLevel[src]

impl SetValue for DebugLevel[src]

impl StaticType for DebugLevel[src]

impl StructuralEq for DebugLevel[src]

impl StructuralPartialEq for DebugLevel[src]

Auto Trait Implementations

impl RefUnwindSafe for DebugLevel

impl Send for DebugLevel

impl Sync for DebugLevel

impl Unpin for DebugLevel

impl UnwindSafe for DebugLevel

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToSendValue for T where
    T: ToValue + SetValue + Send + ?Sized
[src]

impl<T> ToValue for T where
    T: SetValue + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.