00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef CYBDRAGSENSOR_HC
00029 #define CYBDRAGSENSOR_HC
00030
00031 #include "oaw/ctk/cybnodec.h"
00032 #include "../oawconfig.h"
00033
00034 OAW_BEGIN_NAMESPACE
00035
00036
00037 class CybIsectLineChannelC;
00038
00039
00040 #define CYBFN_DRAGSENSOR_STARTDRAG 100
00041 #define CYBFN_DRAGSENSOR_DODRAG 101
00042 #define CYBFN_DRAGSENSOR_ENDDRAG 102
00043
00044 class OAW_DLLMAPPING CybDragSensorC : public CybNodeC
00045 {
00046 public:
00047 CybDragSensorC(CybWorldC*);
00048 CybDragSensorC(const CybDragSensorC&);
00049 CybDragSensorC& operator = (const CybDragSensorC&);
00050 virtual void CreateNewCopy(CybNodeC* pNode);
00051 virtual ~CybDragSensorC();
00052
00053 virtual void SetEvent(long srct, const void *pData, BaseI* pSrc);
00054 virtual long GetFieldDataType(long fieldID);
00055 virtual long GetFieldEventID(const char* pStr);
00056
00057 virtual void StartDrag(Vector3C vLineStart, Vector3C vLineEnd, Vector3C vIntersect) {}
00058 virtual void DoDrag(Vector3C vLineStart, Vector3C vLineEnd) {}
00059 virtual void EndDrag() {}
00060
00061 protected:
00062 short m_bIsActive;
00063 Matrix4C m_localM;
00064 };
00065
00066 OAW_END_NAMESPACE
00067
00068
00069 #endif