In This Topic
#ifndef _SimpleHierarchyLib_SimpleHierarchyLib_CInvoice_h
#define _SimpleHierarchyLib_SimpleHierarchyLib_CInvoice_h
#include "../SimpleHierarchyLib/AddressType.h"
#include "../SimpleHierarchyLib/AddressType.h"
#include "../SimpleHierarchyLib/ItemTypeCol.h"
#include "../SimpleHierarchyLib/ItemType.h"
#include "../SimpleHierarchyLib/Payment.h"
namespace SimpleHierarchyLib { class CClassFactory; };
namespace SimpleHierarchyLib
{
class SimpleHierarchyLib_DLL CInvoice : public CInstanceMonitor
, public virtual SimpleHierarchyLib::CXmlCommonBase
{
public:
static SimpleHierarchyLib::CInvoicePtr CreateInstance(LPCTSTR lpctElementName=_T("Invoice"));
protected:
CInvoice(LPCTSTR lpctElementName=_T("Invoice"));
virtual ~CInvoice();
friend class SimpleHierarchyLib::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:
DWORD GetInvoiceNo() const;
void SetInvoiceNo(DWORD val);
protected:
DWORD m_InvoiceNo;
public:
SimpleHierarchyLib::CAddressTypePtr GetDeliveryAddress() const;
void SetDeliveryAddress(SimpleHierarchyLib::CAddressType* value);
protected:
SimpleHierarchyLib::CAddressTypePtr m_DeliveryAddress;
public:
SimpleHierarchyLib::CAddressTypePtr GetBillingAddress() const;
void SetBillingAddress(SimpleHierarchyLib::CAddressType* value);
protected:
SimpleHierarchyLib::CAddressTypePtr m_BillingAddress;
public:
SimpleHierarchyLib::CItemTypeColPtr GetItem() const;
protected:
SimpleHierarchyLib::CItemTypeColPtr m_Item;
public:
SimpleHierarchyLib::CPaymentPtr GetPayment() const;
void SetPayment(SimpleHierarchyLib::CPayment* value);
protected:
SimpleHierarchyLib::CPaymentPtr m_Payment;
public:
virtual SimpleHierarchyLib::CInvoicePtr 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