#include <fsc_MedVolume.h>


Definition at line 29 of file fsc_MedVolume.h.
Public Member Functions | |
| fsc_MedVolume (const cmn_Path &a_fscDirectory, ivd_MediaKey_t a_mediaKey, ivd_MedVolNum_t a_medVolNum, UInt32_t a_blockOfs) | |
| fsc_MedVolume (const cmn_Path &a_fscDirectory, ivd_MediaKey_t a_mediaKey, ivd_MedVolNum_t a_medVolNum) | |
| virtual | ~fsc_MedVolume () |
Static Public Member Functions | |
| static const cmn_Path | GetMedVolFileName (const cmn_Path &a_fscDirectory, ivd_MediaKey_t a_mediaKey, ivd_MedVolNum_t a_medVolNum, UInt32_t a_blockOfs) |
Public Attributes | |
| log_CLASSID_m | |
Protected Member Functions | |
| void | InitBuffer () |
Protected Attributes | |
| const cmn_Path | m_fscDirectory |
| return the number of read bytes | |
| const ivd_MediaKey_t | m_mediaKey |
| const ivd_MedVolNum_t | m_medVolNum |
| UInt32_t | m_buffCapacity |
| file name is compound of mediaKey + medVolNum example: "m000000001v001.lcf" | |
| UInt32_t | m_buffSize |
| fsc_medVolData_t * | m_medVolDataBuf |
| fsc_medVolData_t * | m_buffPos |
| fsc_medVolData_t * | m_buffEnd |
Static Protected Attributes | |
| static int | m_objCounter |
| static int | m_ofsBitMask |
| fsc_MedVolume::fsc_MedVolume | ( | const cmn_Path & | a_fscDirectory, | |
| ivd_MediaKey_t | a_mediaKey, | |||
| ivd_MedVolNum_t | a_medVolNum, | |||
| UInt32_t | a_blockOfs | |||
| ) |
Definition at line 76 of file fsc_MedVolume.cpp.
References InitBuffer(), log_FUNC_m, and m_objCounter.
Referenced by fsc_MedVolume().
00081 : 00082 m_fscDirectory(a_fscDirectory), 00083 m_mediaKey(a_mediaKey), 00084 m_medVolNum(a_medVolNum), 00085 m_buffCapacity(fsc_MedVolBuffCapacity_c), 00086 m_medVolDataBuf(NULL) 00087 { 00088 log_FUNC_m(fsc_MedVolume); 00089 m_objCounter++; 00090 00091 InitBuffer(); 00092 } //============================================================================//


| fsc_MedVolume::fsc_MedVolume | ( | const cmn_Path & | a_fscDirectory, | |
| ivd_MediaKey_t | a_mediaKey, | |||
| ivd_MedVolNum_t | a_medVolNum | |||
| ) |
Definition at line 96 of file fsc_MedVolume.cpp.
References fsc_MedVolume(), log_FUNC_m, and m_objCounter.
00100 : 00101 m_fscDirectory(a_fscDirectory), 00102 m_mediaKey(a_mediaKey), 00103 m_medVolNum(a_medVolNum), 00104 m_buffCapacity(0), 00105 m_buffSize(0), 00106 m_medVolDataBuf(NULL), 00107 m_buffPos (NULL), 00108 m_buffEnd (NULL) 00109 { 00110 log_FUNC_m(fsc_MedVolume(cmn_Path, ivd_MediaKey_t, ivd_MedVolNum_t)); 00111 m_objCounter++; 00112 } //============================================================================//

| fsc_MedVolume::~fsc_MedVolume | ( | ) | [virtual] |
Definition at line 144 of file fsc_MedVolume.cpp.
References log_FUNC_m, m_medVolDataBuf, and m_objCounter.
00144 { 00145 log_FUNC_m(~fsc_MedVolume); 00146 delete [] m_medVolDataBuf; 00147 m_objCounter--; 00148 }
| const cmn_Path fsc_MedVolume::GetMedVolFileName | ( | const cmn_Path & | a_fscDirectory, | |
| ivd_MediaKey_t | a_mediaKey, | |||
| ivd_MedVolNum_t | a_medVolNum, | |||
| UInt32_t | a_blockOfs | |||
| ) | [static] |
Definition at line 54 of file fsc_MedVolume.cpp.
References fsc_byVolDir_c, fsc_MedDirPrefix_c, fsc_MedVolFileExt_c, fsc_OfsFilePrefix_c(), fsc_VolDirPrefix_c, m_ofsBitMask, and snprintf.
Referenced by fsc_MedVolReader::fsc_MedVolReader(), and fsc_MedVolWriter::fsc_MedVolWriter().
00059 { 00060 char sMediaKey[16]; 00061 char sMedVolNum[8]; 00062 char sBlockOfs[10]; 00063 // file name is compound of "med" + mediaKey + "/vol" + medVolNum + "/ofs" + volume offset 00064 // example: "med000000001/vol001/ofs0000000000.lvf" 00065 snprintf(sMediaKey , 16, "%09d", a_mediaKey); 00066 snprintf(sMedVolNum, 8, "%03d", a_medVolNum); 00067 snprintf(sBlockOfs , 10, "%09d", a_blockOfs & m_ofsBitMask); 00068 return a_fscDirectory + fsc_byVolDir_c 00069 + (fsc_MedDirPrefix_c + sMediaKey) 00070 + (fsc_VolDirPrefix_c + sMedVolNum) 00071 + (fsc_OfsFilePrefix_c + sBlockOfs + fsc_MedVolFileExt_c); 00072 }


| void fsc_MedVolume::InitBuffer | ( | ) | [protected] |
Definition at line 116 of file fsc_MedVolume.cpp.
References cmn_GetEnvVariable(), dbg_DETAIL, fsc_MaxMedVolBuffSize_c(), fsc_MedVolBuffSize_c(), cmn_File::GetFullPathRef(), log_DBG_m, log_FUNC_m, m_buffCapacity, m_buffEnd, m_buffPos, m_buffSize, and m_medVolDataBuf.
Referenced by fsc_MedVolume().
00116 { 00117 log_FUNC_m(InitBuffer); 00118 00119 string sBuffSize = cmn_GetEnvVariable(fsc_MedVolBuffSize_c); 00120 if (!sBuffSize.empty()) { 00121 unsigned int buffSize = atoi(sBuffSize.c_str()); 00122 // to round on fsc_medVolData_t size 00123 m_buffCapacity = buffSize / sizeof(fsc_medVolData_t); 00124 } 00125 00126 if (m_buffCapacity > fsc_MaxMedVolBuffSize_c) { 00127 m_buffCapacity = fsc_MaxMedVolBuffSize_c; 00128 } 00129 00130 m_medVolDataBuf = new fsc_medVolData_t[m_buffCapacity]; 00131 00132 m_buffSize = sizeof(fsc_medVolData_t) * m_buffCapacity; 00133 m_buffPos = m_medVolDataBuf; 00134 m_buffEnd = m_medVolDataBuf + m_buffCapacity; 00135 log_DBG_m(dbg_DETAIL, GetFullPathRef() << " bufCap = " << m_buffCapacity 00136 << " sizeof(fsc_medVolData_t) =" << sizeof(fsc_medVolData_t) 00137 << " buffSize =" << m_buffSize 00138 << " buff_p =" << hex << m_buffPos 00139 << " buffEnd_p =" << hex << m_buffEnd << dec); 00140 }


Reimplemented from cmn_File.
Reimplemented in fsc_MedVolWriter, and fsc_MedVolReader.
Definition at line 43 of file fsc_MedVolume.h.
const cmn_Path fsc_MedVolume::m_fscDirectory [protected] |
const ivd_MediaKey_t fsc_MedVolume::m_mediaKey [protected] |
Definition at line 54 of file fsc_MedVolume.h.
Referenced by fsc_MedVolReader::fsc_MedVolReader(), and fsc_MedVolWriter::fsc_MedVolWriter().
const ivd_MedVolNum_t fsc_MedVolume::m_medVolNum [protected] |
Definition at line 55 of file fsc_MedVolume.h.
Referenced by fsc_MedVolReader::fsc_MedVolReader(), and fsc_MedVolWriter::fsc_MedVolWriter().
UInt32_t fsc_MedVolume::m_buffCapacity [protected] |
file name is compound of mediaKey + medVolNum example: "m000000001v001.lcf"
Definition at line 57 of file fsc_MedVolume.h.
Referenced by fsc_MedVolReader::GetFSCdata(), InitBuffer(), and fsc_MedVolReader::SortData().
UInt32_t fsc_MedVolume::m_buffSize [protected] |
Definition at line 58 of file fsc_MedVolume.h.
Referenced by fsc_MedVolReader::GetFSCdata(), and InitBuffer().
fsc_medVolData_t* fsc_MedVolume::m_medVolDataBuf [protected] |
Definition at line 59 of file fsc_MedVolume.h.
Referenced by fsc_MedVolWriter::Flush(), fsc_MedVolReader::GetFSCdata(), InitBuffer(), fsc_MedVolReader::SortData(), and ~fsc_MedVolume().
fsc_medVolData_t* fsc_MedVolume::m_buffPos [protected] |
Definition at line 60 of file fsc_MedVolume.h.
Referenced by fsc_MedVolWriter::Flush(), fsc_MedVolReader::fsc_MedVolReader(), fsc_MedVolReader::GetNextBuff(), InitBuffer(), fsc_MedVolReader::SortData(), and fsc_MedVolWriter::Write().
fsc_medVolData_t* fsc_MedVolume::m_buffEnd [protected] |
Definition at line 61 of file fsc_MedVolume.h.
Referenced by fsc_MedVolReader::fsc_MedVolReader(), fsc_MedVolReader::GetNextBuff(), InitBuffer(), fsc_MedVolReader::SortData(), and fsc_MedVolWriter::Write().
int fsc_MedVolume::m_objCounter [static, protected] |
int fsc_MedVolume::m_ofsBitMask [static, protected] |
Definition at line 67 of file fsc_MedVolume.h.
Referenced by GetMedVolFileName(), and fsc_MedVolWriter::KeyGen().
1.5.6