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