/**********************************************************************************************
* Copyright (c) 2001-2025 Liquid Technologies Limited. All rights reserved.
* See www.liquid-technologies.com for product details.
*
* Please see products End User License Agreement for distribution permissions.
*
* WARNING: THIS FILE IS GENERATED
* Changes made outside of ##HAND_CODED_BLOCK_START blocks will be overwritten
*
* Generation : by Liquid XML Data Binder 19.0.14.11049
* Using Schema: Cardinality.xsd
**********************************************************************************************/
#ifndef _CardinalityLib_CardinalityLib_CAComplexCollectionElementCol_h
#define _CardinalityLib_CardinalityLib_CAComplexCollectionElementCol_h
// ##HAND_CODED_BLOCK_START ID="Additional Includes"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
// Add Additional Includes here...
// ##HAND_CODED_BLOCK_END ID="Additional Includes"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
namespace CardinalityLib
{
class CardinalityLib_DLL CAComplexCollectionElementCol : public CardinalityLib::CXmlCollectionCommonBase, CInstanceMonitor
// ##HAND_CODED_BLOCK_START ID="Additional Base Classes"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
// Add Additional base classes here...
// ##HAND_CODED_BLOCK_END ID="Additional Base Classes"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
{
protected:
CAComplexCollectionElementCol(LPCTSTR lpctElementName, LPCTSTR lpctNamespaceUri, int minOccurs, int maxOccurs);
public:
CardinalityLib::CAComplexCollectionElementPtr Add();
void Add(CardinalityLib::CAComplexCollectionElement* pCls);
void AddAt(int index, CardinalityLib::CAComplexCollectionElement* pCls);
CardinalityLib::CAComplexCollectionElementPtr Item(int index) const;
void Remove(CardinalityLib::CAComplexCollectionElement* pCls);
typedef LtXmlLib21::CLtIterator<CardinalityLib::CAComplexCollectionElement> iterator;
typedef LtXmlLib21::CLtConstIterator<CardinalityLib::CAComplexCollectionElement> const_iterator;
iterator begin();
iterator end();
protected:
virtual void ToXml_Int( LtXmlLib21::CXmlWriter* pXmlOut, bool bRegisterNamespaces, LPCTSTR lpctNamespaceUri, const LtXmlLib21::CSerializationContext& context, bool isOptionalChoice) const;
virtual LtXmlLib21::CXmlElement* FromXml_Int( LtXmlLib21::CXmlElement* pXmlParent, LtXmlLib21::CXmlElement* pXmlChild, const LtXmlLib21::CSerializationContext& context, bool isOptionalChoice);
friend class CardinalityLib::CClassFactory;
// ##HAND_CODED_BLOCK_START ID="Additional Methods"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
// Add Additional Methods here...
// ##HAND_CODED_BLOCK_END ID="Additional Methods"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
};
}; // end namespace (CardinalityLib)
#endif // _CardinalityLib_CAComplexCollectionElementCol_h