#include <cdb.h>


Definition at line 443 of file cdb.h.
Public Member Functions | |
| cdb_ModeSelect (data_Mode &a_mode) | |
| virtual | ~cdb_ModeSelect () |
| virtual const UInt8_t * | GetCmdPointer () const |
| virtual UInt32_t | GetCmdSize () const |
| virtual Direction_e | GetTransferDirection () const |
| virtual UInt8_t * | GetBufferPointer () const |
| virtual UInt32_t | GetBufferSize () const |
| const data_Mode & | GetData () const |
Private Attributes | |
| log_CLASSID_m | |
| cdb_ModeSelect_t | m_modeSelectCmd |
| data_Mode & | m_data |
| cdb_ModeSelect::cdb_ModeSelect | ( | data_Mode & | a_mode | ) |
Definition at line 34 of file cdb_modeselect.cpp.
References GetBufferSize(), m_modeSelectCmd, op_MODE_SELECT, cdb_ModeSelect_t::opcode, cdb_ModeSelect_t::paramLen, and cdb_ModeSelect_t::pf.
00035 : m_data(a_mode) { 00036 00037 memset (&m_modeSelectCmd, 0, sizeof(m_modeSelectCmd)); 00038 m_modeSelectCmd.opcode = op_MODE_SELECT; 00039 m_modeSelectCmd.pf = 1; 00040 m_modeSelectCmd.paramLen = static_cast<UInt8_t>(GetBufferSize()); 00041 }

| cdb_ModeSelect::~cdb_ModeSelect | ( | ) | [virtual] |
| const UInt8_t * cdb_ModeSelect::GetCmdPointer | ( | ) | const [virtual] |
Reimplemented from scsi_CDB.
Definition at line 93 of file cdb_modeselect.cpp.
References m_modeSelectCmd.
00093 { 00094 return reinterpret_cast<const UInt8_t*>(&m_modeSelectCmd); 00095 }
| UInt32_t cdb_ModeSelect::GetCmdSize | ( | ) | const [virtual] |
Reimplemented from scsi_CDB.
Definition at line 97 of file cdb_modeselect.cpp.
References m_modeSelectCmd.
00097 { 00098 return sizeof(m_modeSelectCmd); 00099 }
| Direction_e cdb_ModeSelect::GetTransferDirection | ( | ) | const [virtual] |
Implements scsi_CDB.
Definition at line 101 of file cdb_modeselect.cpp.
References TRANSFER_OUT.
00101 { 00102 return TRANSFER_OUT; 00103 }
| UInt8_t * cdb_ModeSelect::GetBufferPointer | ( | ) | const [virtual] |
Reimplemented from scsi_CDB.
Definition at line 46 of file cdb_modeselect.cpp.
References data_Mode::GetModeStruct(), and m_data.
00046 { 00047 return reinterpret_cast<UInt8_t*>( 00048 const_cast<data_Mode_t*>(&(m_data.GetModeStruct())) ); 00049 }

| UInt32_t cdb_ModeSelect::GetBufferSize | ( | ) | const [virtual] |
Reimplemented from scsi_CDB.
Definition at line 51 of file cdb_modeselect.cpp.
References data_ModePartPage_t::addPart, data_Mode_t::ait, data_ModePartitions_t::blkDesc, data_Mode_t::compress, data_Mode::GetModeStruct(), data_Mode::GetPage(), data_Mode_t::hdr, log_ERR_m, log_FUNC_m, m_data, data_Mode_t::part, data_ModePartitions_t::partPage, data_Mode::pg_AIT_APPENDPART, data_Mode::pg_AITCFG, data_Mode::pg_COMPRESSION, data_Mode::pg_PART, and size.
Referenced by cdb_ModeSelect().
00051 { 00052 00053 const data_Mode_t &mode = m_data.GetModeStruct(); 00054 00055 switch (m_data.GetPage()) { 00056 case data_Mode::pg_PART: 00057 case data_Mode::pg_AIT_APPENDPART: 00058 { 00059 const data_ModePartitions_t &part = mode.part; 00060 00061 UInt32_t size = 00062 sizeof(mode.hdr) + sizeof(part.blkDesc) + 00063 sizeof(part.partPage) + 00064 sizeof(UInt16_t) * (part.partPage.addPart + 1); 00065 return size; 00066 break; 00067 } 00068 case data_Mode::pg_AITCFG: 00069 { 00070 return sizeof(mode.hdr) + sizeof(mode.ait);; 00071 break; 00072 } 00073 case data_Mode::pg_COMPRESSION: 00074 { 00075 return sizeof(mode.hdr) + sizeof(mode.compress); 00076 break; 00077 } 00078 default: 00079 { 00080 log_FUNC_m(GetBufferSize); 00081 log_ERR_m("Unknown page for MODE SELECT."); 00082 return 0; 00083 break; 00084 } 00085 }; 00086 { 00087 log_FUNC_m(GetBufferSize); 00088 log_ERR_m("Unknown page for MODE SELECT."); 00089 return 0; 00090 } 00091 }


| const data_Mode & cdb_ModeSelect::GetData | ( | ) | const |
Definition at line 105 of file cdb_modeselect.cpp.
References m_data.
00105 { 00106 return m_data; 00107 }
cdb_ModeSelect::log_CLASSID_m [private] |
Definition at line 461 of file cdb.h.
Referenced by cdb_ModeSelect(), GetCmdPointer(), and GetCmdSize().
data_Mode& cdb_ModeSelect::m_data [private] |
Definition at line 462 of file cdb.h.
Referenced by GetBufferPointer(), GetBufferSize(), and GetData().
1.5.6