77 lines
2.3 KiB
C++
77 lines
2.3 KiB
C++
/*
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Description : CurObj.hpp
|
|
//
|
|
// Definition of the cursor object
|
|
//
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// inherit from : CPA_Object
|
|
// CPA_EdMot<ACP_tdxHandleOfLink>
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Creation date: 5 mar 1997 Author: J Thénoz
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Modification date: Author:
|
|
//
|
|
//
|
|
//
|
|
//
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
*/
|
|
|
|
|
|
#ifndef __CursorOBJECT_HPP__
|
|
#define __CursorOBJECT_HPP__
|
|
|
|
// #include "itf.h"
|
|
//#include "gli.h"
|
|
// #include "cpalib.h"
|
|
|
|
// FBFFBF attention, include interdit !!!, privé, moteur
|
|
// #include "geoobj.h"
|
|
// fin FBF
|
|
|
|
|
|
class Light_Interface;
|
|
class Light;
|
|
|
|
//----------- engine structure
|
|
typedef struct {} tdstCursor;
|
|
typedef tdstCursor* ACP_tdxHandleOfCursor;
|
|
//-----------
|
|
|
|
class Cursor : public CPA_Object, public CPA_EdMot<ACP_tdxHandleOfCursor>
|
|
{
|
|
protected:
|
|
MTH3D_tdstVector m_stVertex; // local Vertex of the cursor in the m_poParent axis
|
|
GLI_tdxValue m_xDim; // dim of the cursor
|
|
CPA_SuperObject* m_poParent; // parent object = physical parent : just for axis to store vertex
|
|
|
|
public:
|
|
// static
|
|
static void fn_vInitObject (void);
|
|
|
|
Cursor (CPA_MainWorld *p_oMainWorld, CPA_ObjectDLLBase *p_oDLL, CPA_ReachableObject *poOwner );
|
|
void *GetEngineStruct (void) { return NULL; }
|
|
Light_Interface* GetInterface (void);
|
|
|
|
Light* fn_pGetParentLight (void) { return (Light*)(m_poParent->GetObject()); }
|
|
|
|
//set
|
|
void fn_vSetAbsoluteVertex ( MTH3D_tdstVector* pAbsoluteVertex );
|
|
void fn_vSetLocalVertex ( MTH3D_tdstVector* pLocalVertex ) { m_stVertex = *pLocalVertex; }
|
|
|
|
//get
|
|
void fn_vGetAbsoluteVertex ( MTH3D_tdstVector* pAbsoluteVertex );
|
|
void fn_vGetLocalVertex ( MTH3D_tdstVector* pLocalVertex ) { *pLocalVertex = m_stVertex; }
|
|
|
|
// moves
|
|
void fn_vStartMove ( MTH3D_tdstVector* pstStartVertex );
|
|
void fn_vMove ( MTH3D_tdstVector* pstTranslation );
|
|
|
|
// draw
|
|
void fn_vDraw (void);
|
|
};
|
|
|
|
|
|
#endif //__OBJECT_HPP__
|