smartmontools  SVN Rev 4111
Utility to control and monitor storage systems with "S.M.A.R.T."
Classes | Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
anonymous_namespace{atacmds.cpp}::parsed_ata_device Class Reference
Collaboration diagram for anonymous_namespace{atacmds.cpp}::parsed_ata_device:
Collaboration graph
[legend]

Classes

struct  parsed_ata_command
 

Public Member Functions

 parsed_ata_device (smart_interface *intf, const char *dev_name)
 
virtual ~parsed_ata_device () throw ()
 
virtual bool is_open () const
 Return true if device is open. More...
 
virtual bool open ()
 Open device, return false on error. More...
 
virtual bool close ()
 Close device, return false on error. More...
 
virtual bool ata_identify_is_cached () const
 Return true if OS caches ATA identify sector. More...
 
- Public Member Functions inherited from ata_device_with_command_set
virtual bool ata_pass_through (const ata_cmd_in &in, ata_cmd_out &out)
 ATA pass through mapped to ata_command_interface(). 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...
 

Protected Member Functions

virtual int ata_command_interface (smart_command_set command, int select, char *data)
 Old ATA interface called by ata_pass_through() More...
 
- Protected Member Functions inherited from ata_device_with_command_set
 ata_device_with_command_set ()
 
- 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...
 

Private Types

enum  { max_num_commands = 32 }
 

Private Attributes

parsed_ata_command m_command_table [max_num_commands]
 
int m_num_commands
 
int m_next_replay_command
 
bool m_replay_out_of_sync
 
bool m_ata_identify_is_cached
 

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...
 

Detailed Description

Definition at line 2888 of file atacmds.cpp.

Member Enumeration Documentation

anonymous enum
private
Enumerator
max_num_commands 

Definition at line 2917 of file atacmds.cpp.

Constructor & Destructor Documentation

anonymous_namespace{atacmds.cpp}::parsed_ata_device::parsed_ata_device ( smart_interface intf,
const char *  dev_name 
)

Definition at line 2964 of file atacmds.cpp.

anonymous_namespace{atacmds.cpp}::parsed_ata_device::~parsed_ata_device ( )
throw (
)
virtual

Definition at line 2974 of file atacmds.cpp.

Member Function Documentation

int anonymous_namespace{atacmds.cpp}::parsed_ata_device::ata_command_interface ( smart_command_set  command,
int  select,
char *  data 
)
protectedvirtual

Old ATA interface called by ata_pass_through()

Implements ata_device_with_command_set.

Definition at line 3146 of file atacmds.cpp.

bool anonymous_namespace{atacmds.cpp}::parsed_ata_device::ata_identify_is_cached ( ) const
virtual

Return true if OS caches ATA identify sector.

Default implementation returns false.

Reimplemented from ata_device.

Definition at line 3139 of file atacmds.cpp.

bool anonymous_namespace{atacmds.cpp}::parsed_ata_device::close ( )
virtual

Close device, return false on error.

Implements smart_device.

Definition at line 3120 of file atacmds.cpp.

bool anonymous_namespace{atacmds.cpp}::parsed_ata_device::is_open ( ) const
virtual

Return true if device is open.

Implements smart_device.

Definition at line 2979 of file atacmds.cpp.

bool anonymous_namespace{atacmds.cpp}::parsed_ata_device::open ( )
virtual

Open device, return false on error.

Implements smart_device.

Definition at line 2985 of file atacmds.cpp.

Member Data Documentation

bool anonymous_namespace{atacmds.cpp}::parsed_ata_device::m_ata_identify_is_cached
private

Definition at line 2923 of file atacmds.cpp.

parsed_ata_command anonymous_namespace{atacmds.cpp}::parsed_ata_device::m_command_table[max_num_commands]
private

Definition at line 2918 of file atacmds.cpp.

int anonymous_namespace{atacmds.cpp}::parsed_ata_device::m_next_replay_command
private

Definition at line 2921 of file atacmds.cpp.

int anonymous_namespace{atacmds.cpp}::parsed_ata_device::m_num_commands
private

Definition at line 2920 of file atacmds.cpp.

bool anonymous_namespace{atacmds.cpp}::parsed_ata_device::m_replay_out_of_sync
private

Definition at line 2922 of file atacmds.cpp.


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