1 module org.eclipse.swt.internal.mozilla.nsIInputStream;
2 
3 import java.lang.all;
4 
5 import org.eclipse.swt.internal.mozilla.Common;
6 import org.eclipse.swt.internal.mozilla.nsID;
7 import org.eclipse.swt.internal.mozilla.nsISupports;
8 
9 typedef nsresult function(nsIInputStream aInStream,
10 	void *aClosure,
11 	byte *aFromSegment,
12 	PRUint32 aToOffset,
13 	PRUint32 aCount,
14 	PRUint32 *aWriteCount) nsWriteSegmentFun;
15 
16 const char[] NS_IINPUTSTREAM_IID_STR = "fa9c7f6c-61b3-11d4-9877-00c04fa0cf4a";
17 
18 const nsIID NS_IINPUTSTREAM_IID= 
19   {0xfa9c7f6c, 0x61b3, 0x11d4, 
20     [ 0x98, 0x77, 0x00, 0xc0, 0x4f, 0xa0, 0xcf, 0x4a ]};
21 
22 interface nsIInputStream : nsISupports {
23 
24   static const char[] IID_STR = NS_IINPUTSTREAM_IID_STR;
25   static const nsIID IID = NS_IINPUTSTREAM_IID;
26 
27 extern(System):
28   nsresult Close();
29   nsresult Available(PRUint32 *_retval);
30   nsresult Read(byte * aBuf, PRUint32 aCount, PRUint32 *_retval);
31   nsresult ReadSegments(nsWriteSegmentFun aWriter, void * aClosure, PRUint32 aCount, PRUint32 *_retval);
32   nsresult IsNonBlocking(PRBool *_retval);
33 
34 }
35