24#ifndef _ODRXMEMBER_INCLUDED_
25#define _ODRXMEMBER_INCLUDED_
38class OdRxMemberIteratorImpl;
39class OdRxMemberQueryContextImpl;
40class OdRxMemberQueryEngineImpl;
42class OdRxMemberCollectionImpl;
140 friend class OdRxMemberImpl;
176 OdRxMemberImpl* m_pImpl;
189class OdRxEnumTagImpl;
294 friend class OdRxMemberCollectionImpl;
297 OdRxMemberCollectionImpl* m_pImpl;
358 friend class OdRxMemberIteratorImpl;
359 OdRxMemberIteratorImpl* m_pImpl;
406 friend class OdRxMemberQueryContextImpl;
558 friend class OdRxMemberQueryEngineImpl;
559 OdRxMemberQueryEngineImpl* m_pImpl;
OdSmartPtr< OdRxMember > OdRxMemberPtr
OdSmartPtr< OdRxFacetProvider > OdRxFacetProviderPtr
OdSharedPtr< OdRxMemberIterator > OdRxMemberIteratorPtr
ODRX_DECLARE_MEMBERS(OdRxEnumTag)
const OdRxValue & value() const
OdRxEnumTag(OdRxMemberImpl *)
static OdRxEnumTagPtr createObject(const OdChar *name, const OdRxValue &value, const OdRxObject *owner)
virtual OdString subAlternateLocalName() const
OdString alternateLocalName() const
void add(OdRxMember *member)
const OdRxClass * owner() const
virtual int count() const =0
virtual ~OdRxMemberCollection()
virtual OdRxMember * getAt(int index) const =0
const OdString & name() const
ODRX_DECLARE_MEMBERS(OdRxMember)
virtual OdUInt64 size() const
virtual ~OdRxMemberIterator()
virtual OdRxMemberPtr find(const OdChar *name) const
virtual OdRxMember * current() const
ODRX_DECLARE_MEMBERS(OdRxMemberOverrule)
static OdResult addOverrule(OdRxMember *pOverruledSubject, OdRxMemberOverrule *pOverrule, bool bAddAtLast=false)
static OdResult removeOverrule(OdRxMember *pOverruledSubject, OdRxMemberOverrule *pOverrule)
OdRxMemberIteratorPtr newMemberIterator(const OdArray< OdRxClassPtr > &facets) const
virtual OdRxMemberIteratorPtr subNewMemberIterator(const OdArray< OdRxClassPtr > &facets) const =0
ODRX_DECLARE_MEMBERS(OdRxMemberQueryContext)
OdRxMemberQueryContextImpl * m_pImpl
virtual ~OdRxMemberQueryContext()
virtual OdRxMemberPtr find(const OdArray< OdRxClassPtr > &facets, const OdChar *name) const
static OdRxMemberQueryEngine * theEngine()
const OdRxMemberQueryContext * defaultContext() const
const OdRxPromotingQueryContext * promotingContext() const
OdRxMemberPtr find(const OdRxObject *pO, const OdChar *name, const OdRxMemberQueryContext *pContext=NULL, bool bQueryFacets=true) const
void removeFacetProvider(OdRxFacetProvider *pProvider)
void addFacetProvider(OdRxFacetProvider *pProvider)
OdRxMemberIteratorPtr newMemberIterator(const OdRxObject *pO, const OdRxMemberQueryContext *pContext=NULL) const
void addReactor(OdRxMemberReactor *pReactor)
void removeReactor(OdRxMemberReactor *pReactor)
virtual void goodbye(const OdRxMember *)
virtual ~OdRxMemberReactor()
GLuint const GLchar * name
GLuint GLsizei GLsizei GLint GLenum * type
GLsizei const GLfloat * value
ODRX_DECLARE_MEMBERS(OdRxFacetProvider)
virtual void getFacets(const OdRxObject *pO, const OdRxMemberQueryContext *pContext, OdArray< OdRxClassPtr > &facets)=0