// ShapeActivityGraph.h: interface for the ShapeActivityGraph class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SHAPEACTIVITYGRAPH_H__D080A735_9C27_4B8D_B672_B336213E6676__INCLUDED_)
#define AFX_SHAPEACTIVITYGRAPH_H__D080A735_9C27_4B8D_B672_B336213E6676__INCLUDED_

#include "ShapeElement.h"	// Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

typedef CPtrTempl<ShapeControlFlow*> ShapeControlFlowPointerList;

class ShapeActivityGraph : public ShapeElement  
{
public:
	void Draw( CDC *pDC );
	ShapeActivityGraph();
	virtual ~ShapeActivityGraph();
public:
	void Save( CFile &file , int &tabnum );
	ShapeActivity* FindShapeActivity(UMLActivity *p );
	ShapeNamespace* GetShapeNamespace();
	ShapeType GetType();
	CPtrTempl<ShapeSwimlane*>m_pShapeSwimlanes;
	CPtrTempl<ShapeActivity*>m_pShapeActivities;
	CPtrTempl<ShapeTransEdge*>m_pShapeTransEdges;
	UMLActivityGraph *m_pActivityGraph;

	ShapeClass *m_pShapeClass;
	ShapeControlFlowPointerList m_pShapeControlFlows;
};

#endif // !defined(AFX_SHAPEACTIVITYGRAPH_H__D080A735_9C27_4B8D_B672_B336213E6676__INCLUDED_)
