public ITexture XCreateTexture(/*cstype*/ string filename, ITexture.Usage usage, bool deviceindependent)
    {
        global::System.IntPtr cPtr = IronSightEnginePINVOKE.IOutputWindow_XCreateTexture(swigCPtr, new IronSightEnginePINVOKE.SWIGStringMarshal(filename).swigCPtr, (int)usage, deviceindependent);
        ITexture ret = (cPtr == global::System.IntPtr.Zero) ? null : new ITexture(cPtr, false);

        return(ret);
    }
    public virtual Result CreateTexture(ITexture source, ITexture.Usage usage, bool deviceindependent, SWIGTYPE_p_p_ITexture tex)
    {
        Result ret = new Result(IronSightEnginePINVOKE.IOutputWindow_CreateTexture__SWIG_3(swigCPtr, ITexture.getCPtr(source), (int)usage, deviceindependent, SWIGTYPE_p_p_ITexture.getCPtr(tex)), true);

        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }
    public virtual Result CreateTexture(/*cstype*/ string filename, ITexture.Usage usage, bool deviceindependent, SWIGTYPE_p_p_ITexture tex)
    {
        Result ret = new Result(IronSightEnginePINVOKE.IOutputWindow_CreateTexture__SWIG_0(swigCPtr, new IronSightEnginePINVOKE.SWIGStringMarshal(filename).swigCPtr, (int)usage, deviceindependent, SWIGTYPE_p_p_ITexture.getCPtr(tex)), true);

        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }
    public virtual Result CreateTexture(uint width, uint height, ITexture.Usage usage, bool deviceindependent, SWIGTYPE_p_DXGI_FORMAT format, SWIGTYPE_p_void data, SWIGTYPE_p_p_ITexture tex)
    {
        Result ret = new Result(IronSightEnginePINVOKE.IOutputWindow_CreateTexture__SWIG_2(swigCPtr, width, height, (int)usage, deviceindependent, SWIGTYPE_p_DXGI_FORMAT.getCPtr(format), SWIGTYPE_p_void.getCPtr(data), SWIGTYPE_p_p_ITexture.getCPtr(tex)), true);

        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }