//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QSqlIndex")]
    public class QSqlIndex : QSqlRecord, IDisposable {
        protected QSqlIndex(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QSqlIndex), this);
        }
        public QSqlIndex(string cursorName, string name) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QSqlIndex$$", "QSqlIndex(const QString&, const QString&)", typeof(void), typeof(string), cursorName, typeof(string), name);
        }
        public QSqlIndex(string cursorName) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QSqlIndex$", "QSqlIndex(const QString&)", typeof(void), typeof(string), cursorName);
        }
        public QSqlIndex() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QSqlIndex", "QSqlIndex()", typeof(void));
        }
        public QSqlIndex(QSqlIndex other) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QSqlIndex#", "QSqlIndex(const QSqlIndex&)", typeof(void), typeof(QSqlIndex), other);
        }
        public void SetCursorName(string cursorName) {
            interceptor.Invoke("setCursorName$", "setCursorName(const QString&)", typeof(void), typeof(string), cursorName);
        }
        public string CursorName() {
            return (string) interceptor.Invoke("cursorName", "cursorName() const", typeof(string));
        }
        public void SetName(string name) {
            interceptor.Invoke("setName$", "setName(const QString&)", typeof(void), typeof(string), name);
        }
        public string Name() {
            return (string) interceptor.Invoke("name", "name() const", typeof(string));
        }
        public new void Append(QSqlField field) {
            interceptor.Invoke("append#", "append(const QSqlField&)", typeof(void), typeof(QSqlField), field);
        }
        public void Append(QSqlField field, bool desc) {
            interceptor.Invoke("append#$", "append(const QSqlField&, bool)", typeof(void), typeof(QSqlField), field, typeof(bool), desc);
        }
        public bool IsDescending(int i) {
            return (bool) interceptor.Invoke("isDescending$", "isDescending(int) const", typeof(bool), typeof(int), i);
        }
        public void SetDescending(int i, bool desc) {
            interceptor.Invoke("setDescending$$", "setDescending(int, bool)", typeof(void), typeof(int), i, typeof(bool), desc);
        }
        ~QSqlIndex() {
            interceptor.Invoke("~QSqlIndex", "~QSqlIndex()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~QSqlIndex", "~QSqlIndex()", typeof(void));
        }
    }
}
