24 #ifndef _ODRXMEMBER_INCLUDED_
25 #define _ODRXMEMBER_INCLUDED_
37 class OdRxMemberIteratorImpl;
38 class OdRxMemberQueryContextImpl;
39 class OdRxMemberQueryEngineImpl;
41 class OdRxMemberCollectionImpl;
91 static
void deleteMember(const
OdRxMember* pMember) throw();
93 friend class OdRxMemberImpl;
117 OdRxMemberImpl* m_pImpl;
123 class OdRxEnumTagImpl;
193 friend class OdRxMemberCollectionImpl;
196 OdRxMemberCollectionImpl* m_pImpl;
226 friend class OdRxMemberIteratorImpl;
227 OdRxMemberIteratorImpl* m_pImpl;
249 friend class OdRxMemberQueryContextImpl;
344 friend class OdRxMemberQueryEngineImpl;
345 OdRxMemberQueryEngineImpl* m_pImpl;
OdSmartPtr< OdRxMember > OdRxMemberPtr
OdSmartPtr< OdRxFacetProvider > OdRxFacetProviderPtr
OdSharedPtr< OdRxMemberIterator > OdRxMemberIteratorPtr
ODRX_DECLARE_MEMBERS(OdRxEnumTag)
OdRxEnumTag(OdRxMemberImpl *)
static OdRxEnumTagPtr createObject(const OdChar *name, const OdRxValue &value, const OdRxObject *owner)
virtual OdString subAlternateLocalName() const
const OdRxValue & value() const
OdString alternateLocalName() const
const OdRxClass * owner() const
void add(OdRxMember *member)
virtual int count() const =0
virtual ~OdRxMemberCollection()
virtual OdRxMember * getAt(int index) const =0
const OdString & name() const
ODRX_DECLARE_MEMBERS(OdRxMember)
virtual OdRxMember * find(const OdChar *name) const
virtual ~OdRxMemberIterator()
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()
const OdRxPromotingQueryContext * promotingContext() const
void removeFacetProvider(OdRxFacetProvider *pProvider)
void addFacetProvider(OdRxFacetProvider *pProvider)
OdRxMemberIteratorPtr newMemberIterator(const OdRxObject *pO, const OdRxMemberQueryContext *pContext=NULL) const
OdRxMember * find(const OdRxObject *pO, const OdChar *name, const OdRxMemberQueryContext *pContext=NULL) const
void addReactor(OdRxMemberReactor *pReactor)
const OdRxMemberQueryContext * defaultContext() const
void removeReactor(OdRxMemberReactor *pReactor)
static OdRxMemberQueryEngine * theEngine()
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