#pragma once #ifndef AbstractVisitor_h__ #define AbstractVisitor_h__ namespace NChart { class CAxisProxy; class CLineAxis; class CCategoryAxis; class CChartObjectProxy; class CPieChart; class CHistogramChart; class CScatterChart; class CRadarChart; class CLineChart; class CDrawingObject; class CWellDataGraphObj; class CPercentAxis; class CLogAxis; class CLegendObject; class CChartConcrete; class CStackedAreaChart; class AFX_EXT_CLASS CChartAbstractVisitor { public: CChartAbstractVisitor(void); virtual ~CChartAbstractVisitor(void); // virtual void Visit(CDrawingObject * pObject)=0; virtual void Visit(CLineAxis * pObject)=0; virtual void Visit(CAxisProxy * pObject)=0; virtual void Visit(CCategoryAxis * pObject)=0; virtual void Visit(CLogAxis *)=0; virtual void Visit(CPercentAxis *)=0; virtual void Visit (CChartConcrete * pObject)=0; //Ö÷ͼ virtual void Visit(CChartObjectProxy * pObject)=0; virtual void Visit(CPieChart * pObject)=0; virtual void Visit(CHistogramChart * pObject)=0; virtual void Visit(CScatterChart * pObject)=0; virtual void Visit(CRadarChart * pObject)=0; virtual void Visit(CLineChart * pObject)=0; virtual void Visit(CStackedAreaChart *pObject)=0; //ͼÀý virtual void Visit(CLegendObject * pObject)=0; virtual void Visit(CWellDataGraphObj * pObject)=0; }; }//namespace using namespace NChart; #endif // AbstractVisitor_h__