Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cStructNamedElem Class Reference

#include <cStructElem.h>

Public Member Functions

 operator const ATOMCHAR_t * () const noexcept
 
const ATOMCHAR_tget_Name () const noexcept
 
void * GetValPtr (const void *pBaseInst) const
 
bool GetValVar (const void *pBaseInst, cVariant &vVal) const
 
bool SetValVar (void *pBaseInst, const cVariant &vVal) const
 
HRESULT SetValCheck (void *pBaseInst, const cVariant &vVal) const
 
HRESULT Serialize (cStream &file, bool bModeWrite, void *pBaseInst)
 
COMPARE_t Compare (const void *pBase1, const void *pBase2) const
 
HRESULT ScriptWrite (IScriptableSetter *pScript, const void *pBaseInst) const
 
HRESULT ScriptRead (IScriptableGetter *pScript, void *pBaseInst) const
 
const cStructNamedElemFindArrayKey (const ATOMCHAR_t *pszKey, size_t iSizeElem) const
 
void ScriptWriteArray (IScriptableSetter *pScript, const void *pBaseInst) const
 
void ScriptReadArray (IScriptableGetter *pScript, void *pBaseInst) const
 
COMPARE_t CompareArray (const void *pBase1, const void *pBase2, size_t iSizeElem) const
 

Public Attributes

const ATOMCHAR_tm_pszKey
 the key identifier for the data field. nullptr=last, May be cAtomRef? More...
 
cStructElem m_elem
 (type,offset,extra) More...
 

Detailed Description

Map elements/fields of a structure with a name to registry entries or possibly database fields. LAST = { nullptr, 0, VARTYPE_NoType } base for cScriptableProp ?

Member Function Documentation

◆ Compare()

COMPARE_t GrayLib::cStructNamedElem::Compare ( const void *  pBase1,
const void *  pBase2 
) const
inline

◆ CompareArray()

COMPARE_t GrayLib::cStructNamedElem::CompareArray ( const void *  pBase1,
const void *  pBase2,
size_t  iSizeElem 
) const
Note
If this is really cScriptableProp based this will not work !!

◆ FindArrayKey()

const cStructNamedElem * GrayLib::cStructNamedElem::FindArrayKey ( const ATOMCHAR_t pszKey,
size_t  iSizeElem 
) const

find element in the cStructNamedElem array by the key name.

Note
Do NOT assume key names are sorted?
ASSUME this is a static array.

◆ get_Name()

const ATOMCHAR_t* GrayLib::cStructNamedElem::get_Name ( ) const
inlinenoexcept

◆ GetValPtr()

void* GrayLib::cStructNamedElem::GetValPtr ( const void *  pBaseInst) const
inline

◆ GetValVar()

bool GrayLib::cStructNamedElem::GetValVar ( const void *  pBaseInst,
cVariant vVal 
) const
inline

◆ operator const ATOMCHAR_t *()

GrayLib::cStructNamedElem::operator const ATOMCHAR_t * ( ) const
inlinenoexcept

◆ ScriptRead()

HRESULT GrayLib::cStructNamedElem::ScriptRead ( IScriptableGetter pScript,
void *  pBaseInst 
) const
inline

read in the single element.

◆ ScriptReadArray()

void GrayLib::cStructNamedElem::ScriptReadArray ( IScriptableGetter pScript,
void *  pBaseInst 
) const

Try to read all the keys in an array of cStructNamedElem

◆ ScriptWrite()

HRESULT GrayLib::cStructNamedElem::ScriptWrite ( IScriptableSetter pScript,
const void *  pBaseInst 
) const
inline

write out the single element.

◆ ScriptWriteArray()

void GrayLib::cStructNamedElem::ScriptWriteArray ( IScriptableSetter pScript,
const void *  pBaseInst 
) const

Write all the keys in an array of cStructNamedElem

◆ Serialize()

HRESULT GrayLib::cStructNamedElem::Serialize ( cStream file,
bool  bModeWrite,
void *  pBaseInst 
)
inline

◆ SetValCheck()

HRESULT GrayLib::cStructNamedElem::SetValCheck ( void *  pBaseInst,
const cVariant vVal 
) const
inline

check for value not changing.

◆ SetValVar()

bool GrayLib::cStructNamedElem::SetValVar ( void *  pBaseInst,
const cVariant vVal 
) const
inline

Member Data Documentation

◆ m_elem

cStructElem GrayLib::cStructNamedElem::m_elem

(type,offset,extra)

◆ m_pszKey

const ATOMCHAR_t* GrayLib::cStructNamedElem::m_pszKey

the key identifier for the data field. nullptr=last, May be cAtomRef?


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