Classes | Defines | Typedefs | Enumerations | Functions | Variables

IVD Data format.

Classes

class  df_DataBlock
 Class to handle one data block of specified size. More...
class  df_BlockManager
 Class to handle a series of data blocks of specific size. More...
class  df_MgrWriter
 This class is used on top of df_BlockManager to perform write operations to the buffer queue inside the df_BlockManager. More...
class  df_MgrReader
 This class is used on top of df_BlockManager to perform read operations from the buffer queue inside the df_BlockManager. More...
class  blk_BufferWriter
 Base class for write buffering implementations. More...
class  blk_DiskBufferWriter
class  blk_StdIOWriter
class  blk_DiskFRIWriter
class  blk_NetWriter
 Class for transferring disk buffer over the network (CORBA). More...
class  blk_BufferReader
 Base class for read buffering implementations. More...
class  blk_NetReader
class  blk_DiskBufferReader
class  blk_StdIOReader
class  blk_DiskFRIReader
class  df_BlockProxyWriter
class  df_Writer
class  df_BlockScanner
class  df_FRI
class  df_Packer
class  df_Unpacker
class  df_BlockProxy
 new unpacker class structure More...
class  df_BlockReader
 Class take care about blocks got by the df_MgrReader. More...
class  df_FileBlockReader
class  df_RecReader
 RecReader class is a BlockReader that parse record by record and for each call Proc<record>() method. More...
class  df_FRIDistiller
class  df_SplitInfoUnpacker
struct  ivd_VarData_t
 Used to mark offset and size of variable length data in data records. More...
struct  df_ECMALblHdr_t
struct  df_ECMAFirstVolumeLabel_t
struct  df_ECMAOtherVolumeLabel_t
struct  df_ECMAVolumeLabel_t
struct  df_BlockHeader_t
struct  df_RecCmn_t
struct  df_RecVolHdr_t
struct  df_StandardAttr_t
struct  df_RecFile_t
 File record is used to store changes of a file to the tape. More...
struct  df_RecFileEnd_t
struct  df_RecByteStreamStart_t
struct  df_RecByteStreamEnd_t
struct  df_RecEmbeddedData_t
struct  df_RecFRIStart_t
struct  df_RecFRIEnd_t
struct  df_RecFRISpInfo_t
struct  df_TCMMedium_t
 name Tape cartridge memory (e.g. More...
struct  df_TCMMediaVolume_t

Defines

#define df_VOLHDR_REC_SIZE   (64*1024)
 The size of the volume header block on the tape.
#define df_BLKCOOKIE_SIZE_d   (8)
 The size of the block cookie.
#define df_RECCOOKIE_SIZE_d   (4)
 The size of the record cookie.
#define df_RECVERSION_SIZE_d   (2)
 The size of the record minor and major version.
#define HSM_FILE_HEADER_SIZE   1024
 File Header Size.
#define df_MIN_EMBEDDED_SIZE   (1024 * 4)
 Minimum size of embedded data to use if a whole file can't fit in the current block.
#define CHAR4_TO_UINT32_m(_p)   (*(reinterpret_cast<const UInt32_t*>(_p)))

Typedefs

typedef UInt64_t ivd_Time_t
 64-bit value to hold time in data records on tape.

Enumerations

enum  bbt_BufType_t {
  bbt_DISK_BUF = 1, bbt_SHMEM_BUF = 2,
  bbt_REMOTE_BUF = 3, bbt_DISK_FRI = 4,
  bbt_DISK_FRI_RECOVERY = 5, bbt_TAPE_READ = 6
}
 

Block Buffer Type.

More...

Functions

template<typename _T >
const _T * df_GetSpecificRec (const df_RecCmn_t *a_recCmn_p)
template<typename _T >
_T * df_GetSpecificRec (df_RecCmn_t *a_recCmn_p)
IVD_DF_DECL_d bool df_IsValidPredecessor (UInt32_t a_blkType, UInt32_t a_pred, UInt32_t a_succ)
IVD_DF_DECL_d bool df_IsValidTerminator (UInt32_t a_blkType)
const char * ecma_VolID_c ("VOL")
 ECMA Volume ID (contents defined by ECMA).
const char ecma_LblStdVer_c (4)
 ECMA Version.
const char * df_verMaj_c ("01")
 Major Version.
const char * df_verMin_c ("02")
 Minor Version.
const char * df_blkCookie_c ("AaBdLmPt\0\0")
 Block magic cookie.
const char * df_recCookie_c ("IVD \0\0")
 Record magic cookie.
const UInt32_t df_volFlagClosed_c (1<< 0)
 Is volume closed? Used in MIC.
const UInt32_t df_volFlagSysVolValid_c (1<< 1)
 Is volume index field valid?
const UInt32_t df_volFlagUnreliable_c (1<< 2)
 Is volume unreliable, can't write to it? Used in MIC.
const UInt32_t df_volFlagUnusable_c (1<< 3)
 Is volume unusable, can't be read? Used in MIC.
const UInt32_t df_volFlagSystem_c (1<< 24)
 Flag that marks a system partition in volume flags field.
const UInt32_t df_volFlagBackup_c (1<< 25)
 Flag that marks a backup partition in volume flags field.
const char * str_FRI_c ("FRIn")
const char * str_Data_c ("DATA")
const char * str_FSRec_c ("FSre")
const char * str_Backup_c ("Bckp")
const UInt32_t blk_NoBlk_c (0)
const UInt32_t blk_AnyBlk_c (0xFFFFFFFF)
const UInt32_t blk_Data_c CHAR4_TO_UINT32_m (str_Data_c)
const UInt32_t blk_FRI_c CHAR4_TO_UINT32_m (str_FRI_c)
const UInt32_t blk_FSRec_c CHAR4_TO_UINT32_m (str_FSRec_c)
const UInt32_t blk_Backup_creinterpret_cast (str_Backup_c))
const char * str_RawData_c ("RAWD")
const char * str_VolHdr_c ("MVHd")
const char * str_FileHdr_c ("FILE")
const char * str_FileEnd_c ("FEnd")
const char * str_BSStart_c ("BSSt")
const char * str_BSEnd_c ("BSEn")
const char * str_FRIStart_c ("FRSt")
const char * str_FRIEnd_c ("FREn")
const char * str_FRISpInfo_c ("FRSI")
const char * str_EmbData_c ("EDta")
const char * str_ExpectFRIStart_c ("EFRS")
const UInt32_t rec_NoRec_c (0)
const UInt32_t rec_VolHdr_c CHAR4_TO_UINT32_m (str_VolHdr_c)
const UInt32_t rec_FileHdr_c CHAR4_TO_UINT32_m (str_FileHdr_c)
const UInt32_t rec_FileEnd_c CHAR4_TO_UINT32_m (str_FileEnd_c)
const UInt32_t rec_BSStart_c CHAR4_TO_UINT32_m (str_BSStart_c)
const UInt32_t rec_BSEnd_c CHAR4_TO_UINT32_m (str_BSEnd_c)
const UInt32_t rec_FRIStart_c CHAR4_TO_UINT32_m (str_FRIStart_c)
const UInt32_t rec_FRISpInfo_c CHAR4_TO_UINT32_m (str_FRISpInfo_c)
const UInt32_t rec_FRIEnd_c CHAR4_TO_UINT32_m (str_FRIEnd_c)
const UInt32_t rec_EmbData_c CHAR4_TO_UINT32_m (str_EmbData_c)
const UInt32_t rec_Data_c CHAR4_TO_UINT32_m (str_RawData_c)
const UInt32_t rec_ExpectFRIStart_c CHAR4_TO_UINT32_m (str_ExpectFRIStart_c)
ostream & operator<< (ostream &a_os, const df_RecCmn_t &a_recCmn)
const char * df_RecCmn_t::GetVarDataHost (const ivd_VarData_t &a_varDataH) const
 Returns pointer to the beginning of the variable attribute.
const char * df_RecCmn_t::GetVarDataNet (const ivd_VarData_t &a_varDataN) const
 Returns pointer to the beginning of the variable attribute.

Variables

class IVD_DF_DECL_d df_BlockManager
class IVD_DF_DECL_d blk_Buffer
const char * ecma_VolID_c
const char ecma_LblStdVer_c
const string ecma_ImplID_c
 ECMA implementation ID.
IVD_DF_DECL_d const char * df_verMaj_c
IVD_DF_DECL_d const char * df_verMin_c
IVD_DF_DECL_d const char * df_blkCookie_c
IVD_DF_DECL_d const char * df_recCookie_c
IVD_DF_DECL_d const UInt32_t blk_NoBlk_c
IVD_DF_DECL_d const UInt32_t blk_AnyBlk_c
IVD_DF_DECL_d const UInt32_t blk_Data_c
IVD_DF_DECL_d const UInt32_t blk_FRI_c
IVD_DF_DECL_d const UInt32_t blk_FSRec_c
IVD_DF_DECL_d const UInt32_t blk_Backup_c
IVD_DF_DECL_d const UInt32_t rec_NoRec_c
IVD_DF_DECL_d const UInt32_t rec_VolHdr_c
IVD_DF_DECL_d const UInt32_t rec_FileHdr_c
IVD_DF_DECL_d const UInt32_t rec_FileEnd_c
IVD_DF_DECL_d const UInt32_t rec_BSStart_c
IVD_DF_DECL_d const UInt32_t rec_BSEnd_c
IVD_DF_DECL_d const UInt32_t rec_FRIStart_c
IVD_DF_DECL_d const UInt32_t rec_FRIEnd_c
IVD_DF_DECL_d const UInt32_t rec_FRISpInfo_c
IVD_DF_DECL_d const UInt32_t rec_EmbData_c
IVD_DF_DECL_d const UInt32_t rec_Data_c
IVD_DF_DECL_d const UInt32_t rec_ExpectFRIStart_c
IVD_DF_DECL_d const UInt32_t df_DISKBUF_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_DISKFRI_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_TAPEBUF_c
IVD_DF_DECL_d const UInt32_t df_MEMBUF_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_REMOTEBUF_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_StreamOverheadSize_c
const string ecma_ImplID_c
 ECMA implementation ID.
const UInt32_t df_DISKBUF_BLOCKS_c = 4
const UInt32_t df_DISKFRI_BLOCKS_c = 4
const UInt32_t df_TAPEBUF_c = 8
const UInt32_t df_MEMBUF_BLOCKS_c = 32
const UInt32_t df_REMOTEBUF_BLOCKS_c = 8
const UInt32_t df_StreamOverheadSize_c = 512

Volume header flags



IVD_DF_DECL_d const UInt32_t df_volFlagClosed_c
IVD_DF_DECL_d const UInt32_t df_volFlagSysVolValid_c
IVD_DF_DECL_d const UInt32_t df_volFlagUnreliable_c
IVD_DF_DECL_d const UInt32_t df_volFlagUnusable_c
IVD_DF_DECL_d const UInt32_t df_volFlagSystem_c
IVD_DF_DECL_d const UInt32_t df_volFlagBackup_c

Allignment macros

Macros to align IVD Data Format records - all records are 8 byte aligned



#define df_ROUND_UP_m(x, n)   (((x)+(n)-1) & ~((n)-1))
#define df_ALIGN_m(x)   df_ROUND_UP_m(x, 8)

Block Flags



#define df_BF_CONTINUED   (1 << 0)
 This block is continuation block from previous volume (split).

Record Flags

LR: why?



#define df_RF_CONTINUED   (1 << 0)
 This record is continuation (=repeated) record from previous volume (split).
#define df_RF_WINDOWS   (1 << 1)
 This record is has some fields in Windows format (e.g. file times).
#define df_RF_SPLITTED   (1 << 2)
 This record is splitted, Used at reorganization when split file is copied.
#define df_RF_SENTINEL   (1 << 3)
 This record is continuation (=repeated) record from previous volume (split).

File status



#define df_FS_COMPLETE   0
#define df_FS_ABORTED   1
#define df_FS_ERROR   2

Stream types

Warning:
df_ST_ATTR This stream type is _never_ written to BSS. df_ST_ATTR is detected by having only FileHeader record.
Stream are always written to medium in the following order:
  • File (attributes)
  • Meta (EA, ACL...)
  • AltData (alternative data streams)
  • Data (actual file data) - should be always last (optional)!


#define df_ST_ATTR   (ivd_ATTR_d)
#define df_ST_META   (ivd_META_d)
#define df_ST_ALTDATA   (ivd_ALTDATA_d)
#define df_ST_DATA   (ivd_DATA_d)
#define stn_WIN_SECURITY   "WIN.SEC"
#define stn_WIN_EA   "WIN.EA"
#define stn_WIN_LINK   "WIN.LINK"
#define stn_WIN_OBJID   "WIN.OBJID"
#define stn_WIN_PROPERTY   "WIN.PROPERTY"
#define stn_WIN_REPARSE   "WIN.REPARSE"
#define stn_WIN_SPARSE   "WIN.SPARSE"

Stream status



#define df_SS_COMPLETE   0
#define df_SS_ABORTED   1
#define df_SS_ERROR   2

FRI Status



#define df_FRIS_COMPLETE   0
#define df_FRIS_ABORTED   1
#define df_FRIS_ERROR   2

Detailed Description

See also:
bea_TapeDrive Description of the internal data format

Define Documentation

#define CHAR4_TO_UINT32_m (   _p  )     (*(reinterpret_cast<const UInt32_t*>(_p)))

Definition at line 65 of file df_const.cpp.

#define df_ALIGN_m (   x  )     df_ROUND_UP_m(x, 8)
#define df_BF_CONTINUED   (1 << 0)

This block is continuation block from previous volume (split).

Definition at line 187 of file df_types.h.

Referenced by df_FRI::df_FRI(), df_BlockScanner::SetBlock(), and df_BlockProxy::VerifiedBlock().

#define df_BLKCOOKIE_SIZE_d   (8)

The size of the block cookie.

Warning:
DO NOT CHANGE THIS VALUE!

Definition at line 65 of file df_types.h.

Referenced by df_TCMMedium_t::CheckCookie(), df_BlockScanner::IsBlockCookie(), IsBlockCookie(), and ParseMICMediumNote().

#define df_FRIS_ABORTED   1
#define df_FRIS_COMPLETE   0

Definition at line 540 of file df_types.h.

Referenced by bea_MigrationThread::Migrate(), and df_FRIDistiller::~df_FRIDistiller().

#define df_FRIS_ERROR   2

Definition at line 542 of file df_types.h.

#define df_FS_ABORTED   1

Definition at line 369 of file df_types.h.

Referenced by df_Packer::~df_Packer().

#define df_FS_COMPLETE   0
#define df_FS_ERROR   2

Definition at line 370 of file df_types.h.

Referenced by df_FRIDistiller::CompleteStream(), and df_FRI::MediumVolumeEnd().

#define df_MIN_EMBEDDED_SIZE   (1024 * 4)

Minimum size of embedded data to use if a whole file can't fit in the current block.

Definition at line 495 of file df_types.h.

Referenced by df_Packer::MakeSpaceForData().

#define df_RECCOOKIE_SIZE_d   (4)

The size of the record cookie.

Warning:
DO NOT CHANGE THIS VALUE!

Definition at line 71 of file df_types.h.

Referenced by IsRecordCookie().

#define df_RECVERSION_SIZE_d   (2)

The size of the record minor and major version.

Warning:
DO NOT CHANGE THIS VALUE!

Definition at line 77 of file df_types.h.

Referenced by df_RecReader::VerifyRecHeader().

#define df_RF_CONTINUED   (1 << 0)

This record is continuation (=repeated) record from previous volume (split).

Definition at line 219 of file df_types.h.

Referenced by df_FRI::BlockWritten(), df_BlockScanner::GetNextRecord(), df_FRIDistiller::ProcRecBSStart(), df_FRIDistiller::ProcRecFileHdr(), df_Filter::ProcRecFileHdr(), and df_RecReader::VerifiedRecCmn().

#define df_RF_SENTINEL   (1 << 3)

This record is continuation (=repeated) record from previous volume (split).

Definition at line 225 of file df_types.h.

#define df_RF_SPLITTED   (1 << 2)
#define df_RF_WINDOWS   (1 << 1)

This record is has some fields in Windows format (e.g. file times).

Definition at line 221 of file df_types.h.

Referenced by DumpFile(), ParseFile(), and df_Packer::WriteRecFile().

#define df_ROUND_UP_m (   x,
  n 
)    (((x)+(n)-1) & ~((n)-1))

Definition at line 45 of file df_types.h.

#define df_SS_ABORTED   1
#define df_SS_COMPLETE   0
#define df_SS_ERROR   2

Definition at line 459 of file df_types.h.

#define df_ST_ALTDATA   (ivd_ALTDATA_d)
#define df_ST_ATTR   (ivd_ATTR_d)

after merge will be better to include some common header file for these defines.

Definition at line 398 of file df_types.h.

#define df_ST_DATA   (ivd_DATA_d)
#define df_ST_META   (ivd_META_d)
#define df_VOLHDR_REC_SIZE   (64*1024)
#define HSM_FILE_HEADER_SIZE   1024

File Header Size.

Definition at line 82 of file df_types.h.

#define stn_WIN_EA   "WIN.EA"

after merge will be better to include some common header file for these defines.

Definition at line 408 of file df_types.h.

#define stn_WIN_LINK   "WIN.LINK"

after merge will be better to include some common header file for these defines.

Definition at line 409 of file df_types.h.

#define stn_WIN_OBJID   "WIN.OBJID"

after merge will be better to include some common header file for these defines.

Definition at line 410 of file df_types.h.

#define stn_WIN_PROPERTY   "WIN.PROPERTY"

after merge will be better to include some common header file for these defines.

Definition at line 411 of file df_types.h.

#define stn_WIN_REPARSE   "WIN.REPARSE"

after merge will be better to include some common header file for these defines.

Definition at line 412 of file df_types.h.

#define stn_WIN_SECURITY   "WIN.SEC"

after merge will be better to include some common header file for these defines.

Definition at line 407 of file df_types.h.

#define stn_WIN_SPARSE   "WIN.SPARSE"

after merge will be better to include some common header file for these defines.

Definition at line 413 of file df_types.h.


Typedef Documentation

64-bit value to hold time in data records on tape.

Definition at line 147 of file df_types.h.


Enumeration Type Documentation

Block Buffer Type.

Enumerator:
bbt_DISK_BUF 
bbt_SHMEM_BUF 
bbt_REMOTE_BUF 
bbt_DISK_FRI 
bbt_DISK_FRI_RECOVERY 
bbt_TAPE_READ 

Definition at line 134 of file df.h.


Function Documentation

const UInt32_t blk_AnyBlk_c ( 0xFFFFFFFF   ) 
const UInt32_t blk_NoBlk_c (  ) 
const UInt32_t rec_VolHdr_c CHAR4_TO_UINT32_m ( str_VolHdr_c   ) 
const UInt32_t blk_Data_c CHAR4_TO_UINT32_m ( str_Data_c   ) 
const UInt32_t rec_FileHdr_c CHAR4_TO_UINT32_m ( str_FileHdr_c   ) 
const UInt32_t rec_FileEnd_c CHAR4_TO_UINT32_m ( str_FileEnd_c   ) 
const UInt32_t rec_EmbData_c CHAR4_TO_UINT32_m ( str_EmbData_c   ) 
const UInt32_t rec_BSStart_c CHAR4_TO_UINT32_m ( str_BSStart_c   ) 
const UInt32_t rec_BSEnd_c CHAR4_TO_UINT32_m ( str_BSEnd_c   ) 
const UInt32_t rec_FRIStart_c CHAR4_TO_UINT32_m ( str_FRIStart_c   ) 
const UInt32_t rec_FRISpInfo_c CHAR4_TO_UINT32_m ( str_FRISpInfo_c   ) 
const UInt32_t rec_FRIEnd_c CHAR4_TO_UINT32_m ( str_FRIEnd_c   ) 
const UInt32_t blk_FRI_c CHAR4_TO_UINT32_m ( str_FRI_c   ) 
const UInt32_t blk_FSRec_c CHAR4_TO_UINT32_m ( str_FSRec_c   ) 
const UInt32_t rec_Data_c CHAR4_TO_UINT32_m ( str_RawData_c   ) 
const UInt32_t rec_ExpectFRIStart_c CHAR4_TO_UINT32_m ( str_ExpectFRIStart_c   ) 
const char* df_blkCookie_c ( "AaBdLmPt\0\0"   ) 

Block magic cookie.

template<typename _T >
_T* df_GetSpecificRec ( df_RecCmn_t a_recCmn_p  ) 

Definition at line 1762 of file df.h.

                                               {
    return reinterpret_cast<_T*>(
                (UInt8_t*)a_recCmn_p + sizeof(df_RecCmn_t));
}

template<typename _T >
const _T* df_GetSpecificRec ( const df_RecCmn_t a_recCmn_p  ) 

Definition at line 1756 of file df.h.

                                                           {
    return reinterpret_cast<const _T*>(
                (const UInt8_t*)a_recCmn_p + sizeof(df_RecCmn_t));
}

bool df_IsValidPredecessor ( UInt32_t  a_blkType,
UInt32_t  a_pred,
UInt32_t  a_succ 
)

Definition at line 176 of file df_const.cpp.

References blk_FRI_c, rec_BSEnd_c, rec_BSStart_c, rec_Data_c, rec_EmbData_c, rec_ExpectFRIStart_c, rec_FileEnd_c, rec_FileHdr_c, rec_FRIEnd_c, rec_FRISpInfo_c, rec_FRIStart_c, rec_NoRec_c, and rec_VolHdr_c.

Referenced by df_BlockScanner::GetNextRecord(), df_RecReader::VerifiedRecCmn(), and df_Packer::WriteRecCmn().

                                                             {

    if (a_succ == rec_VolHdr_c) {
        if (a_pred == rec_NoRec_c) {
            return true;
        }
    }
    else if (a_succ == rec_FileHdr_c) {
        if (a_pred == rec_NoRec_c ||
            a_pred == rec_FileEnd_c) {
            return true;
        }
        if (a_blkType == blk_FRI_c) {
            if (a_pred == rec_FRIStart_c ||
                a_pred == rec_FRISpInfo_c) {
                return true;
            }
        }
    }
    else if (a_succ == rec_FileEnd_c) {
        if (a_pred == rec_FileHdr_c ||
            a_pred == rec_BSEnd_c) {
            return true;
        }

        if (a_blkType == blk_FRI_c) {
            if (a_pred == rec_FRISpInfo_c) {
                return true;
            }
        }
    }
    else if (a_succ == rec_BSStart_c) {
        if (a_pred == rec_FileHdr_c ||
            a_pred == rec_BSEnd_c) {
            return true;
        }
    }
    else if (a_succ == rec_BSEnd_c) {
        if (a_pred == rec_Data_c ||
            a_pred == rec_EmbData_c ||
            a_pred == rec_BSStart_c) {
            return true;
        }
    }
    else if (a_succ == rec_EmbData_c) {
        if (a_pred == rec_BSStart_c ||
            a_pred == rec_Data_c ||
            a_pred == rec_EmbData_c) {
            return true;
        }
    }
    else if (a_succ == rec_Data_c) {
        if (a_pred == rec_BSStart_c ||
            a_pred == rec_Data_c ||
            a_pred == rec_EmbData_c) {
            return true;
        }
    }

    // additional records supported by FRI blocks
    if (a_blkType == blk_FRI_c) {
        if (a_succ == rec_FRIStart_c) {
            if (a_pred == rec_NoRec_c ||
                a_pred == rec_ExpectFRIStart_c ||
                a_pred == rec_FRIEnd_c) {
                return true;
            }
        }
        else if (a_succ == rec_FRIEnd_c) {
            if (a_pred == rec_FileEnd_c ||
                a_pred == rec_FRIStart_c ||     // empty FRI
                a_pred == rec_FRISpInfo_c ||    // when file continues
                a_pred == rec_FileHdr_c) {      // when file continues
                return true;
            }
        }
        else if (a_succ == rec_FRISpInfo_c) {
            if (a_pred == rec_FileHdr_c ||
                a_pred == rec_BSStart_c ||
                a_pred == rec_EmbData_c ||
                a_pred == rec_BSEnd_c) { // Split non-data stream
                return true;
            }
        }
    }

    return false;
}

Here is the caller graph for this function:

bool df_IsValidTerminator ( UInt32_t  a_blkType  ) 

Definition at line 266 of file df_const.cpp.

References rec_FileEnd_c, rec_FileHdr_c, rec_FRIEnd_c, and rec_VolHdr_c.

Referenced by df_Packer::~df_Packer().

                                              {
    if (   a_blkType == rec_VolHdr_c
        || a_blkType == rec_FileHdr_c
        || a_blkType == rec_FileEnd_c
        || a_blkType == rec_FRIEnd_c) {

        return true;
    }
    else {
        return false;
    }
}

Here is the caller graph for this function:

const char* df_recCookie_c ( "IVD \0\0"   ) 

Record magic cookie.

const char* df_verMaj_c ( "01"   ) 

Major Version.

const char* df_verMin_c ( "02"   ) 

Minor Version.

const UInt32_t df_volFlagBackup_c ( 1<<  25  ) 

Flag that marks a backup partition in volume flags field.

const UInt32_t df_volFlagClosed_c ( 1<<  0  ) 

Is volume closed? Used in MIC.

Added in Data Format version 01.01.

const UInt32_t df_volFlagSystem_c ( 1<<  24  ) 

Flag that marks a system partition in volume flags field.

const UInt32_t df_volFlagSysVolValid_c ( 1<<  1  ) 

Is volume index field valid?

Added in Data Format version 01.01.

const UInt32_t df_volFlagUnreliable_c ( 1<<  2  ) 

Is volume unreliable, can't write to it? Used in MIC.

Added in Data Format version 01.01.

const UInt32_t df_volFlagUnusable_c ( 1<<  3  ) 

Is volume unusable, can't be read? Used in MIC.

Added in Data Format version 01.01.

const char ecma_LblStdVer_c (  ) 

ECMA Version.

const char* ecma_VolID_c ( "VOL"   ) 

ECMA Volume ID (contents defined by ECMA).

const char * df_RecCmn_t::GetVarDataHost ( const ivd_VarData_t a_varDataH  )  const [inherited]

Returns pointer to the beginning of the variable attribute.

Parameters:
a_varDataN variable data info in host format.

Definition at line 283 of file df_const.cpp.

References cmn_EmptyCStr(), and ivd_VarData_t::offset.

                                                                             {
    if (a_varDataH.offset == 0) {
        return cmn_EmptyCStr();
    }
    else {
        return (reinterpret_cast<const char*>(this) + a_varDataH.offset);
    }
}

Here is the call graph for this function:

const char * df_RecCmn_t::GetVarDataNet ( const ivd_VarData_t a_varDataN  )  const [inherited]

Returns pointer to the beginning of the variable attribute.

Parameters:
a_varDataN variable data info in network format.

Definition at line 297 of file df_const.cpp.

References cmn_EmptyCStr(), ntoh(), and ivd_VarData_t::offset.

Referenced by DumpBSStart(), DumpEmbData(), DumpFile(), ParseBSEnd(), ParseBSStart(), ParseEmbData(), ParseFile(), df_RecReader::PrepareDataStreamUnpacker(), hsm_IVDFSRecoverer::ProcRecBSEnd(), hsm_IVDFSRecoverer::ProcRecBSStart(), df_SplitInfoUnpacker::ProcRecBSStart(), hsm_Recall::ProcRecEmbData(), hsm_IVDFSRecoverer::ProcRecEmbData(), df_SplitInfoUnpacker::ProcRecEmbData(), hsm_IVDFSRecoverer::ProcRecFileHdr(), df_SplitInfoUnpacker::ProcRecFileHdr(), df_FRIDistiller::ProcRecFileHdr(), df_Filter::ProcRecFileHdr(), df_Unpacker::ReadRecBSStart(), and df_Unpacker::ReadRecFile().

                                                                            {
    if (a_varDataN.offset == 0) {
        return cmn_EmptyCStr();
    }
    else {
        return (reinterpret_cast<const char*>(this) + ntoh(a_varDataN.offset));
    }
}

Here is the call graph for this function:

Here is the caller graph for this function:

ostream& operator<< ( ostream &  a_os,
const df_RecCmn_t a_recCmn 
)

Definition at line 309 of file df_const.cpp.

References cmn_Num2Str(), df_RecCmn_t::flags, df_RecCmn_t::magicCookie, ntoh(), df_RecCmn_t::seqNum, df_RecCmn_t::size, df_RecCmn_t::type, df_RecCmn_t::verMajor, and df_RecCmn_t::verMinor.

                                                                 {
    a_os <<"  <Record: " <<
        string(reinterpret_cast<const char*>(&a_recCmn.type),
               sizeof(a_recCmn.type)) << ">" <<
        " C=" <<
        string(reinterpret_cast<const char*>(a_recCmn.magicCookie),
               sizeof(a_recCmn.magicCookie)) <<
        " Ver=" <<
        string(reinterpret_cast<const char*>(&a_recCmn.verMajor),
               sizeof(a_recCmn.verMajor)) << "." <<
        string(reinterpret_cast<const char*>(&a_recCmn.verMinor),
               sizeof(a_recCmn.verMinor)) <<
        " Flags=" <<
        cmn_Num2Str(ntoh(a_recCmn.flags), true) <<
        " SeqNum=" << ntoh(a_recCmn.seqNum) <<
        " Size=" << ntoh(a_recCmn.size) << endl;
    return a_os;
}

Here is the call graph for this function:

const UInt32_t rec_NoRec_c (  ) 
const UInt32_t blk_Backup_c* reinterpret_cast ( str_Backup_c   ) 

Referenced by data_Attribute::FindAttrID(), GetPathList(), Mamrmedinfo(), and Mamrvolinfo().

Here is the caller graph for this function:

const char* str_Backup_c ( "Bckp"   ) 
const char* str_BSEnd_c ( "BSEn"   ) 
const char* str_BSStart_c ( "BSSt"   ) 
const char* str_Data_c ( "DATA"   ) 
const char* str_EmbData_c ( "EDta"   ) 
const char* str_ExpectFRIStart_c ( "EFRS"   ) 
const char* str_FileEnd_c ( "FEnd"   ) 
const char* str_FileHdr_c ( "FILE"   ) 
const char* str_FRI_c ( "FRIn"   ) 
const char* str_FRIEnd_c ( "FREn"   ) 
const char* str_FRISpInfo_c ( "FRSI"   ) 
const char* str_FRIStart_c ( "FRSt"   ) 
const char* str_FSRec_c ( "FSre"   ) 
const char* str_RawData_c ( "RAWD"   ) 
const char* str_VolHdr_c ( "MVHd"   ) 

Variable Documentation

IVD_DF_DECL_d const UInt32_t blk_AnyBlk_c
IVD_DF_DECL_d const UInt32_t blk_Backup_c

Referenced by Backup(), main(), and Restore().

class IVD_DF_DECL_d blk_Buffer

Definition at line 131 of file df.h.

IVD_DF_DECL_d const UInt32_t blk_Data_c
IVD_DF_DECL_d const UInt32_t blk_FRI_c
IVD_DF_DECL_d const UInt32_t blk_FSRec_c
IVD_DF_DECL_d const UInt32_t blk_NoBlk_c
IVD_DF_DECL_d const char* df_blkCookie_c
class IVD_DF_DECL_d df_BlockManager
IVD_DF_DECL_d const UInt32_t df_DISKBUF_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_DISKFRI_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_MEMBUF_BLOCKS_c
IVD_DF_DECL_d const char* df_recCookie_c
IVD_DF_DECL_d const UInt32_t df_REMOTEBUF_BLOCKS_c
IVD_DF_DECL_d const UInt32_t df_StreamOverheadSize_c
IVD_DF_DECL_d const UInt32_t df_TAPEBUF_c
IVD_DF_DECL_d const char* df_verMaj_c
IVD_DF_DECL_d const char* df_verMin_c
IVD_DF_DECL_d const UInt32_t df_volFlagBackup_c
IVD_DF_DECL_d const UInt32_t df_volFlagClosed_c
IVD_DF_DECL_d const UInt32_t df_volFlagSystem_c
IVD_DF_DECL_d const UInt32_t df_volFlagSysVolValid_c
IVD_DF_DECL_d const UInt32_t df_volFlagUnreliable_c
IVD_DF_DECL_d const UInt32_t df_volFlagUnusable_c
const string ecma_ImplID_c

ECMA implementation ID.

Warning:
The size of the string may not exceed 13 bytes (defined by ECMA)

Definition at line 88 of file df_const.cpp.

Referenced by df_BlockScanner::GetVolumeID(), and df_Packer::WriteECMAVolHeader().

const string ecma_ImplID_c
Initial value:
    string(df_recCookie_c) + string(df_verMaj_c) + string(".") + string(df_verMin_c)

ECMA implementation ID.

Warning:
The size of the string may not exceed 13 bytes (defined by ECMA)

Definition at line 88 of file df_const.cpp.

Referenced by df_BlockScanner::GetVolumeID(), and df_Packer::WriteECMAVolHeader().

const char ecma_LblStdVer_c
const char* ecma_VolID_c
IVD_DF_DECL_d const UInt32_t rec_BSEnd_c
IVD_DF_DECL_d const UInt32_t rec_BSStart_c
IVD_DF_DECL_d const UInt32_t rec_Data_c
IVD_DF_DECL_d const UInt32_t rec_EmbData_c
IVD_DF_DECL_d const UInt32_t rec_ExpectFRIStart_c
IVD_DF_DECL_d const UInt32_t rec_FileEnd_c
IVD_DF_DECL_d const UInt32_t rec_FileHdr_c
IVD_DF_DECL_d const UInt32_t rec_FRIEnd_c
IVD_DF_DECL_d const UInt32_t rec_FRISpInfo_c
IVD_DF_DECL_d const UInt32_t rec_FRIStart_c
IVD_DF_DECL_d const UInt32_t rec_NoRec_c
IVD_DF_DECL_d const UInt32_t rec_VolHdr_c