Xerces-C++ 3.3.0
XSParticle Class Reference

#include <xercesc/framework/psvi/XSParticle.hpp>

Inheritance diagram for XSParticle:
XSObject XMemory

Public Types

enum  TERM_TYPE { TERM_EMPTY = 0 , TERM_ELEMENT = XSConstants::ELEMENT_DECLARATION , TERM_MODELGROUP = XSConstants::MODEL_GROUP_DEFINITION , TERM_WILDCARD = XSConstants::WILDCARD }
 

Public Member Functions

Constructors
 XSParticle (TERM_TYPE termType, XSModel *const xsModel, XSObject *const particleTerm, XMLSize_t minOccurs, XMLSize_t maxOccurs, bool unbounded, MemoryManager *const manager)
 The default constructor.
 
Destructor
 ~XSParticle ()
 
- Public Member Functions inherited from XSObject
 XSObject (XSConstants::COMPONENT_TYPE compType, XSModel *const xsModel, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 The default constructor.
 
virtual ~XSObject ()
 
XSConstants::COMPONENT_TYPE getType () const
 The type of this object, i.e.
 
virtual const XMLChgetName () const
 The name of type NCName of this declaration as defined in XML Namespaces.
 
virtual const XMLChgetNamespace () const
 The [target namespace] of this object, or null if it is unspecified.
 
virtual XSNamespaceItemgetNamespaceItem ()
 A namespace schema information item corresponding to the target namespace of the component, if it's globally declared; or null otherwise.
 
virtual XMLSize_t getId () const
 Optional.
 
void setId (XMLSize_t id)
 methods needed by implementation
 
- Public Member Functions inherited from XMemory
void * operator new (size_t size)
 This method overrides operator new.
 
void * operator new (size_t size, MemoryManager *memMgr)
 This method defines a custom operator new, that will use the provided memory manager to perform the allocation.
 
void * operator new (size_t size, void *ptr)
 This method overrides placement operator new.
 
void operator delete (void *p)
 This method overrides operator delete.
 
void operator delete (void *p, MemoryManager *memMgr)
 This method provides a matching delete for the custom operator new.
 
void operator delete (void *p, void *ptr)
 This method provides a matching delete for the placement new.
 

XSParticle methods

TERM_TYPE fTermType
 
XMLSize_t fMinOccurs
 
XMLSize_t fMaxOccurs
 
bool fUnbounded
 
XSObjectfTerm
 
XMLSize_t getMinOccurs () const
 [min occurs]: determines the minimum number of terms that can occur.
 
XMLSize_t getMaxOccurs () const
 [max occurs] determines the maximum number of terms that can occur.
 
bool getMaxOccursUnbounded () const
 [max occurs] whether the maxOccurs value is unbounded.
 
TERM_TYPE getTermType () const
 Returns the type of the [term]: one of TERM_EMPTY, TERM_ELEMENT, TERM_MODELGROUP, or TERM_WILDCARD.
 
XSElementDeclarationgetElementTerm ()
 If this particle has an [element declaration] for its term, this method returns that declaration; otherwise, it returns 0.
 
XSModelGroupgetModelGroupTerm ()
 If this particle has a [model group] for its term, this method returns that definition; otherwise, it returns 0.
 
XSWildcardgetWildcardTerm ()
 If this particle has an [wildcard] for its term, this method returns that declaration; otherwise, it returns 0.
 

Additional Inherited Members

- Protected Member Functions inherited from XMemory
 XMemory ()
 Protected default constructor.
 
- Protected Attributes inherited from XSObject
XSConstants::COMPONENT_TYPE fComponentType
 
XSModelfXSModel
 
MemoryManagerfMemoryManager
 
XMLSize_t fId
 

Member Enumeration Documentation

◆ TERM_TYPE

Enumerator
TERM_EMPTY 
TERM_ELEMENT 
TERM_MODELGROUP 
TERM_WILDCARD 

Constructor & Destructor Documentation

◆ XSParticle()

XSParticle::XSParticle ( TERM_TYPE termType,
XSModel *const xsModel,
XSObject *const particleTerm,
XMLSize_t minOccurs,
XMLSize_t maxOccurs,
bool unbounded,
MemoryManager *const manager )

The default constructor.

Parameters
termType
xsModel
particleTerm
minOccurs
maxOccurs
unbounded
managerThe configurable memory manager

◆ ~XSParticle()

XSParticle::~XSParticle ( )

Member Function Documentation

◆ getElementTerm()

XSElementDeclaration * XSParticle::getElementTerm ( )

If this particle has an [element declaration] for its term, this method returns that declaration; otherwise, it returns 0.

Returns
The element declaration that is the [term] of this Particle if and only if getTermType() == TERM_ELEMENT.

◆ getMaxOccurs()

XMLSize_t XSParticle::getMaxOccurs ( ) const

[max occurs] determines the maximum number of terms that can occur.

To query for value of unbounded use maxOccursUnbounded.

References fMaxOccurs.

◆ getMaxOccursUnbounded()

bool XSParticle::getMaxOccursUnbounded ( ) const

[max occurs] whether the maxOccurs value is unbounded.

References fUnbounded.

◆ getMinOccurs()

XMLSize_t XSParticle::getMinOccurs ( ) const

[min occurs]: determines the minimum number of terms that can occur.

References fMinOccurs.

◆ getModelGroupTerm()

XSModelGroup * XSParticle::getModelGroupTerm ( )

If this particle has a [model group] for its term, this method returns that definition; otherwise, it returns 0.

Returns
The model group that is the [term] of this Particle if and only if getTermType() == TERM_MODELGROUP.

◆ getTermType()

XSParticle::TERM_TYPE XSParticle::getTermType ( ) const

Returns the type of the [term]: one of TERM_EMPTY, TERM_ELEMENT, TERM_MODELGROUP, or TERM_WILDCARD.

References fTermType.

◆ getWildcardTerm()

XSWildcard * XSParticle::getWildcardTerm ( )

If this particle has an [wildcard] for its term, this method returns that declaration; otherwise, it returns 0.

Returns
The wildcard declaration that is the [term] of this Particle if and only if getTermType() == TERM_WILDCARD.

Member Data Documentation

◆ fMaxOccurs

XMLSize_t XSParticle::fMaxOccurs
protected

Referenced by getMaxOccurs().

◆ fMinOccurs

XMLSize_t XSParticle::fMinOccurs
protected

Referenced by getMinOccurs().

◆ fTerm

XSObject* XSParticle::fTerm
protected

◆ fTermType

TERM_TYPE XSParticle::fTermType
protected

Referenced by getTermType().

◆ fUnbounded

bool XSParticle::fUnbounded
protected

Referenced by getMaxOccursUnbounded().


The documentation for this class was generated from the following file: