xref: /xnu-8020.121.3/iokit/Tests/TestServices/TestIOConnectMapMemoryPortLeak45265408.h (revision fdd8201d7b966f0c3ea610489d29bd841d358941)
1*fdd8201dSApple OSS Distributions #ifndef _IOKIT_TESTIOCONNECTMAPMEMORYPORTLEAK45265408_H_
2*fdd8201dSApple OSS Distributions #define _IOKIT_TESTIOCONNECTMAPMEMORYPORTLEAK45265408_H_
3*fdd8201dSApple OSS Distributions 
4*fdd8201dSApple OSS Distributions #include <IOKit/IOService.h>
5*fdd8201dSApple OSS Distributions #include <IOKit/IOUserClient.h>
6*fdd8201dSApple OSS Distributions #include <IOKit/IOBufferMemoryDescriptor.h>
7*fdd8201dSApple OSS Distributions 
8*fdd8201dSApple OSS Distributions #if DEVELOPMENT || DEBUG
9*fdd8201dSApple OSS Distributions 
10*fdd8201dSApple OSS Distributions class TestIOConnectMapMemoryPortLeak45265408 : public IOService {
11*fdd8201dSApple OSS Distributions 	OSDeclareDefaultStructors(TestIOConnectMapMemoryPortLeak45265408)
12*fdd8201dSApple OSS Distributions 
13*fdd8201dSApple OSS Distributions public:
14*fdd8201dSApple OSS Distributions 	virtual bool start(IOService *provider) override;
15*fdd8201dSApple OSS Distributions };
16*fdd8201dSApple OSS Distributions 
17*fdd8201dSApple OSS Distributions class TestIOConnectMapMemoryPortLeak45265408UserClient : public IOUserClient {
18*fdd8201dSApple OSS Distributions 	OSDeclareDefaultStructors(TestIOConnectMapMemoryPortLeak45265408UserClient);
19*fdd8201dSApple OSS Distributions 
20*fdd8201dSApple OSS Distributions public:
21*fdd8201dSApple OSS Distributions 	// IOService overrides
22*fdd8201dSApple OSS Distributions 	virtual bool start(IOService *provider) override;
23*fdd8201dSApple OSS Distributions 	virtual void stop(IOService *provider) override;
24*fdd8201dSApple OSS Distributions 
25*fdd8201dSApple OSS Distributions 	// IOUserClient overrides
26*fdd8201dSApple OSS Distributions 	virtual IOReturn clientClose() override;
27*fdd8201dSApple OSS Distributions 	virtual IOReturn clientMemoryForType(UInt32 type, IOOptionBits *flags, IOMemoryDescriptor **memory) override;
28*fdd8201dSApple OSS Distributions private:
29*fdd8201dSApple OSS Distributions 	IOBufferMemoryDescriptor *  sharedMemory;
30*fdd8201dSApple OSS Distributions };
31*fdd8201dSApple OSS Distributions 
32*fdd8201dSApple OSS Distributions #endif /* DEVELOPMENT || DEBUG */
33*fdd8201dSApple OSS Distributions 
34*fdd8201dSApple OSS Distributions #endif /* _IOKIT_TESTIOCONNECTMAPMEMORYPORTLEAK45265408_H_ */
35