/*
The High Performance Template Library is a Licensed as LGPL.
It is intended to provide a base object Testitecture, with
Serialization, thread control, etc.
It is based on a merger of QT, BOOST, STL, and SigSlots.
License information is in the HtlLicense.h file
October 2012
*/
#pragma once
#pragma warning(push)
#pragma warning (disable : 4005 ) /* macro redefinition */
#define HTL_DLLEXPORT
#pragma warning(pop)
#include "..\stdafx.h"
#include ".\HtlTestItem003.h"
#include "modHtlArchive.h"
namespace HTL
{
//Virtual Inheritance Serialization Engines
//SERIALIZATION ACCESSOR MACRO///////////////////////////////////////
int HtlTestItem03::Save(HTL::HtlElement * ptrCurrNode, std::string strMemVarName, bool blnWithSubObjects)
{
int intReturn = 0;
//SAFETY CHECK //put at top of all Serialize Methods
if(!ptrCurrNode){return 0;};
//CALL PARENT CLASS Serialize()
/*...*/
HtlBase::Save(ptrCurrNode, strMemVarName, blnWithSubObjects);
//Standard Member Variables
intReturn &= SetMemVar(ptrCurrNode,"m_blnTest",m_blnTest);
intReturn &= SetMemVar(ptrCurrNode,"m_intVar03",m_intVar03);
intReturn &= SetMemVar(ptrCurrNode,"m_lngVar05",m_lngVar05);
intReturn &= SetHtlMemVar< Htl1DVector<double, CPP_DOUBLE> ,HTL_CONTAINER>(ptrCurrNode,"m_arrDblData",m_arrDblData,blnWithSubObjects);
//Sub Object Member Variables
if(blnWithSubObjects)
{
intReturn &= SetMemVar(ptrCurrNode,"m_objItem", &m_objItem,blnWithSubObjects);
};
return intReturn;
};
int HtlTestItem03::Load(HTL::HtlElement * ptrCurrNode, std::string strMemVarName)
{
int intReturn = 0;
//SAFETY CHECK //put at top of all Serialize Methods
if(!ptrCurrNode){return 0;};
//CALL PARENT CLASS Serialize()
/*...*/
HtlBase::Load(ptrCurrNode,strMemVarName);
//Standard Member Variables
intReturn &= GetMemVar(ptrCurrNode,"m_blnTest",m_blnTest);
intReturn &= GetMemVar(ptrCurrNode,"m_intVar03",m_intVar03);
intReturn &= GetMemVar(ptrCurrNode,"m_lngVar05",m_lngVar05);
intReturn &= GetHtlMemVar< Htl1DVector<double, CPP_DOUBLE> ,HTL_CONTAINER>(ptrCurrNode,"m_arrDblData",m_arrDblData);
intReturn &= GetMemVar(ptrCurrNode,"m_objItem",&m_objItem);
return intReturn;
};
};