<Type Name="EntryGroup" FullName="Avahi.EntryGroup">
  <TypeSignature Language="C#" Value="public class EntryGroup : System.IDisposable" />
  <AssemblyInfo>
    <AssemblyName>avahi-sharp</AssemblyName>
    <AssemblyVersion>1.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.IDisposable</InterfaceName>
    </Interface>
  </Interfaces>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public EntryGroup (Avahi.Client client);" />
      <MemberType>Constructor</MemberType>
      <Parameters>
        <Parameter Name="client" Type="Avahi.Client" />
      </Parameters>
      <Docs>
        <param name="client">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="StateChanged">
      <MemberSignature Language="C#" Value="public event Avahi.EntryGroupStateHandler StateChanged;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Avahi.EntryGroupStateHandler</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Dispose">
      <MemberSignature Language="C#" Value="public void Dispose ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Commit">
      <MemberSignature Language="C#" Value="public void Commit ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Reset">
      <MemberSignature Language="C#" Value="public void Reset ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddService">
      <MemberSignature Language="C#" Value="public void AddService (string name, string type, string domain, ushort port, string[] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="port" Type="System.UInt16" />
        <Parameter Name="txt" Type="System.String[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="port">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="State">
      <MemberSignature Language="C#" Value="public Avahi.EntryGroupState State { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Avahi.EntryGroupState</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IsEmpty">
      <MemberSignature Language="C#" Value="public bool IsEmpty { get; };" />
      <MemberType>Property</MemberType>
      <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="GetAlternativeServiceName">
      <MemberSignature Language="C#" Value="public static string GetAlternativeServiceName (string name);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="name">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddService">
      <MemberSignature Language="C#" Value="public void AddService (Avahi.PublishFlags flags, string name, string type, string domain, ushort port, string[] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="port" Type="System.UInt16" />
        <Parameter Name="txt" Type="System.String[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="port">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddService">
      <MemberSignature Language="C#" Value="public void AddService (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, string type, string domain, string host, ushort port, string[] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="host" Type="System.String" />
        <Parameter Name="port" Type="System.UInt16" />
        <Parameter Name="txt" Type="System.String[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="host">To be added.</param>
        <param name="port">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UpdateService">
      <MemberSignature Language="C#" Value="public void UpdateService (string name, string type, string domain, string[] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="txt" Type="System.String[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UpdateService">
      <MemberSignature Language="C#" Value="public void UpdateService (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, string type, string domain, string[] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="txt" Type="System.String[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddServiceSubtype">
      <MemberSignature Language="C#" Value="public void AddServiceSubtype (string name, string type, string domain, string subtype);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="subtype" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="subtype">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddServiceSubtype">
      <MemberSignature Language="C#" Value="public void AddServiceSubtype (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, string type, string domain, string subtype);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="subtype" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="subtype">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddAddress">
      <MemberSignature Language="C#" Value="public void AddAddress (string name, System.Net.IPAddress address);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="address" Type="System.Net.IPAddress" />
      </Parameters>
      <Docs>
        <param name="name">To be added.</param>
        <param name="address">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddAddress">
      <MemberSignature Language="C#" Value="public void AddAddress (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, System.Net.IPAddress address);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="address" Type="System.Net.IPAddress" />
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="address">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddRecord">
      <MemberSignature Language="C#" Value="public void AddRecord (string name, Avahi.RecordClass clazz, Avahi.RecordType type, uint ttl, byte[] rdata, int length);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="clazz" Type="Avahi.RecordClass" />
        <Parameter Name="type" Type="Avahi.RecordType" />
        <Parameter Name="ttl" Type="System.UInt32" />
        <Parameter Name="rdata" Type="System.Byte[]" />
        <Parameter Name="length" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="name">To be added.</param>
        <param name="clazz">To be added.</param>
        <param name="type">To be added.</param>
        <param name="ttl">To be added.</param>
        <param name="rdata">To be added.</param>
        <param name="length">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddRecord">
      <MemberSignature Language="C#" Value="public void AddRecord (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, Avahi.RecordClass clazz, Avahi.RecordType type, uint ttl, byte[] rdata, int length);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="clazz" Type="Avahi.RecordClass" />
        <Parameter Name="type" Type="Avahi.RecordType" />
        <Parameter Name="ttl" Type="System.UInt32" />
        <Parameter Name="rdata" Type="System.Byte[]" />
        <Parameter Name="length" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="clazz">To be added.</param>
        <param name="type">To be added.</param>
        <param name="ttl">To be added.</param>
        <param name="rdata">To be added.</param>
        <param name="length">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AddService">
      <MemberSignature Language="C#" Value="public void AddService (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, string type, string domain, string host, ushort port, byte[][] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="host" Type="System.String" />
        <Parameter Name="port" Type="System.UInt16" />
        <Parameter Name="txt" Type="System.Byte[][]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="host">To be added.</param>
        <param name="port">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UpdateService">
      <MemberSignature Language="C#" Value="public void UpdateService (int iface, Avahi.Protocol proto, Avahi.PublishFlags flags, string name, string type, string domain, byte[][] txt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iface" Type="System.Int32" />
        <Parameter Name="proto" Type="Avahi.Protocol" />
        <Parameter Name="flags" Type="Avahi.PublishFlags" />
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="type" Type="System.String" />
        <Parameter Name="domain" Type="System.String" />
        <Parameter Name="txt" Type="System.Byte[][]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="iface">To be added.</param>
        <param name="proto">To be added.</param>
        <param name="flags">To be added.</param>
        <param name="name">To be added.</param>
        <param name="type">To be added.</param>
        <param name="domain">To be added.</param>
        <param name="txt">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
  <Docs>
    <summary>To be added.</summary>
    <remarks>To be added.</remarks>
  </Docs>
</Type>
