![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cManifestDir.h>
Public Types | |
enum | MANTAG_TYPE { MANTAG_QTY } |
Public Member Functions | |
cManifestDir (cStringF sDirFullPath) | |
cManifestDir (const cManifestRoot &root) | |
virtual | ~cManifestDir () |
const FILECHAR_t * | get_Name () const |
cStringF | get_DirPath () const noexcept |
cManifestElemData & | ref_ElemData () |
CRC32_t | get_ManCRC32 () const |
bool | HasChild (const cManifestDir &rManChild) const |
HRESULT | ReadManifestFile (cStringF sFullManifestPath) |
Load the manifest file for this directory. More... | |
HRESULT | ReadManifestFile (const cManifestRoot &root, const FILECHAR_t *pszManifestName=nullptr) |
HRESULT | ReadSearchForTitle (const cManifestRoot &root, cStringF &sPathRet, const FILECHAR_t *pszTitle, int iDescendLevels) |
HRESULT | WriteManifestSection (cStreamOutput &file) |
HRESULT | WriteManifestFile (const cManifestRoot &root) |
HRESULT | BuildManifest (cManifestBuilder &root, FILEATTR_MASK_t dwAttributes=FILEATTR_Directory) |
cStringF | makeFilePath (const FILECHAR_t *pszFileName) const |
ITERATE_t | addManifestElem (cManifestElem *pData) |
bool | rebuildManifestData () |
Public Attributes | |
cArraySortName< cManifestElem > | m_aElems |
Name sorted list. More... | |
Static Public Attributes | |
static const IniChar_t * | k_ManTags [MANTAG_QTY+1] |
static const IniChar_t * | k_pszSectionName = "Package" |
"Package" More... | |
Protected Member Functions | |
HRESULT | BuildManifestElem (cManifestBuilder &root, const cManifestDir *pManifestOld, cFileFindEntry &FileEntry) |
HRESULT | BuildManifestMerge (cManifestBuilder &root, const cManifestDir *pManifestOld, FILEATTR_MASK_t dwAttributes) |
Protected Attributes | |
const cStringF | m_sDirPath |
Full (local) Dir path. Does NOT include the wild card. Not relative to cManifestRoot. More... | |
cManifestElemData | m_ManData |
represents all files in this directory. More... | |
A list of files and sub-directories in a particular file system directory. Typical use = match the files in a directory to its manifest then do something. sDirPath = full path inside cManifestRoot;
GrayLib::cManifestDir::cManifestDir | ( | cStringF | sDirFullPath | ) |
GrayLib::cManifestDir::cManifestDir | ( | const cManifestRoot & | root | ) |
|
virtual |
ITERATE_t GrayLib::cManifestDir::addManifestElem | ( | cManifestElem * | pData | ) |
Add the file and compute totals.
HRESULT GrayLib::cManifestDir::BuildManifest | ( | cManifestBuilder & | root, |
FILEATTR_MASK_t | dwAttributes = FILEATTR_Directory |
||
) |
Read and update/Build Manifest for this directory if the manifest does not match. dwAttributes = FILEATTR_Directory + others
|
protected |
Add a single element to the manifest. merge with old manifest element if possible.
|
protected |
pManifestOld = there is a previous Manifest file i can try to merge in. (get CRC's faster this way) dwAttributes = FILEATTR_Directory + others
|
inlinenoexcept |
|
inline |
< CRC for all files here.
|
inline |
bool GrayLib::cManifestDir::HasChild | ( | const cManifestDir & | rManChild | ) | const |
Does it have this child and is it a real match ?
|
inline |
Make full path.
HRESULT GrayLib::cManifestDir::ReadManifestFile | ( | const cManifestRoot & | root, |
const FILECHAR_t * | pszManifestName = nullptr |
||
) |
Read the manifest file for a directory.
Load the manifest file for this directory.
Read the manifest file for a directory.
HRESULT GrayLib::cManifestDir::ReadSearchForTitle | ( | const cManifestRoot & | root, |
cStringF & | sPathRet, | ||
const FILECHAR_t * | pszTitle, | ||
int | iDescendLevels | ||
) |
We are looking for a file (without ext) in the manifest and below. pszTitle = Name + EXT
bool GrayLib::cManifestDir::rebuildManifestData | ( | ) |
rebuild the manifest m_ManData from its elements.
|
inline |
HRESULT GrayLib::cManifestDir::WriteManifestFile | ( | const cManifestRoot & | root | ) |
Write the manifest file.
HRESULT GrayLib::cManifestDir::WriteManifestSection | ( | cStreamOutput & | file | ) |
Write the file section contents.
|
static |
|
static |
"Package"
cArraySortName<cManifestElem> GrayLib::cManifestDir::m_aElems |
Name sorted list.
|
protected |
represents all files in this directory.
|
protected |
Full (local) Dir path. Does NOT include the wild card. Not relative to cManifestRoot.