|
|
1.1 root 1: #ifndef _IOKIT_IOCDAUDIONUBCLIENT_H
2: #define _IOKIT_IOCDAUDIONUBCLIENT_H
3:
4: #include <IOKit/IOUserClient.h>
5:
6: enum {
7: kTest = 0,
8: kGetNumAudioTracks,
9: kGetMSF,
10: kPlayTrack,
11: kPause,
12: kResume,
13: kGetVolume,
14: kSetVolume,
15: kGetAudioStatus,
16: kPlayMSF,
17: kMethods
18: };
19:
20: class IOCDAudioNub;
21:
22: class IOCDAudioNubClient : public IOUserClient
23: {
24: OSDeclareDefaultStructors(IOCDAudioNubClient)
25:
26: private:
27: task_t fTask;
28: IOExternalMethod fMethods[ kMethods ];
29: IOCDAudioNub * fOwner;
30:
31: public:
32: static IOCDAudioNubClient *withTask(task_t owningTask);
33: virtual IOReturn clientClose( void );
34: virtual IOReturn clientDied( void );
35:
36: virtual IOReturn registerNotificationPort(
37: mach_port_t port, UInt32 type );
38:
39: virtual IOReturn connectClient( IOUserClient * client );
40:
41: virtual IOReturn clientMemoryForType( UInt32 type,
42: UInt32 * flags, IOMemoryDescriptor ** memory );
43:
44: virtual IOExternalMethod * getExternalMethodForIndex( UInt32 index );
45:
46: virtual bool start( IOService * provider );
47:
48: virtual IOReturn CDAudioNubTest(UInt32 opcode,
49: UInt32 operand1, UInt32 operand2, UInt32 *status);
50:
51: virtual IOReturn playTrack(UInt32 track, UInt32 *status);
52: virtual IOReturn playMSF(UInt32 start_msf, UInt32 end_msf, UInt32 *status);
53: virtual IOReturn getMSF(UInt32 track, UInt32 *status);
54: virtual IOReturn getNumAudioTracks(UInt32 *status);
55: virtual IOReturn pause(UInt32 *status);
56: virtual IOReturn resume(UInt32 *status);
57: virtual IOReturn getVolume(UInt32 *status);
58: virtual IOReturn setVolume(UInt8 left, UInt8 right, UInt32 *status);
59: virtual IOReturn getAudioStatus(UInt32 *status, UInt32 *absAddress,
60: UInt32 *relAddress, UInt32 *trackType);
61: virtual IOReturn readHeader(UInt32 address, UInt32 *status);
62: };
63:
64: #endif /* _IOKIT_IOCDAUDIONUBCLIENT_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.