//Auto-generated by kalyptus. DO NOT EDIT.
namespace Phonon {
    using Phonon;
    using System;
    using Qyoto;
    using System.Collections.Generic;
    /// <remarks> \class AbstractAudioOutput abstractaudiooutput.h Phonon/AbstractAudioOutput
    ///  Common base class for all audio outputs.
    ///  \see AudioOutput
    ///     </remarks>        <short>   \class AbstractAudioOutput abstractaudiooutput.</short>
    [SmokeClass("Phonon::AbstractAudioOutput")]
    public abstract class AbstractAudioOutput : QObject, Phonon.IMediaNode {
        protected AbstractAudioOutput(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(AbstractAudioOutput), this);
        }
        // Phonon::AbstractAudioOutput* AbstractAudioOutput(Phonon::AbstractAudioOutputPrivate& arg1,QObject* arg2); >>>> NOT CONVERTED
        // Phonon::MediaNode* MediaNode(Phonon::MediaNodePrivate& arg1); >>>> NOT CONVERTED
        /// <remarks>
        ///  Tells whether the backend provides an implementation of this
        ///  class.
        ///  \return <code>true</code> if backend provides an implementation
        ///  \return <code>false</code> if the object is not implemented by the backend
        ///          </remarks>        <short>    Tells whether the backend provides an implementation of this  class.</short>
        public bool IsValid() {
            return (bool) interceptor.Invoke("isValid", "isValid() const", typeof(bool));
        }
        public List<Phonon.Path> InputPaths() {
            return (List<Phonon.Path>) interceptor.Invoke("inputPaths", "inputPaths() const", typeof(List<Phonon.Path>));
        }
        public List<Phonon.Path> OutputPaths() {
            return (List<Phonon.Path>) interceptor.Invoke("outputPaths", "outputPaths() const", typeof(List<Phonon.Path>));
        }
        protected new IAbstractAudioOutputSignals Emit {
            get { return (IAbstractAudioOutputSignals) Q_EMIT; }
        }
    }

    public interface IAbstractAudioOutputSignals : IQObjectSignals {
    }
}
