In This Topic
    AComplexCollectionElementCol.h
    In This Topic
    /**********************************************************************************************
     * Copyright (c) 2001-2023 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 LtXmlLib20::CLtIterator<CardinalityLib::CAComplexCollectionElement> iterator;
            typedef LtXmlLib20::CLtConstIterator<CardinalityLib::CAComplexCollectionElement> const_iterator;
    
            iterator begin();
            iterator end();
        
        protected:
            virtual void ToXml_Int( LtXmlLib20::CXmlWriter* pXmlOut, bool bRegisterNamespaces, LPCTSTR lpctNamespaceUri, const LtXmlLib20::CSerializationContext& context, bool isOptionalChoice) const;
            virtual LtXmlLib20::CXmlElement* FromXml_Int( LtXmlLib20::CXmlElement* pXmlParent, LtXmlLib20::CXmlElement* pXmlChild, const LtXmlLib20::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