<Type Name="SystemSound" FullName="MonoMac.AudioToolbox.SystemSound">
  <TypeSignature Language="C#" Value="public class SystemSound : IDisposable, MonoMac.ObjCRuntime.INativeObject" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit SystemSound extends System.Object implements class MonoMac.ObjCRuntime.INativeObject, class System.IDisposable" />
  <AssemblyInfo>
    <AssemblyName>MonoMac</AssemblyName>
    <AssemblyVersion>0.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>MonoMac.ObjCRuntime.INativeObject</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.IDisposable</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <summary>Provides methods for producing simple sounds.</summary>
    <remarks>To be added.</remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public SystemSound (MonoMac.Foundation.NSUrl fileUrl);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class MonoMac.Foundation.NSUrl fileUrl) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="fileUrl" Type="MonoMac.Foundation.NSUrl" />
      </Parameters>
      <Docs>
        <param name="fileUrl">The url to the local file.</param>
        <summary>Create a system sound from a local file.</summary>
        <remarks>The system sounds are limited to 30 seconds or less.   If there is an error, this constructor will throw an exception.   If you want to avoid exceptions, and instead get a null on error, call the FromFile methods.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddSystemSoundCompletion">
      <MemberSignature Language="C#" Value="public MonoMac.AudioToolbox.AudioServicesError AddSystemSoundCompletion (Action routine, MonoMac.CoreFoundation.CFRunLoop runLoop = null);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype MonoMac.AudioToolbox.AudioServicesError AddSystemSoundCompletion(class System.Action routine, class MonoMac.CoreFoundation.CFRunLoop runLoop) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>MonoMac.AudioToolbox.AudioServicesError</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="routine" Type="System.Action" />
        <Parameter Name="runLoop" Type="MonoMac.CoreFoundation.CFRunLoop" />
      </Parameters>
      <Docs>
        <param name="routine">To be added.</param>
        <param name="runLoop">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Close">
      <MemberSignature Language="C#" Value="public void Close ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Close() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Closes this system sound.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="CompletePlaybackIfAppDies">
      <MemberSignature Language="C#" Value="public bool CompletePlaybackIfAppDies { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance bool CompletePlaybackIfAppDies" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Dispose">
      <MemberSignature Language="C#" Value="protected virtual void Dispose (bool disposing);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void Dispose(bool disposing) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="disposing" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="disposing">
          <para>If set to <see langword="true" />, the method is invoked directly and will dispose manage and unmanaged resources;   If set to <see langword="false" /> the method is being called by the garbage collector finalizer and should only release unmanaged resources.</para>
        </param>
        <summary>Releases the resources used by the SystemSound object.</summary>
        <remarks>
          <para>This Dispose method releases the resources used by the SystemSound class.</para>
          <para>This method is called by both the Dispose() method and the object finalizer (Finalize).    When invoked by the Dispose method, the parameter disposting <paramref name="disposing" /> is set to <see langword="true" /> and any managed object references that this object holds are also disposed or released;  when invoked by the object finalizer, on the finalizer thread the value is set to <see langword="false" />. </para>
          <para>Calling the Dispose method when you are finished using the SystemSound ensures that all external resources used by this managed object are released as soon as possible.  Once you have invoked the Dispose method, the object is no longer useful and you should no longer make any calls to it.</para>
          <para>  For more information on how to override this method and on the Dispose/IDisposable pattern, read the ``Implementing a Dispose Method'' document at http://msdn.microsoft.com/en-us/library/fs2xkftw.aspx</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Finalize">
      <MemberSignature Language="C#" Value="~SystemSound ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void Finalize() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Finalizer for the SystemSound object</summary>
        <remarks>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="FromFile">
      <MemberSignature Language="C#" Value="public static MonoMac.AudioToolbox.SystemSound FromFile (MonoMac.Foundation.NSUrl fileUrl);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class MonoMac.AudioToolbox.SystemSound FromFile(class MonoMac.Foundation.NSUrl fileUrl) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>MonoMac.AudioToolbox.SystemSound</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="fileUrl" Type="MonoMac.Foundation.NSUrl" />
      </Parameters>
      <Docs>
        <param name="fileUrl">A SystemSound instance, or null on error.</param>
        <summary>Creates a system sound from a file.</summary>
        <returns>The system sound object, or null on error.</returns>
        <remarks>SystemSounds are limited to 30 seconds or less.</remarks>
      </Docs>
    </Member>
    <Member MemberName="FromFile">
      <MemberSignature Language="C#" Value="public static MonoMac.AudioToolbox.SystemSound FromFile (string filename);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class MonoMac.AudioToolbox.SystemSound FromFile(string filename) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>MonoMac.AudioToolbox.SystemSound</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="filename" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="filename">The file that contains the audio.</param>
        <summary>An array of packet descriptions that describe the contents of the buffer.</summary>
        <returns>A SystemSound instance or null on error.</returns>
        <remarks>SystemSounds are limited to 30 seconds or less.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Handle">
      <MemberSignature Language="C#" Value="public IntPtr Handle { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance native int Handle" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.IntPtr</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>Handle (pointer) to the unmanaged object representation.</summary>
        <value>A pointer</value>
        <remarks>This IntPtr is a handle to the underlying unmanaged representation for this object.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IsUISound">
      <MemberSignature Language="C#" Value="public bool IsUISound { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance bool IsUISound" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="PlayAlertSound">
      <MemberSignature Language="C#" Value="public void PlayAlertSound ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void PlayAlertSound() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Plays a sound or alert.</summary>
        <remarks>The actual behavior of this method depends on the device (iPhone, iPod touch) and the vibrate settings.</remarks>
      </Docs>
    </Member>
    <Member MemberName="PlaySystemSound">
      <MemberSignature Language="C#" Value="public void PlaySystemSound ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void PlaySystemSound() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Plays the system sound.</summary>
        <remarks>The system sound is played asynchronously, but it is also limited to 30 seconds or less.</remarks>
      </Docs>
    </Member>
    <Member MemberName="RemoveSystemSoundCompletion">
      <MemberSignature Language="C#" Value="public void RemoveSystemSoundCompletion ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveSystemSoundCompletion() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="System.IDisposable.Dispose">
      <MemberSignature Language="C#" Value="void IDisposable.Dispose ();" />
      <MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.IDisposable.Dispose() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Releases the resources used by the SystemSound object.</summary>
        <remarks>
          <para>The Dispose method releases the resources used by the SystemSound class.</para>
          <para>Calling the Dispose method when you are finished using the SystemSound ensures that all external resources used by this managed object are released as soon as possible.  Once you have invoked the Dispose method, the object is no longer useful and you should no longer make any calls to it.  For more information on releasing resources see ``Cleaning up Unmananaged Resources'' at http://msdn.microsoft.com/en-us/library/498928w2.aspx</para>
        </remarks>
      </Docs>
    </Member>
  </Members>
</Type>
