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