// TTQByteArray.cs - A Qt to C# binding. // // Copyright (C) 2002 Adam Treat (manyoso@yahoo.com) // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // // Generated File. Do Not Modify. namespace Qt { using Qt; using System; using System.Runtime.InteropServices; public class TTQByteArray : TTQMemArray, IDisposable { [DllImport("libqtc", CharSet=CharSet.Ansi)] private static extern IntPtr qt_new_QByteArray (); public TTQByteArray () : this (TQNull.Instance) { rawObject = qt_new_QByteArray (); RegisterObject (this); } [DllImport("libqtc", CharSet=CharSet.Ansi)] private static extern IntPtr qt_new_QByteArray1 (int size); public TTQByteArray (int size) : this (TQNull.Instance) { rawObject = qt_new_QByteArray1 (size); RegisterObject (this); } internal TTQByteArray (IntPtr ptr) : this (TQNull.Instance) { rawObject = ptr; RegisterObject(this); } internal TTQByteArray (TQNull dummy) : base (TQNull.Instance) {} ~TTQByteArray () { Dispose (false); } internal override void Delete () { if (deleted) return; // libqtc lacks a qt_del_QByteArray function deleted = true; } [DllImport("libqtc", CharSet=CharSet.Ansi)] private static extern IntPtr qt_QByteArray_assign1 (IntPtr rawObject, [MarshalAs(UnmanagedType.LPArray)] byte[] b, uint length ); public static implicit operator TTQByteArray (byte[] bArray) { TTQByteArray qbArray = new TTQByteArray (bArray.Length); qbArray.rawObject = qt_QByteArray_assign1 (qbArray.rawObject, bArray, (uint) bArray.Length); GC.KeepAlive (bArray); return qbArray; } // Begin interface methods. } }