|
The Pedigree Project 0.1
|
#include <UsbPnP.h>
Collaboration diagram for UsbPnP::Registration:Public Member Functions | |
| Registration (Registration &&other) | |
| Registration & | operator= (Registration &&other) |
| bool | reset () |
| operator bool () const | |
Private Member Functions | |
| void | adopt (UsbPnP *owner, CallbackItem *item) |
| Registration (const Registration &)=delete | |
| Registration & | operator= (const Registration &)=delete |
Private Attributes | |
| Atomic< UsbPnP * > | m_Owner |
| Atomic< CallbackItem * > | m_Item |
| Atomic< bool > | m_Resetting |
Friends | |
| class | UsbPnP |
Owns one callback registration.
reset() closes admission to the factory/probe callback. Outside callback dispatch it waits for callbacks which were already admitted and returns true once callback-owned state may be destroyed. During any PnP callback, the target is closed but retained and false is returned; ownership remains live for a later retry from outside callback context. A successful external reset also replaces every object bound by this registration with its generic USB interface and drains the driver destructors before returning.
| UsbPnP::Registration::Registration | ( | Registration && | other | ) |
|
private |
|
inlineexplicit |
| UsbPnP::Registration & UsbPnP::Registration::operator= | ( | Registration && | other | ) |
|
private |