// Constants and defines for the definition of ths list of MS
///////////////////////////////////////////////////////////////
#ifndef _EDITDEF_HPP_
#define _EDITDEF_HPP_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

//Include here the header where is defined the motor actor structure
#include "ACP_Base.h"
#include "IncITF.h"
#include "IncMEC.h"
#define D_State_Define
#include "IncGAM.h"
#undef D_State_Define
#include "IncGLI.h"
#include "PRT.h"

#include "CTL.h"

#undef extern
////////////////////////////////////////////////

//Eventually add here the other motor useful headers
//...

//define here the name of the actor's structure
#define CAR_EDIT_TDSTACTOR	tdstEngineObject

class EdActors_EditorActor;
class EdActors_ActorMiniStructure;

//Declare here the filling functions for the MS you have created
void fn_vFillMS1(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS2(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS3(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS5(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS6(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS7(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS8(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS9(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS10(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS11(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS12(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS13(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS14(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS15(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS16(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
void fn_vFillMS17(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
//ANNECY BBB 17/10/97 {
void fn_vFillMS18(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
//ENDANNECY BBB 17/10/97 }
// CHINA QZY (MT) 26/02/98 {
void fn_vFillMS19(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
// ENDCHINA QZY }
// Shaitan FastC {
void fn_vFillMS20(EdActors_EditorActor *, EdActors_ActorMiniStructure *);
//End Shaitan FastC }

//*********************************************************************
//Other defines to simplify MS and pointers definitions
#define READ_ONLY			TRUE
#define READ_WRITE		FALSE

//Controls Spacing
#define AUTO_SPACE		CTL_SPACING_TYPE__AUTO
#define SINGLE_LINE		CTL_SPACING_TYPE__SINGLE_LINE
#define FIXED_SIZE		CTL_SPACING_TYPE__FIXED_SIZE

//Constants for integers declarations
#define SIGNED_INT		TRUE
#define UNSIGNED_INT	FALSE

#define CHAR_INT	1
#define SHORT_INT	2
#define LONG_INT	4

//Constants for decimal declarations
#define FLOAT				4
//#define DOUBLE			8
//#define LONG_DOUBLE	10

//Constants for data level declarations
#define LEVEL_1		OAC_DATA_LEVEL_1	
#define LEVEL_2		OAC_DATA_LEVEL_2
#define LEVEL_3		OAC_DATA_LEVEL_3

//Constants for data Visibility declarations
#define EDAC_ONLY_INSTANCES		EDCAR_DATA_VISI_ONLY_INSTANCES	
#define EDAC_ONLY_MODELS			EDCAR_DATA_VISI_ONLY_MODELS
#define EDAC_DUAL							EDCAR_DATA_VISI_DUAL

//Constant for Angles
#define EDAC_PI		3.14159265359

#endif //_EDITDEF_HPP_
