|
|
1.1 root 1: /*
2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
3: *
4: * @APPLE_LICENSE_HEADER_START@
5: *
6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights
7: * Reserved. This file contains Original Code and/or Modifications of
8: * Original Code as defined in and that are subject to the Apple Public
9: * Source License Version 1.1 (the "License"). You may not use this file
10: * except in compliance with the License. Please obtain a copy of the
11: * License at http://www.apple.com/publicsource and read it before using
12: * this file.
13: *
14: * The Original Code and all software distributed under the License are
15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
18: * FITNESS FOR A PARTICULAR PURPOSE OR NON- INFRINGEMENT. Please see the
19: * License for the specific language governing rights and limitations
20: * under the License.
21: *
22: * @APPLE_LICENSE_HEADER_END@
23: */
24: /* unixDiskPrivate.h 1.0 02/07/91 (c) 1991 NeXT
25: *
26: * unixDiskPrivate.h - Private methods for unixDisk class.
27: *
28: * HISTORY
29: * 07-Feb-91 Doug Mitchell at NeXT
30: * Created.
31: */
32:
33: #ifndef _UNIX_PRIVATE_
34: #define _UNIX_PRIVATE_
35:
36: #import "unixDisk.h"
37: #import "unixThread.h"
38:
39: @interface unixDisk(Private)
40:
41: /*
42: * Alloc and free IOBufs. As an optimization, we may want to keep free
43: * lists of these around.
44: */
45: - (IOBuf_t *)allocIOBuf;
46: - (void)freeIOBuf:(IOBuf_t *)IOBuf;
47:
48: /*
49: * Wakeup thread waiting on IOBuf.
50: */
51: - (void)IOBufDone : (IOBuf_t *)IOBuf
52: status : (IOReturn)status;
53:
54: /*
55: * readCommon: and writeCommon: are invoked by the exported flavors of
56: * read: and write:.
57: */
58:
59: - (IOReturn) readCommon : (u_int)block
60: length : (u_int)length
61: buffer : (void *)bufp
62: actualLength : (u_int *)actualLength // returned
63: pending : (void *)pending // pending or ioKey
64: caller : (id)caller // for DO only
65: IOBufRtn : (IOBuf_t **)IOBufRtn;
66:
67: - (IOReturn) writeCommon : (u_int)block
68: length : (u_int)length
69: buffer : (void *)bufp
70: actualLength : (u_int *)actualLength // returned
71: pending : (void *)pending // pending or ioKey
72: caller : (id)caller // for DO only
73: IOBufRtn : (IOBuf_t **)IOBufRtn;
74:
75:
76: /*
77: * These methods are invoked by a unix_thread; they do the actual work on
78: * unix_fd's.
79: */
80: - (void)unixDeviceRead : (IOBuf_t *)IOBuf
81: threadNum:(int)threadNum;
82: - (void)unixDeviceWrite : (IOBuf_t *)IOBuf
83: threadNum:(int)threadNum;
84: - (void)deviceEject : (IOBuf_t *)IOBuf
85: threadNum:(int)threadNum;
86: - (void)unixDeviceAbort : (IOBuf_t *)IOBuf;
87: - (void)deviceCheckReady : (IOBuf_t *)IOBuf
88: threadNum:(int)threadNum;
89: - (void)deviceProbe : (IOBuf_t *)IOBuf;
90:
91: @end
92:
93: #endif _UNIX_PRIVATE_
94:
95:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.