| smartmontools SVN Rev 5716
    Utility to control and monitor storage systems with "S.M.A.R.T." | 
Smart pointer class for device pointers. More...
#include <dev_interface.h>

| Public Types | |
| typedef Dev | device_type | 
| Public Member Functions | |
| any_device_auto_ptr (device_type *dev=0, smart_device *base_dev=0) | |
| Construct from optional pointer to device and optional pointer to base device. | |
| ~any_device_auto_ptr () | |
| Destructor deletes device object. | |
| void | operator= (device_type *dev) | 
| Assign a new pointer. | |
| void | reset () | 
| Delete device object and clear the pointer. | |
| device_type * | release () | 
| Return the pointer and release ownership. | |
| void | replace (device_type *dev) | 
| Replace the pointer. | |
| device_type * | get () const | 
| Return the pointer. | |
| device_type & | operator* () const | 
| Pointer dereferencing. | |
| device_type * | operator-> () const | 
| Pointer dereferencing. | |
| operator bool () const | |
| For (ptr != 0) check. | |
| bool | operator! () const | 
| For (ptr == 0) check. | |
| Private Member Functions | |
| void | fail () const | 
| any_device_auto_ptr (const any_device_auto_ptr< Dev > &) | |
| void | operator= (const any_device_auto_ptr< Dev > &) | 
| Private Attributes | |
| device_type * | m_dev | 
| smart_device * | m_base_dev | 
Smart pointer class for device pointers.
Definition at line 743 of file dev_interface.h.
| typedef Dev any_device_auto_ptr< Dev >::device_type | 
Definition at line 746 of file dev_interface.h.
| 
 | inlineexplicit | 
Construct from optional pointer to device and optional pointer to base device.
Definition at line 750 of file dev_interface.h.
| 
 | inline | 
Destructor deletes device object.
Definition at line 755 of file dev_interface.h.
| 
 | private | 
| 
 | inlineprivate | 
Definition at line 815 of file dev_interface.h.
| 
 | inline | 
Return the pointer.
Definition at line 792 of file dev_interface.h.
| 
 | inline | 
For (ptr != 0) check.
Definition at line 804 of file dev_interface.h.
| 
 | inline | 
For (ptr == 0) check.
Definition at line 808 of file dev_interface.h.
| 
 | inline | 
Pointer dereferencing.
Definition at line 796 of file dev_interface.h.
| 
 | inline | 
Pointer dereferencing.
Definition at line 800 of file dev_interface.h.
| 
 | private | 
| 
 | inline | 
Assign a new pointer.
Throws if a pointer is already assigned.
Definition at line 760 of file dev_interface.h.
| 
 | inline | 
Return the pointer and release ownership.
Definition at line 779 of file dev_interface.h.
| 
 | inline | 
Replace the pointer.
Used to call dev->autodetect_open().
Definition at line 788 of file dev_interface.h.
| 
 | inline | 
Delete device object and clear the pointer.
Definition at line 768 of file dev_interface.h.
| 
 | private | 
Definition at line 813 of file dev_interface.h.
| 
 | private | 
Definition at line 812 of file dev_interface.h.