In This Topic
#ifndef _DerivedByExtensionLib_DerivedByExtensionLib_CCAN_Address_h
#define _DerivedByExtensionLib_DerivedByExtensionLib_CCAN_Address_h
#include "../DerivedByExtensionLib/IAddress.h"
namespace DerivedByExtensionLib { class CClassFactory; };
namespace DerivedByExtensionLib
{
class DerivedByExtensionLib_DLL CCAN_Address : public CInstanceMonitor
, public virtual DerivedByExtensionLib::CXmlCommonBase
, public virtual DerivedByExtensionLib::IAddress
{
public:
static DerivedByExtensionLib::CCAN_AddressPtr CreateInstance(LPCTSTR lpctElementName=_T("CAN_Address"));
protected:
CCAN_Address(LPCTSTR lpctElementName=_T("CAN_Address"));
virtual ~CCAN_Address();
friend class DerivedByExtensionLib::CClassFactory;
virtual void Init();
virtual void AccessProperty(int iPropertyIndex, bool read, LtXmlLib20::LtVariant& rValue);
virtual LtXmlLib20Data::CParentElementInfo* GetClassInfo() const;
virtual LtXmlLib20Data::CElementInfo** GetClassElementInfo() const;
virtual LtXmlLib20Data::CAttributeInfo** GetClassAttributeInfo() const;
static void CleanMetaData();
void Cleanup();
virtual void OnEvent(LtXmlLib20::CXmlObjectBase* pMsgSource, LtXmlLib20::IEventSink::MsgType eMsgType, void* pData);
public:
std::tstring GetName() const;
void SetName(std::tstring val);
protected:
std::tstring m_Name;
public:
std::tstring GetStreet() const;
void SetStreet(std::tstring val);
protected:
std::tstring m_Street;
public:
std::tstring GetCity() const;
void SetCity(std::tstring val);
protected:
std::tstring m_City;
public:
std::tstring GetProvince() const;
void SetProvince(std::tstring val);
protected:
std::tstring m_Province;
public:
std::tstring GetPostalCode() const;
void SetPostalCode(std::tstring val);
protected:
std::tstring m_PostalCode;
public:
virtual DerivedByExtensionLib::IAddressPtr Clone() const;
virtual std::tstring GetTargetNamespace() const;
virtual std::tstring GetNamespace() const;
virtual LtXmlLib20::CXmlObjectBase* GetBase();
// Internal data for XML serialization
private:
static LtXmlLib20Data::CParentElementInfo* ms_pParentElementInfo;
static LtXmlLib20Data::CElementInfo** ms_ppElementInfo;
static LtXmlLib20Data::CAttributeInfo** ms_ppAttributeInfo;
};
};
#endif