#pragma once
class MxTouch;
class MXDRAWDLL MxMessage {
public:
	MxMessage(MxTouch* pTouch);

	McGePoint3d getPoint() const;
	McGePoint3d getPointInView() const;
	McGePoint3d getPrePoint() const;
	McGePoint3d getPrePointInView() const;

	MxTouch* m_pTouch;
};

class MxTouchSet;
class MxEvent;
class MXDRAWDLL MxMessages {
public:
	MxMessages(MxTouchSet* pTouchs, MxEvent*     pEvent);
	~MxMessages();

	bool getPoint(McGePoint3d& pt);
	bool getPrePoint(McGePoint3d& pt);

	bool getPointInView(McGePoint3d& pt);
	bool getPrePointInView(McGePoint3d& pt);

	int   mouseButton();
	int   mouseAction();

	const std::vector<MxMessage*>& getMessage();
public:
	MxTouchSet* m_pTouchs;
	MxEvent*      m_pEvent;
private:
	std::vector<MxMessage*>* m_pVecMessage;
};

