#pragma once

#include "EdgeGauge.h"

class GAUGE_API CEdgeCollect  :	public CEdgeGauge
{
public:
	CEdgeCollect(void);
	virtual ~CEdgeCollect(void);

	virtual void    Show(CDelegate* pDelegate, int mode,BOOL bForce);	 
	virtual CUCObj* Clone( CUCObj* twin) ;
	virtual BOOL    Serialize(HANDLE device, BOOL bIn );

	virtual BOOL    Create( const TCHAR* strName =NULL, UINT id = -1, int style= RV_UC_DEFAULT_STYLE) ;
	virtual RV_BOOL Inspect(int* pErrCode=NULL) ;

	BOOL        IsValid(){ return m_bValid; };
    int         GetPointCount();

	//the user should not release points returned 
	const RvPoint* GetPointArray();
	RvPoint        GetPointAt( int index);

	virtual void Reset();

public:
	

protected:
	BOOL          m_bValid;
	int           m_nPointCount;
	RvPoint*      m_pPointArray;  
};

