smartmontools  SVN Rev 4039
Utility to control and monitor storage systems with "S.M.A.R.T."
Public Member Functions | Private Member Functions | Private Attributes | List of all members
os_win32::win_ata_device Class Reference
Collaboration diagram for os_win32::win_ata_device:
Collaboration graph

Public Member Functions

 win_ata_device (smart_interface *intf, const char *dev_name, const char *req_type)
virtual ~win_ata_device () throw ()
virtual bool open ()
 Open device, return false on error. More...
virtual bool ata_pass_through (const ata_cmd_in &in, ata_cmd_out &out)
 ATA pass through. More...
virtual bool ata_identify_is_cached () const
 Return true if OS caches ATA identify sector. More...
- Public Member Functions inherited from ata_device
bool ata_pass_through (const ata_cmd_in &in)
 ATA pass through without output registers. More...
- Public Member Functions inherited from smart_device
virtual ~smart_device () throw ()
bool is_ata () const
 Return true if ATA device. More...
bool is_scsi () const
 Return true if SCSI device. More...
ata_deviceto_ata ()
 Downcast to ATA device. More...
const ata_deviceto_ata () const
 Downcast to ATA device (const). More...
scsi_deviceto_scsi ()
 Downcast to SCSI device. More...
const scsi_deviceto_scsi () const
 Downcast to SCSI device (const). More...
const device_infoget_info () const
 Get device info struct. More...
const char * get_dev_name () const
 Get device (path)name. More...
const char * get_info_name () const
 Get informal name. More...
const char * get_dev_type () const
 Get device type. More...
const char * get_req_type () const
 Get type requested by user, empty if none. More...
const error_infoget_err () const
 Get last error info struct. More...
int get_errno () const
 Get last error number. More...
const char * get_errmsg () const
 Get last error message. More...
virtual bool is_syscall_unsup () const
 Return true if last error indicates an unsupported system call. More...
bool set_err (int no, const char *msg,...) __attribute_format_printf(3
 Set last error number and message. More...
bool bool set_err (const error_info &err)
 Set last error info struct. More...
void clear_err ()
 Clear last error info. More...
bool set_err (int no)
 Set last error number and default message. More...
virtual smart_deviceautodetect_open ()
 Open device with autodetection support. More...
virtual bool owns (const smart_device *dev) const
 Return true if other device is owned by this device. More...
virtual void release (const smart_device *dev)
 Release ownership of other device. More...
- Public Member Functions inherited from os_win32::win_smart_device
 win_smart_device ()
virtual ~win_smart_device () throw ()
virtual bool is_open () const
 Return true if device is open. More...
virtual bool close ()
 Close device, return false on error. More...

Private Member Functions

bool open (int phydrive, int logdrive, const char *options, int port)

Private Attributes

std::string m_options
bool m_usr_options
bool m_admin
int m_phydrive
bool m_id_is_cached
bool m_is_3ware
int m_port
int m_smartver_state

Additional Inherited Members

- Protected Types inherited from ata_device
enum  {
  supports_data_out = 0x01, supports_smart_status = 0x02, supports_output_regs = 0x04, supports_multi_sector = 0x08,
  supports_48bit_hi_null = 0x10, supports_48bit = 0x20
 Flags for ata_cmd_is_supported(). More...
- Protected Types inherited from smart_device
enum  do_not_use_in_implementation_classes { never_called }
 Dummy enum for dummy constructor. More...
- Protected Member Functions inherited from ata_device
bool ata_cmd_is_supported (const ata_cmd_in &in, unsigned flags, const char *type=0)
 Check command input parameters. More...
bool ata_cmd_is_ok (const ata_cmd_in &in, bool data_out_support=false, bool multi_sector_support=false, bool ata_48bit_support=false)
 Check command input parameters (old version). More...
void hide_ata (bool hide=true)
 Hide/unhide ATA interface. More...
 ata_device ()
 Default constructor, registers device as ATA. More...
- Protected Member Functions inherited from smart_device
 smart_device (smart_interface *intf, const char *dev_name, const char *dev_type, const char *req_type)
 Constructor to init interface and device info. More...
 smart_device (do_not_use_in_implementation_classes)
 Dummy constructor for abstract classes. More...
device_infoset_info ()
 R/W access to device info struct. More...
smart_interfacesmi ()
 Get interface which produced this object. More...
const smart_interfacesmi () const
 Get interface which produced this object (const). More...
- Protected Member Functions inherited from os_win32::win_smart_device
void set_fh (HANDLE fh)
 Set handle for open() in derived classes. More...
HANDLE get_fh () const
 Return handle for derived classes. More...

Detailed Description

Definition at line 356 of file os_win32.cpp.

Constructor & Destructor Documentation

os_win32::win_ata_device::win_ata_device ( smart_interface intf,
const char *  dev_name,
const char *  req_type 

Definition at line 2372 of file os_win32.cpp.

os_win32::win_ata_device::~win_ata_device ( )
throw (

Definition at line 2384 of file os_win32.cpp.

Member Function Documentation

bool os_win32::win_ata_device::ata_identify_is_cached ( ) const

Return true if OS caches ATA identify sector.

Default implementation returns false.

Reimplemented from ata_device.

Definition at line 2867 of file os_win32.cpp.

bool os_win32::win_ata_device::ata_pass_through ( const ata_cmd_in in,
ata_cmd_out out 

ATA pass through.

Return false on error. Must be implemented in derived class.

Implements ata_device.

Definition at line 2546 of file os_win32.cpp.

bool os_win32::win_ata_device::open ( )

Open device, return false on error.

Implements smart_device.

Definition at line 2391 of file os_win32.cpp.

bool os_win32::win_ata_device::open ( int  phydrive,
int  logdrive,
const char *  options,
int  port 

Definition at line 2423 of file os_win32.cpp.

Member Data Documentation

bool os_win32::win_ata_device::m_admin

Definition at line 376 of file os_win32.cpp.

bool os_win32::win_ata_device::m_id_is_cached

Definition at line 378 of file os_win32.cpp.

bool os_win32::win_ata_device::m_is_3ware

Definition at line 379 of file os_win32.cpp.

std::string os_win32::win_ata_device::m_options

Definition at line 374 of file os_win32.cpp.

int os_win32::win_ata_device::m_phydrive

Definition at line 377 of file os_win32.cpp.

int os_win32::win_ata_device::m_port

Definition at line 380 of file os_win32.cpp.

int os_win32::win_ata_device::m_smartver_state

Definition at line 381 of file os_win32.cpp.

bool os_win32::win_ata_device::m_usr_options

Definition at line 375 of file os_win32.cpp.

The documentation for this class was generated from the following file: