MCPcopy Create free account
hub / github.com/360Controller/360Controller / QueryInterface

Method QueryInterface

Feedback360/Feedback360.cpp:112–131  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

110}
111
112HRESULT Feedback360::QueryInterface(REFIID iid, LPVOID *ppv)
113{
114 CFUUIDRef interface = CFUUIDCreateFromUUIDBytes(kCFAllocatorDefault, iid);
115
116 if(CFEqual(interface, kIOForceFeedbackDeviceInterfaceID))
117 *ppv = &this->iIOForceFeedbackDeviceInterface;
118 // IUnknown || IOCFPlugInInterface
119 else if(CFEqual(interface, IUnknownUUID) || CFEqual(interface, kIOCFPlugInInterfaceID))
120 *ppv = &this->iIOCFPlugInInterface;
121 else
122 *ppv = NULL;
123
124 // Done
125 CFRelease(interface);
126 if ((*ppv) == NULL) return E_NOINTERFACE;
127 else {
128 this->iIOCFPlugInInterface.pseudoVTable->AddRef(*ppv);
129 }
130 return FF_OK;
131}
132
133ULONG Feedback360::AddRef()
134{

Callers 2

sQueryInterfaceMethod · 0.45
Device_InitialiseFunction · 0.45

Calls 1

AddRefMethod · 0.45

Tested by

no test coverage detected