<?xml version="1.0" encoding="utf-8"?>
<Type Name="MulticastOption" FullName="System.Net.Sockets.MulticastOption" FullNameSP="System_Net_Sockets_MulticastOption" Maintainer="ecma">
  <TypeSignature Language="ILASM" Value=".class public MulticastOption extends System.Object" />
  <TypeSignature Language="C#" Value="public class MulticastOption" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit MulticastOption extends System.Object" />
  <MemberOfLibrary>Networking</MemberOfLibrary>
  <AssemblyInfo>
    <AssemblyName>System</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
    <AssemblyVersion>1.0.x.x</AssemblyVersion>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Use a <see cref="T:System.Net.Sockets.MulticastOption" /> to store the <see cref="T:System.Net.IPAddress" /> of a multicast group you want to join or drop. Use the <see cref="M:System.Net.Sockets.Socket.SetSocketOption(System.Net.Sockets.SocketOptionLevel,System.Net.Sockets.SocketOptionName,System.Int32)" /> method with the following parameters to join a multicast group.</para>
      <list type="table">
        <listheader>
          <item>
            <term>
              <para>Parameter </para>
            </term>
            <description>
              <para>Value </para>
            </description>
          </item>
        </listheader>
        <item>
          <term>
            <para>socketOptionLevel </para>
          </term>
          <description>
            <para>
              <see cref="F:System.Net.Sockets.SocketOptionLevel.Udp" /> </para>
          </description>
        </item>
        <item>
          <term>
            <para>socketOptionName </para>
          </term>
          <description>
            <para>
              <see cref="F:System.Net.Sockets.SocketOptionName.AddMembership" /> </para>
          </description>
        </item>
        <item>
          <term>
            <para>object </para>
          </term>
          <description>
            <para>
              <see cref="T:System.Net.Sockets.MulticastOption" /> </para>
          </description>
        </item>
      </list>
      <para>Use <see cref="F:System.Net.Sockets.SocketOptionName.DropMembership" /> to drop a multicast group.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Contains <see cref="T:System.Net.IPAddress" /> values used to join and drop multicast groups.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(class System.Net.IPAddress group)" />
      <MemberSignature Language="C#" Value="public MulticastOption (System.Net.IPAddress group);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Net.IPAddress group) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue />
      <Parameters>
        <Parameter Name="group" Type="System.Net.IPAddress" />
      </Parameters>
      <Docs>
        <exception cref="T:System.ArgumentNullException">
          <para>
            <paramref name="group " />is <see langword="null" />.</para>
        </exception>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>For machines with multiple network cards, do not use this constructor. Use the constructor that takes a group and a local IP address.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new version of the <see cref="T:System.Net.Sockets.MulticastOption" /> class for the specified IP multicast group.</para>
        </summary>
        <param name="group">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Net.IPAddress" /> of the multicast group. </param>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public MulticastOption (System.Net.IPAddress group, int interfaceIndex);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Net.IPAddress group, int32 interfaceIndex) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="group" Type="System.Net.IPAddress" />
        <Parameter Name="interfaceIndex" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Net.Sockets.MulticastOption" /> class with the specified IP multicast group address and interface index.</para>
        </summary>
        <param name="group">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Net.IPAddress" /> of the multicast group.</param>
        <param name="interfaceIndex">
          <attribution license="cc4" from="Microsoft" modified="false" />The index of the interface that is used to send and receive multicast packets.</param>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(class System.Net.IPAddress group, class System.Net.IPAddress mcint)" />
      <MemberSignature Language="C#" Value="public MulticastOption (System.Net.IPAddress group, System.Net.IPAddress mcint);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Net.IPAddress group, class System.Net.IPAddress mcint) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue />
      <Parameters>
        <Parameter Name="group" Type="System.Net.IPAddress" />
        <Parameter Name="mcint" Type="System.Net.IPAddress" />
      </Parameters>
      <Docs>
        <exception cref="T:System.ArgumentNullException">
          <para>
            <paramref name="group " /> or <paramref name="mcint" /> is <see langword="null" />.</para>
        </exception>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>For machines with multiple network cards, you must use this constructor to create <see cref="T:System.Net.Sockets.MulticastOption" /> instances.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Net.Sockets.MulticastOption" /> class with the specified IP multicast group address and local IP address associated with a network interface.</para>
        </summary>
        <param name="group">
          <attribution license="cc4" from="Microsoft" modified="false" />The group <see cref="T:System.Net.IPAddress" />. </param>
        <param name="mcint">
          <attribution license="cc4" from="Microsoft" modified="false" />The local <see cref="T:System.Net.IPAddress" />. </param>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Group">
      <MemberSignature Language="ILASM" Value=".property class System.Net.IPAddress Group { public hidebysig specialname instance class System.Net.IPAddress get_Group() public hidebysig specialname instance void set_Group(class System.Net.IPAddress value) }" />
      <MemberSignature Language="C#" Value="public System.Net.IPAddress Group { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Net.IPAddress Group" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Net.IPAddress</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <value>
          <para> An instance of <see cref="T:System.Net.IPAddress" qualify="true" />
containing the IP address of a multicast
group.</para>
        </value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Valid IP addresses for multicast packets are in the range 224.0.0.0 to 239.255.255.255.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets the IP address of a multicast group.</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="InterfaceIndex">
      <MemberSignature Language="C#" Value="public int InterfaceIndex { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance int32 InterfaceIndex" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets the index of the interface that is used to send and receive multicast packets. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="LocalAddress">
      <MemberSignature Language="ILASM" Value=".property class System.Net.IPAddress LocalAddress { public hidebysig specialname instance class System.Net.IPAddress get_LocalAddress() public hidebysig specialname instance void set_LocalAddress(class System.Net.IPAddress value) }" />
      <MemberSignature Language="C#" Value="public System.Net.IPAddress LocalAddress { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Net.IPAddress LocalAddress" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Net.IPAddress</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <value>
          <para> An instance of <see cref="T:System.Net.IPAddress" qualify="true" /> containing the local IP
   address.</para>
        </value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="P:System.Net.Sockets.MulticastOption.LocalAddress" /> property contains the IP address of the interface associated with the multicast group membership. If <see cref="P:System.Net.Sockets.MulticastOption.LocalAddress" /> is set to <see cref="F:System.Net.IPAddress.Any" />, the default interface is used.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets the local address associated with a multicast group.</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
  </Members>
  <TypeExcluded>0</TypeExcluded>
</Type>