#pragma once
//:Ignore

#define acdbHostApplicationServices Mx::mcdbHostApplicationServices
#define acutPrintf					Mx::mcutPrintf
#define acedRegCmds                 Mx::mcedRegCmds()
#define acedEntSel					Mx::mcedEntSel
#define acdbGetObjectId				Mx::mcdbGetObjectId
#define acdbRegApp					Mx::mcdbRegApp
#define acutBuildList				Mx::mcutBuildList
#define acutRelRb					Mx::mcutRelRb
#define acutNewRb                   Mx::mcutNewRb

#define acedUpdateDisplay			Mx::mcedUpdateDisplay
#define acDocManager				Mx::mcDocManager()

#define acutNewBuffer				Mx::mcutNewBuffer
#define acutDelString				Mx::mcutDelString
#define acutNewString				Mx::mcutNewString


#define acedSetStatusBarProgressMeter	 Mx::mcedSetStatusBarProgressMeter
#define acedSetStatusBarProgressMeterPos Mx::mcedSetStatusBarProgressMeterPos
#define acedRestoreStatusBar			 Mx::mcedRestoreStatusBar

#define acdbGetAdsName       Mx::mcdbGetAdsName

#define acedSSGet			 Mx::mcedSSGet
#define acedSSLength		 Mx::mcedSSLength
#define acedSSFree			 Mx::mcedSSFree
#define acedSSName			 Mx::mcedSSName
#define acedSSAdd			 Mx::mcedSSAdd
#define acedSSDel			 Mx::mcedSSDel
#define  acedSSSetKwordCallbackPtr Mx::mcedSSSetKwordCallbackPtr

#define acedGetPoint         Mx::mcedGetPoint
#define ads_getpoint		 Mx::mcedGetPoint

#define acedGetDist          Mx::mcedGetDist
#define ads_getdist			 Mx::mcedGetDist

#define acedGetAngle         Mx::mcedGetAngle
#define ads_getangle		 Mx::mcedGetAngle



#define acedGetKword         Mx::mcedGetKword
#define ads_getkword		 Mx::mcedGetKword

#define acedGetString        Mx::mcedGetString
#define ads_getstring		 Mx::mcedGetString

#define acedGetInt			Mx::mcedGetInt
#define ads_getint			Mx::mcedGetInt

#define acedGetReal			Mx::mcedGetReal
#define ads_getreal			Mx::mcedGetReal


#define acdbRToS			Mx::mcdbRToS
#define ads_rtos			Mx::mcdbRToS

#define acdbAngToS			Mx::mcdbAngToS
#define ads_angtos			Mx::mcdbAngToS



#define  acedGetCorner        Mx::mcedGetCorner
#define  ads_getcorner        Mx::mcedGetCorner

#define  acedInitGet          Mx::mcedInitGet
#define  ads_initget          Mx::mcedInitGet

#define  acedGetInput          Mx::mcedGetInput
#define  ads_getinput          Mx::mcedGetInput


#define acedGetVar				Mx::mcedGetVar
#define acedSetVar				Mx::mcedSetVar

#define acdbOpenObject          Mx::mcdbOpenObject

#define acedGetAcadDwgView		Mx::mcedGetAcadDwgView

#define acedTextBox				Mx::mcedTextBox

#define acutPolar				Mx::mcutPolar

#define acutAngle               Mx::mcutAngle

#define acutDistance            Mx::mcutDistance

#define acutWcMatchEx           Mx::mcutWcMatchEx

#define acedEditor              Mx::mcedEditor

typedef double acedDwgPoint[3];
#define acedCoordFromPixelToWorld Mx::mcedCoordFromPixelToWorld

#define AcDbObjectPointer           McDbObjectPointer
#define ACDB_MODEL_SPACE            MCDB_MODEL_SPACE


//
#define ads_point_set               mds_point_set
#define ads_entsel                  Mx::mcedEntSel
#define ads_polar                   Mx::mcutPolar
#define ads_ssget                   Mx::mcedSSGet
#define	ads_sslength	            Mx::mcedSSLength
#define	ads_ssname					Mx::mcedSSName
#define	ads_ssfree					Mx::mcedSSFree
#define	ads_ssadd					Mx::mcedSSAdd
#define	ads_ssdel					Mx::mcedSSDel

#define ads_getvar                  Mx::mcedGetVar
#define ads_setvar                  Mx::mcedSetVar

#define acdbEntLast                 Mx::mcdbEntityLast

#define InitAcUiDLL					Mx::InitMcUiDLL

#define acdbUcsMatrix               Mx::mcdbUcsMatrix

//
#define ACRX_DXF_DEFINE_MEMBERS        MCRX_CUSTOM_DEFINE_MEMBERS

#define ACRX_NO_CONS_DEFINE_MEMBERS    MCRX_CUSTOM_NO_CONS_DEFINE_MEMBERS

#define ACRX_CONS_DEFINE_MEMBERS       MCRX_CUSTOM_CONS_DEFINE_MEMBERS

#define ACRX_DECLARE_MEMBERS           MCDB_DECLARE_MEMBERS

#define ACDB_DECLARE_MEMBERS           MCDB_DECLARE_MEMBERS           

// 
#define ACDB_NO_CONS_DEFINE_MEMBERS	   ACRX_NO_CONS_DEFINE_MEMBERS

#define ACDB_CONS_DEFINE_MEMBERS	   ACRX_CONS_DEFINE_MEMBERS

#define ACDB_DXF_DEFINE_MEMBERS		   ACRX_DXF_DEFINE_MEMBERS


#define AC_DECLARE_EXTENSION_MODULE     MC_DECLARE_EXTENSION_MODULE

#define AC_IMPLEMENT_EXTENSION_MODULE   MC_IMPLEMENT_EXTENSION_MODULE

typedef wchar_t ACHAR;

#define _ACRX_T(x)      L ## x
#define ACRX_T(x)      _ACRX_T(x)

#define AcArray			McArray

// typedef McDbSymbolTablePointer<McDbLayerTable> AcDbLayerTablePointer;
// typedef McDbSymbolTableRecordPointer<McDbLayerTableRecord> AcDbLayerTableRecordPointer;
// 
// 
// typedef mds_name					ads_name;
// typedef mds_point					ads_point;
// typedef mds_real                    ads_real;
// 
// 
// typedef Mcad						Acad;
// typedef Mdesk                       Adesk;
// /*typedef McRx                        AcRx;*/
// 
// typedef McDbObject                  AcDbObject;
// typedef McDbCurve					AcDbCurve;
// typedef McDbLine					AcDbLine;
// typedef McDbCircle					AcDbCircle;
// typedef McDbArc						AcDbArc;
// typedef McDbPolyline				AcDbPolyline;
// typedef McDbBlockTable				AcDbBlockTable;
// typedef McDbBlockReference			AcDbBlockReference;
// typedef McDbBlockTableRecord		AcDbBlockTableRecord;
// typedef McDbLinetypeTableRecord     AcDbLinetypeTableRecord;
// typedef McDbTextStyleTableRecord    AcDbTextStyleTableRecord;
// typedef McDbSpline                  AcDbSpline;
// typedef McDbDimension               AcDbDimension;
// typedef McDbAlignedDimension        AcDbAlignedDimension;
// typedef McDbRotatedDimension        AcDbRotatedDimension;
// 
// typedef McDbText					AcDbText;
// typedef McDbMText                   AcDbMText;
// typedef McDbEllipse					AcDbEllipse;
// typedef McDbHatch					AcDbHatch;
// typedef McDbTrace                   AcDbTrace;
// typedef McDb                        AcDb;
// typedef McDbDatabase				AcDbDatabase;
// typedef	McDbObjectId				AcDbObjectId;
// /*typedef McEdJig                     AcEdJig;*/
// typedef McDbEntity                  AcDbEntity;
// typedef McGiWorldDraw               AcGiWorldDraw;
// typedef McDbObjectIterator          AcDbObjectIterator;
// typedef McDbAttribute               AcDbAttribute;
// 
// typedef McDbDictionary              AcDbDictionary;
// typedef McDbDictionaryIterator      AcDbDictionaryIterator;
// typedef McDbXrecord					AcDbXrecord;
// typedef McDbHandle					AcDbHandle;
// typedef McDbAttributeDefinition     AcDbAttributeDefinition;
// /*typedef McDbXline                   AcDbXline;*/
// 
// typedef McRxObject                  AcRxObject;
// typedef McRxClass                   AcRxClass;
//      
// 
// 
// typedef	McDbBlockTablePointer			AcDbBlockTablePointer;
// typedef McDbLinetypeTableRecordPointer	AcDbLinetypeTableRecordPointer;
// typedef McDbLinetypeTablePointer		AcDbLinetypeTablePointer;
// typedef McDbBlockTableRecordPointer     AcDbBlockTableRecordPointer;
// typedef McDbBlockTableRecordIterator    AcDbBlockTableRecordIterator;
// typedef McDbBlockTableIterator			AcDbBlockTableIterator;
// 
// typedef McDbTextStyleTablePointer       AcDbTextStyleTablePointer;
// typedef McDbTextStyleTableRecordPointer AcDbTextStyleTableRecordPointer;
// typedef McDbTextStyleTableIterator      AcDbTextStyleTableIterator;
// typedef McDbExtents						AcDbExtents;
// typedef McDbIdPair						AcDbIdPair;
// /*typedef McDbIdMappingIter				AcDbIdMappingIter;*/
// typedef McDbIdMapping					AcDbIdMapping;
// typedef McDbDwgFiler                    AcDbDwgFiler;
// typedef McDbIntArray                    AcDbIntArray;
// typedef McApDocument                    AcApDocument;
// 
// 
// 
// typedef McGePoint3d					AcGePoint3d;
// typedef McGeScale3d					AcGeScale3d;
// typedef McGeVector3d				AcGeVector3d;
// typedef McGePoint2dArray			AcGePoint2dArray;
// typedef McGeDoubleArray				AcGeDoubleArray;
// typedef McGePoint2d					AcGePoint2d;
// typedef McGePlane                   AcGePlane;
// typedef McGePoint3dArray	        AcGePoint3dArray;
// typedef McGeMatrix3d                AcGeMatrix3d;
// typedef McGeContext					AcGeContext;
// typedef McGeCircArc2d               AcGeCircArc2d;
// typedef McGeTol                     AcGeTol;   
// typedef McGeLine3d                  AcGeLine3d;
// 
// typedef McDbLayerTableRecord		AcDbLayerTableRecord;
// typedef McDbLayerTableIterator		AcDbLayerTableIterator;
// typedef McDbLayerTable				AcDbLayerTable;
// 
// typedef McGeDoubleArray				AcGeDoubleArray;
// typedef McGeIntArray				AcGeIntArray;
// typedef McGeVoidPointerArray		AcGeVoidPointerArray;
// typedef McDbObjectIdArray           AcDbObjectIdArray;
// typedef McDbVoidPtrArray			AcDbVoidPtrArray;
// typedef McDbProxyEntity             AcDbProxyEntity;

/*typedef MrxDbgSelSet                ArxDbgSelSet;*/

//typedef MrxDbgUtils                 ArxDbgUtils;

//typedef MrxDbgRbList                ArxDbgRbList;

// typedef CMdUiDialog                 CAdUiDialog;
// 
// typedef CMdUiDialog					CAcUiDialog;
// 
// typedef McDbDxfFiler                AcDbDxfFiler;
// 
// typedef McGiContext                 AcGiContext;

#define acdbCurDwg Mx::mcdbHostApplicationServices()->workingDatabase


//:End Ignore
