//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    using System.Collections.Generic;
    [SmokeClass("QHostInfo")]
    public class QHostInfo : Object, IDisposable {
        protected SmokeInvocation interceptor = null;
        private IntPtr smokeObject;
        protected QHostInfo(Type dummy) {}
        protected void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QHostInfo), this);
        }
        private static SmokeInvocation staticInterceptor = null;
        static QHostInfo() {
            staticInterceptor = new SmokeInvocation(typeof(QHostInfo), null);
        }
        public enum HostInfoError {
            NoError = 0,
            HostNotFound = 1,
            UnknownError = 2,
        }
        public QHostInfo(int lookupId) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QHostInfo$", "QHostInfo(int)", typeof(void), typeof(int), lookupId);
        }
        public QHostInfo() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QHostInfo", "QHostInfo()", typeof(void));
        }
        public QHostInfo(QHostInfo d) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QHostInfo#", "QHostInfo(const QHostInfo&)", typeof(void), typeof(QHostInfo), d);
        }
        public string HostName() {
            return (string) interceptor.Invoke("hostName", "hostName() const", typeof(string));
        }
        public void SetHostName(string name) {
            interceptor.Invoke("setHostName$", "setHostName(const QString&)", typeof(void), typeof(string), name);
        }
        public List<QHostAddress> Addresses() {
            return (List<QHostAddress>) interceptor.Invoke("addresses", "addresses() const", typeof(List<QHostAddress>));
        }
        public void SetAddresses(List<QHostAddress> addresses) {
            interceptor.Invoke("setAddresses?", "setAddresses(const QList<QHostAddress>&)", typeof(void), typeof(List<QHostAddress>), addresses);
        }
        public QHostInfo.HostInfoError Error() {
            return (QHostInfo.HostInfoError) interceptor.Invoke("error", "error() const", typeof(QHostInfo.HostInfoError));
        }
        public void SetError(QHostInfo.HostInfoError error) {
            interceptor.Invoke("setError$", "setError(QHostInfo::HostInfoError)", typeof(void), typeof(QHostInfo.HostInfoError), error);
        }
        public string ErrorString() {
            return (string) interceptor.Invoke("errorString", "errorString() const", typeof(string));
        }
        public void SetErrorString(string errorString) {
            interceptor.Invoke("setErrorString$", "setErrorString(const QString&)", typeof(void), typeof(string), errorString);
        }
        public void SetLookupId(int id) {
            interceptor.Invoke("setLookupId$", "setLookupId(int)", typeof(void), typeof(int), id);
        }
        public int LookupId() {
            return (int) interceptor.Invoke("lookupId", "lookupId() const", typeof(int));
        }
        ~QHostInfo() {
            interceptor.Invoke("~QHostInfo", "~QHostInfo()", typeof(void));
        }
        public void Dispose() {
            interceptor.Invoke("~QHostInfo", "~QHostInfo()", typeof(void));
        }
        public static int LookupHost(string name, QObject receiver, string member) {
            return (int) staticInterceptor.Invoke("lookupHost$#$", "lookupHost(const QString&, QObject*, const char*)", typeof(int), typeof(string), name, typeof(QObject), receiver, typeof(string), member);
        }
        public static void AbortHostLookup(int lookupId) {
            staticInterceptor.Invoke("abortHostLookup$", "abortHostLookup(int)", typeof(void), typeof(int), lookupId);
        }
        public static QHostInfo FromName(string name) {
            return (QHostInfo) staticInterceptor.Invoke("fromName$", "fromName(const QString&)", typeof(QHostInfo), typeof(string), name);
        }
        public static string LocalHostName() {
            return (string) staticInterceptor.Invoke("localHostName", "localHostName()", typeof(string));
        }
        public static string LocalDomainName() {
            return (string) staticInterceptor.Invoke("localDomainName", "localDomainName()", typeof(string));
        }
    }
}
