comparison dwt/internal/mozilla/nsIMemory.d @ 125:5583f8eeee6c

Synced mozilla with dwt-linux
author Jacob Carlborg <doob@me.com>
date Fri, 16 Jan 2009 12:49:08 +0100
parents d8635bb48c7c
children
comparison
equal deleted inserted replaced
124:540fa4e9974a 125:5583f8eeee6c
1 /* ***** BEGIN LICENSE BLOCK *****
2 * Version: MPL 1.1
3 *
4 * The contents of this file are subject to the Mozilla Public License Version
5 * 1.1 (the "License"); you may not use this file except in compliance with
6 * the License. You may obtain a copy of the License at
7 * http://www.mozilla.org/MPL/
8 *
9 * Software distributed under the License is distributed on an "AS IS" basis,
10 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11 * for the specific language governing rights and limitations under the
12 * License.
13 *
14 * The Original Code is Mozilla Communicator client code, released March 31, 1998.
15 *
16 * The Initial Developer of the Original Code is
17 * Netscape Communications Corporation.
18 * Portions created by Netscape are Copyright (C) 1998-1999
19 * Netscape Communications Corporation. All Rights Reserved.
20 *
21 * Contributor(s):
22 *
23 * IBM
24 * - Binding to permit interfacing between Mozilla and DWT
25 * - Copyright (C) 2003, 2008 IBM Corp. All Rights Reserved.
26 *
27 * ***** END LICENSE BLOCK ***** */
28 module dwt.internal.mozilla.nsIMemory; 1 module dwt.internal.mozilla.nsIMemory;
29 2
30 import dwt.dwthelper.utils; 3 import dwt.internal.mozilla.Common;
4 import dwt.internal.mozilla.nsID;
5 import dwt.internal.mozilla.nsISupports;
31 6
32 public class nsIMemory extends nsISupports { 7 const char[] NS_IMEMORY_IID_STR = "59e7e77a-38e4-11d4-8cf5-0060b0fc14a3";
33 8
34 static final int LAST_METHOD_ID = nsISupports.LAST_METHOD_ID + 5; 9 const nsIID NS_IMEMORY_IID=
10 {0x59e7e77a, 0x38e4, 0x11d4,
11 [ 0x8c, 0xf5, 0x00, 0x60, 0xb0, 0xfc, 0x14, 0xa3 ]};
35 12
36 public static final String NS_IMEMORY_IID_STR = 13 interface nsIMemory : nsISupports {
37 "59e7e77a-38e4-11d4-8cf5-0060b0fc14a3"; 14 static const char[] IID_STR = NS_IMEMORY_IID_STR;
15 static const nsIID IID = NS_IMEMORY_IID;
16
17 extern(System):
18 void * Alloc(size_t size);
19 void * Realloc(void * ptr, size_t newSize);
20 void Free(void * ptr);
21 nsresult HeapMinimize(PRBool immediate);
22 nsresult IsLowMemory(PRBool *_retval);
23 }
38 24
39 public static final nsID NS_IMEMORY_IID =
40 new nsID(NS_IMEMORY_IID_STR);
41
42 public nsIMemory(int /*long*/ address) {
43 super(address);
44 }
45
46 public int Alloc(int size) {
47 return XPCOM.VtblCall(nsISupports.LAST_METHOD_ID + 1, getAddress(), size);
48 }
49
50 public int Realloc(int /*long*/ ptr, int newSize) {
51 return XPCOM.VtblCall(nsISupports.LAST_METHOD_ID + 2, getAddress(), ptr, newSize);
52 }
53
54 public int Free(int /*long*/ ptr) {
55 return XPCOM.VtblCall(nsISupports.LAST_METHOD_ID + 3, getAddress(), ptr);
56 }
57
58 public int HeapMinimize(int immediate) {
59 return XPCOM.VtblCall(nsISupports.LAST_METHOD_ID + 4, getAddress(), immediate);
60 }
61
62 public int IsLowMemory(int[] _retval) {
63 return XPCOM.VtblCall(nsISupports.LAST_METHOD_ID + 5, getAddress(), _retval);
64 }
65 }