/*
   (C) Copyright 1999-2009 by Autodesk, Inc. 
  
   Permission to use, copy, modify, and distribute this software in
   object code form for any purpose and without fee is hereby granted, 
   provided that the above copyright notice appears in all copies and 
   that both that copyright notice and the limited warranty and
   restricted rights notice below appear in all supporting 
   documentation.
  
   AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS. 
   AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE.  AUTODESK, INC. 
   DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
   UNINTERRUPTED OR ERROR FREE.
  
   Use, duplication, or disclosure by the U.S. Government is subject to 
   restrictions set forth in FAR 52.227-19 (Commercial Computer
   Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
   (Rights in Technical Data and Computer Software), as applicable.
  
  
*/


/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 7.00.0500 */
/* at Sun Feb 08 22:49:29 2009
 */
/* Compiler settings for U:\develop\global\src\coreacad\TYPELIB\idlsource\axauto.idl:
    Oicf, W1, Zp8, env=Win64 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__


#ifndef ___axdb_h__
#define ___axdb_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IAcadObject_FWD_DEFINED__
#define __IAcadObject_FWD_DEFINED__
typedef interface IAcadObject IAcadObject;
#endif 	/* __IAcadObject_FWD_DEFINED__ */


#ifndef __IAcadDictionary_FWD_DEFINED__
#define __IAcadDictionary_FWD_DEFINED__
typedef interface IAcadDictionary IAcadDictionary;
#endif 	/* __IAcadDictionary_FWD_DEFINED__ */


#ifndef __IAcadEntity_FWD_DEFINED__
#define __IAcadEntity_FWD_DEFINED__
typedef interface IAcadEntity IAcadEntity;
#endif 	/* __IAcadEntity_FWD_DEFINED__ */


#ifndef __IAcadBlock_FWD_DEFINED__
#define __IAcadBlock_FWD_DEFINED__
typedef interface IAcadBlock IAcadBlock;
#endif 	/* __IAcadBlock_FWD_DEFINED__ */


#ifndef __IAcadDatabase_FWD_DEFINED__
#define __IAcadDatabase_FWD_DEFINED__
typedef interface IAcadDatabase IAcadDatabase;
#endif 	/* __IAcadDatabase_FWD_DEFINED__ */


#ifndef __IAcadSectionTypeSettings_FWD_DEFINED__
#define __IAcadSectionTypeSettings_FWD_DEFINED__
typedef interface IAcadSectionTypeSettings IAcadSectionTypeSettings;
#endif 	/* __IAcadSectionTypeSettings_FWD_DEFINED__ */


#ifndef __IAcadSectionTypeSettings2_FWD_DEFINED__
#define __IAcadSectionTypeSettings2_FWD_DEFINED__
typedef interface IAcadSectionTypeSettings2 IAcadSectionTypeSettings2;
#endif 	/* __IAcadSectionTypeSettings2_FWD_DEFINED__ */


#ifndef __IAcadHyperlink_FWD_DEFINED__
#define __IAcadHyperlink_FWD_DEFINED__
typedef interface IAcadHyperlink IAcadHyperlink;
#endif 	/* __IAcadHyperlink_FWD_DEFINED__ */


#ifndef __AcadHyperlink_FWD_DEFINED__
#define __AcadHyperlink_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadHyperlink AcadHyperlink;
#else
typedef struct AcadHyperlink AcadHyperlink;
#endif /* __cplusplus */

#endif 	/* __AcadHyperlink_FWD_DEFINED__ */


#ifndef __IAcadDynamicBlockReferenceProperty_FWD_DEFINED__
#define __IAcadDynamicBlockReferenceProperty_FWD_DEFINED__
typedef interface IAcadDynamicBlockReferenceProperty IAcadDynamicBlockReferenceProperty;
#endif 	/* __IAcadDynamicBlockReferenceProperty_FWD_DEFINED__ */


#ifndef __AcadDynamicBlockReferenceProperty_FWD_DEFINED__
#define __AcadDynamicBlockReferenceProperty_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDynamicBlockReferenceProperty AcadDynamicBlockReferenceProperty;
#else
typedef struct AcadDynamicBlockReferenceProperty AcadDynamicBlockReferenceProperty;
#endif /* __cplusplus */

#endif 	/* __AcadDynamicBlockReferenceProperty_FWD_DEFINED__ */


#ifndef __IAcadAcCmColor_FWD_DEFINED__
#define __IAcadAcCmColor_FWD_DEFINED__
typedef interface IAcadAcCmColor IAcadAcCmColor;
#endif 	/* __IAcadAcCmColor_FWD_DEFINED__ */


#ifndef __AcadAcCmColor_FWD_DEFINED__
#define __AcadAcCmColor_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadAcCmColor AcadAcCmColor;
#else
typedef struct AcadAcCmColor AcadAcCmColor;
#endif /* __cplusplus */

#endif 	/* __AcadAcCmColor_FWD_DEFINED__ */


#ifndef __IAcadObjectEvents_FWD_DEFINED__
#define __IAcadObjectEvents_FWD_DEFINED__
typedef interface IAcadObjectEvents IAcadObjectEvents;
#endif 	/* __IAcadObjectEvents_FWD_DEFINED__ */


#ifndef __AcadObject_FWD_DEFINED__
#define __AcadObject_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadObject AcadObject;
#else
typedef struct AcadObject AcadObject;
#endif /* __cplusplus */

#endif 	/* __AcadObject_FWD_DEFINED__ */


#ifndef __IAcadXRecord_FWD_DEFINED__
#define __IAcadXRecord_FWD_DEFINED__
typedef interface IAcadXRecord IAcadXRecord;
#endif 	/* __IAcadXRecord_FWD_DEFINED__ */


#ifndef __AcadXRecord_FWD_DEFINED__
#define __AcadXRecord_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadXRecord AcadXRecord;
#else
typedef struct AcadXRecord AcadXRecord;
#endif /* __cplusplus */

#endif 	/* __AcadXRecord_FWD_DEFINED__ */


#ifndef __IAcadSortentsTable_FWD_DEFINED__
#define __IAcadSortentsTable_FWD_DEFINED__
typedef interface IAcadSortentsTable IAcadSortentsTable;
#endif 	/* __IAcadSortentsTable_FWD_DEFINED__ */


#ifndef __AcadSortentsTable_FWD_DEFINED__
#define __AcadSortentsTable_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSortentsTable AcadSortentsTable;
#else
typedef struct AcadSortentsTable AcadSortentsTable;
#endif /* __cplusplus */

#endif 	/* __AcadSortentsTable_FWD_DEFINED__ */


#ifndef __IAcadDimStyle_FWD_DEFINED__
#define __IAcadDimStyle_FWD_DEFINED__
typedef interface IAcadDimStyle IAcadDimStyle;
#endif 	/* __IAcadDimStyle_FWD_DEFINED__ */


#ifndef __AcadDimStyle_FWD_DEFINED__
#define __AcadDimStyle_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimStyle AcadDimStyle;
#else
typedef struct AcadDimStyle AcadDimStyle;
#endif /* __cplusplus */

#endif 	/* __AcadDimStyle_FWD_DEFINED__ */


#ifndef __IAcadLayer_FWD_DEFINED__
#define __IAcadLayer_FWD_DEFINED__
typedef interface IAcadLayer IAcadLayer;
#endif 	/* __IAcadLayer_FWD_DEFINED__ */


#ifndef __AcadLayer_FWD_DEFINED__
#define __AcadLayer_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLayer AcadLayer;
#else
typedef struct AcadLayer AcadLayer;
#endif /* __cplusplus */

#endif 	/* __AcadLayer_FWD_DEFINED__ */


#ifndef __IAcadLineType_FWD_DEFINED__
#define __IAcadLineType_FWD_DEFINED__
typedef interface IAcadLineType IAcadLineType;
#endif 	/* __IAcadLineType_FWD_DEFINED__ */


#ifndef __AcadLineType_FWD_DEFINED__
#define __AcadLineType_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLineType AcadLineType;
#else
typedef struct AcadLineType AcadLineType;
#endif /* __cplusplus */

#endif 	/* __AcadLineType_FWD_DEFINED__ */


#ifndef __IAcadMaterial_FWD_DEFINED__
#define __IAcadMaterial_FWD_DEFINED__
typedef interface IAcadMaterial IAcadMaterial;
#endif 	/* __IAcadMaterial_FWD_DEFINED__ */


#ifndef __AcadMaterial_FWD_DEFINED__
#define __AcadMaterial_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMaterial AcadMaterial;
#else
typedef struct AcadMaterial AcadMaterial;
#endif /* __cplusplus */

#endif 	/* __AcadMaterial_FWD_DEFINED__ */


#ifndef __IAcadRegisteredApplication_FWD_DEFINED__
#define __IAcadRegisteredApplication_FWD_DEFINED__
typedef interface IAcadRegisteredApplication IAcadRegisteredApplication;
#endif 	/* __IAcadRegisteredApplication_FWD_DEFINED__ */


#ifndef __AcadRegisteredApplication_FWD_DEFINED__
#define __AcadRegisteredApplication_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadRegisteredApplication AcadRegisteredApplication;
#else
typedef struct AcadRegisteredApplication AcadRegisteredApplication;
#endif /* __cplusplus */

#endif 	/* __AcadRegisteredApplication_FWD_DEFINED__ */


#ifndef __IAcadTextStyle_FWD_DEFINED__
#define __IAcadTextStyle_FWD_DEFINED__
typedef interface IAcadTextStyle IAcadTextStyle;
#endif 	/* __IAcadTextStyle_FWD_DEFINED__ */


#ifndef __AcadTextStyle_FWD_DEFINED__
#define __AcadTextStyle_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadTextStyle AcadTextStyle;
#else
typedef struct AcadTextStyle AcadTextStyle;
#endif /* __cplusplus */

#endif 	/* __AcadTextStyle_FWD_DEFINED__ */


#ifndef __IAcadUCS_FWD_DEFINED__
#define __IAcadUCS_FWD_DEFINED__
typedef interface IAcadUCS IAcadUCS;
#endif 	/* __IAcadUCS_FWD_DEFINED__ */


#ifndef __AcadUCS_FWD_DEFINED__
#define __AcadUCS_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadUCS AcadUCS;
#else
typedef struct AcadUCS AcadUCS;
#endif /* __cplusplus */

#endif 	/* __AcadUCS_FWD_DEFINED__ */


#ifndef __IAcadView_FWD_DEFINED__
#define __IAcadView_FWD_DEFINED__
typedef interface IAcadView IAcadView;
#endif 	/* __IAcadView_FWD_DEFINED__ */


#ifndef __AcadView_FWD_DEFINED__
#define __AcadView_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadView AcadView;
#else
typedef struct AcadView AcadView;
#endif /* __cplusplus */

#endif 	/* __AcadView_FWD_DEFINED__ */


#ifndef __IAcadViewport_FWD_DEFINED__
#define __IAcadViewport_FWD_DEFINED__
typedef interface IAcadViewport IAcadViewport;
#endif 	/* __IAcadViewport_FWD_DEFINED__ */


#ifndef __AcadViewport_FWD_DEFINED__
#define __AcadViewport_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadViewport AcadViewport;
#else
typedef struct AcadViewport AcadViewport;
#endif /* __cplusplus */

#endif 	/* __AcadViewport_FWD_DEFINED__ */


#ifndef __IAcadGroup_FWD_DEFINED__
#define __IAcadGroup_FWD_DEFINED__
typedef interface IAcadGroup IAcadGroup;
#endif 	/* __IAcadGroup_FWD_DEFINED__ */


#ifndef __AcadGroup_FWD_DEFINED__
#define __AcadGroup_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadGroup AcadGroup;
#else
typedef struct AcadGroup AcadGroup;
#endif /* __cplusplus */

#endif 	/* __AcadGroup_FWD_DEFINED__ */


#ifndef __IAcadPlotConfiguration_FWD_DEFINED__
#define __IAcadPlotConfiguration_FWD_DEFINED__
typedef interface IAcadPlotConfiguration IAcadPlotConfiguration;
#endif 	/* __IAcadPlotConfiguration_FWD_DEFINED__ */


#ifndef __AcadPlotConfiguration_FWD_DEFINED__
#define __AcadPlotConfiguration_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPlotConfiguration AcadPlotConfiguration;
#else
typedef struct AcadPlotConfiguration AcadPlotConfiguration;
#endif /* __cplusplus */

#endif 	/* __AcadPlotConfiguration_FWD_DEFINED__ */


#ifndef __IAcadLayout_FWD_DEFINED__
#define __IAcadLayout_FWD_DEFINED__
typedef interface IAcadLayout IAcadLayout;
#endif 	/* __IAcadLayout_FWD_DEFINED__ */


#ifndef __AcadLayout_FWD_DEFINED__
#define __AcadLayout_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLayout AcadLayout;
#else
typedef struct AcadLayout AcadLayout;
#endif /* __cplusplus */

#endif 	/* __AcadLayout_FWD_DEFINED__ */


#ifndef __IAcadIdPair_FWD_DEFINED__
#define __IAcadIdPair_FWD_DEFINED__
typedef interface IAcadIdPair IAcadIdPair;
#endif 	/* __IAcadIdPair_FWD_DEFINED__ */


#ifndef __AcadIdPair_FWD_DEFINED__
#define __AcadIdPair_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadIdPair AcadIdPair;
#else
typedef struct AcadIdPair AcadIdPair;
#endif /* __cplusplus */

#endif 	/* __AcadIdPair_FWD_DEFINED__ */


#ifndef __IAcadTableStyle_FWD_DEFINED__
#define __IAcadTableStyle_FWD_DEFINED__
typedef interface IAcadTableStyle IAcadTableStyle;
#endif 	/* __IAcadTableStyle_FWD_DEFINED__ */


#ifndef __AcadTableStyle_FWD_DEFINED__
#define __AcadTableStyle_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadTableStyle AcadTableStyle;
#else
typedef struct AcadTableStyle AcadTableStyle;
#endif /* __cplusplus */

#endif 	/* __AcadTableStyle_FWD_DEFINED__ */


#ifndef __IAcadSectionSettings_FWD_DEFINED__
#define __IAcadSectionSettings_FWD_DEFINED__
typedef interface IAcadSectionSettings IAcadSectionSettings;
#endif 	/* __IAcadSectionSettings_FWD_DEFINED__ */


#ifndef __AcadSectionSettings_FWD_DEFINED__
#define __AcadSectionSettings_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSectionSettings AcadSectionSettings;
#else
typedef struct AcadSectionSettings AcadSectionSettings;
#endif /* __cplusplus */

#endif 	/* __AcadSectionSettings_FWD_DEFINED__ */


#ifndef __AcadSectionTypeSettings_FWD_DEFINED__
#define __AcadSectionTypeSettings_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSectionTypeSettings AcadSectionTypeSettings;
#else
typedef struct AcadSectionTypeSettings AcadSectionTypeSettings;
#endif /* __cplusplus */

#endif 	/* __AcadSectionTypeSettings_FWD_DEFINED__ */


#ifndef __IAcadMLeaderStyle_FWD_DEFINED__
#define __IAcadMLeaderStyle_FWD_DEFINED__
typedef interface IAcadMLeaderStyle IAcadMLeaderStyle;
#endif 	/* __IAcadMLeaderStyle_FWD_DEFINED__ */


#ifndef __AcadMLeaderStyle_FWD_DEFINED__
#define __AcadMLeaderStyle_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMLeaderStyle AcadMLeaderStyle;
#else
typedef struct AcadMLeaderStyle AcadMLeaderStyle;
#endif /* __cplusplus */

#endif 	/* __AcadMLeaderStyle_FWD_DEFINED__ */


#ifndef __IAcadHyperlinks_FWD_DEFINED__
#define __IAcadHyperlinks_FWD_DEFINED__
typedef interface IAcadHyperlinks IAcadHyperlinks;
#endif 	/* __IAcadHyperlinks_FWD_DEFINED__ */


#ifndef __AcadHyperlinks_FWD_DEFINED__
#define __AcadHyperlinks_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadHyperlinks AcadHyperlinks;
#else
typedef struct AcadHyperlinks AcadHyperlinks;
#endif /* __cplusplus */

#endif 	/* __AcadHyperlinks_FWD_DEFINED__ */


#ifndef __AcadDictionary_FWD_DEFINED__
#define __AcadDictionary_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDictionary AcadDictionary;
#else
typedef struct AcadDictionary AcadDictionary;
#endif /* __cplusplus */

#endif 	/* __AcadDictionary_FWD_DEFINED__ */


#ifndef __IAcadLayers_FWD_DEFINED__
#define __IAcadLayers_FWD_DEFINED__
typedef interface IAcadLayers IAcadLayers;
#endif 	/* __IAcadLayers_FWD_DEFINED__ */


#ifndef __AcadLayers_FWD_DEFINED__
#define __AcadLayers_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLayers AcadLayers;
#else
typedef struct AcadLayers AcadLayers;
#endif /* __cplusplus */

#endif 	/* __AcadLayers_FWD_DEFINED__ */


#ifndef __IAcadDimStyles_FWD_DEFINED__
#define __IAcadDimStyles_FWD_DEFINED__
typedef interface IAcadDimStyles IAcadDimStyles;
#endif 	/* __IAcadDimStyles_FWD_DEFINED__ */


#ifndef __AcadDimStyles_FWD_DEFINED__
#define __AcadDimStyles_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimStyles AcadDimStyles;
#else
typedef struct AcadDimStyles AcadDimStyles;
#endif /* __cplusplus */

#endif 	/* __AcadDimStyles_FWD_DEFINED__ */


#ifndef __IAcadDictionaries_FWD_DEFINED__
#define __IAcadDictionaries_FWD_DEFINED__
typedef interface IAcadDictionaries IAcadDictionaries;
#endif 	/* __IAcadDictionaries_FWD_DEFINED__ */


#ifndef __AcadDictionaries_FWD_DEFINED__
#define __AcadDictionaries_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDictionaries AcadDictionaries;
#else
typedef struct AcadDictionaries AcadDictionaries;
#endif /* __cplusplus */

#endif 	/* __AcadDictionaries_FWD_DEFINED__ */


#ifndef __IAcadLineTypes_FWD_DEFINED__
#define __IAcadLineTypes_FWD_DEFINED__
typedef interface IAcadLineTypes IAcadLineTypes;
#endif 	/* __IAcadLineTypes_FWD_DEFINED__ */


#ifndef __AcadLineTypes_FWD_DEFINED__
#define __AcadLineTypes_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLineTypes AcadLineTypes;
#else
typedef struct AcadLineTypes AcadLineTypes;
#endif /* __cplusplus */

#endif 	/* __AcadLineTypes_FWD_DEFINED__ */


#ifndef __IAcadMaterials_FWD_DEFINED__
#define __IAcadMaterials_FWD_DEFINED__
typedef interface IAcadMaterials IAcadMaterials;
#endif 	/* __IAcadMaterials_FWD_DEFINED__ */


#ifndef __AcadMaterials_FWD_DEFINED__
#define __AcadMaterials_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMaterials AcadMaterials;
#else
typedef struct AcadMaterials AcadMaterials;
#endif /* __cplusplus */

#endif 	/* __AcadMaterials_FWD_DEFINED__ */


#ifndef __IAcadTextStyles_FWD_DEFINED__
#define __IAcadTextStyles_FWD_DEFINED__
typedef interface IAcadTextStyles IAcadTextStyles;
#endif 	/* __IAcadTextStyles_FWD_DEFINED__ */


#ifndef __AcadTextStyles_FWD_DEFINED__
#define __AcadTextStyles_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadTextStyles AcadTextStyles;
#else
typedef struct AcadTextStyles AcadTextStyles;
#endif /* __cplusplus */

#endif 	/* __AcadTextStyles_FWD_DEFINED__ */


#ifndef __IAcadUCSs_FWD_DEFINED__
#define __IAcadUCSs_FWD_DEFINED__
typedef interface IAcadUCSs IAcadUCSs;
#endif 	/* __IAcadUCSs_FWD_DEFINED__ */


#ifndef __AcadUCSs_FWD_DEFINED__
#define __AcadUCSs_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadUCSs AcadUCSs;
#else
typedef struct AcadUCSs AcadUCSs;
#endif /* __cplusplus */

#endif 	/* __AcadUCSs_FWD_DEFINED__ */


#ifndef __IAcadRegisteredApplications_FWD_DEFINED__
#define __IAcadRegisteredApplications_FWD_DEFINED__
typedef interface IAcadRegisteredApplications IAcadRegisteredApplications;
#endif 	/* __IAcadRegisteredApplications_FWD_DEFINED__ */


#ifndef __AcadRegisteredApplications_FWD_DEFINED__
#define __AcadRegisteredApplications_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadRegisteredApplications AcadRegisteredApplications;
#else
typedef struct AcadRegisteredApplications AcadRegisteredApplications;
#endif /* __cplusplus */

#endif 	/* __AcadRegisteredApplications_FWD_DEFINED__ */


#ifndef __IAcadViews_FWD_DEFINED__
#define __IAcadViews_FWD_DEFINED__
typedef interface IAcadViews IAcadViews;
#endif 	/* __IAcadViews_FWD_DEFINED__ */


#ifndef __AcadViews_FWD_DEFINED__
#define __AcadViews_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadViews AcadViews;
#else
typedef struct AcadViews AcadViews;
#endif /* __cplusplus */

#endif 	/* __AcadViews_FWD_DEFINED__ */


#ifndef __IAcadViewports_FWD_DEFINED__
#define __IAcadViewports_FWD_DEFINED__
typedef interface IAcadViewports IAcadViewports;
#endif 	/* __IAcadViewports_FWD_DEFINED__ */


#ifndef __AcadViewports_FWD_DEFINED__
#define __AcadViewports_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadViewports AcadViewports;
#else
typedef struct AcadViewports AcadViewports;
#endif /* __cplusplus */

#endif 	/* __AcadViewports_FWD_DEFINED__ */


#ifndef __IAcadGroups_FWD_DEFINED__
#define __IAcadGroups_FWD_DEFINED__
typedef interface IAcadGroups IAcadGroups;
#endif 	/* __IAcadGroups_FWD_DEFINED__ */


#ifndef __AcadGroups_FWD_DEFINED__
#define __AcadGroups_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadGroups AcadGroups;
#else
typedef struct AcadGroups AcadGroups;
#endif /* __cplusplus */

#endif 	/* __AcadGroups_FWD_DEFINED__ */


#ifndef __IAcadBlocks_FWD_DEFINED__
#define __IAcadBlocks_FWD_DEFINED__
typedef interface IAcadBlocks IAcadBlocks;
#endif 	/* __IAcadBlocks_FWD_DEFINED__ */


#ifndef __AcadBlocks_FWD_DEFINED__
#define __AcadBlocks_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadBlocks AcadBlocks;
#else
typedef struct AcadBlocks AcadBlocks;
#endif /* __cplusplus */

#endif 	/* __AcadBlocks_FWD_DEFINED__ */


#ifndef __IAcadLayouts_FWD_DEFINED__
#define __IAcadLayouts_FWD_DEFINED__
typedef interface IAcadLayouts IAcadLayouts;
#endif 	/* __IAcadLayouts_FWD_DEFINED__ */


#ifndef __AcadLayouts_FWD_DEFINED__
#define __AcadLayouts_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLayouts AcadLayouts;
#else
typedef struct AcadLayouts AcadLayouts;
#endif /* __cplusplus */

#endif 	/* __AcadLayouts_FWD_DEFINED__ */


#ifndef __IAcadPlotConfigurations_FWD_DEFINED__
#define __IAcadPlotConfigurations_FWD_DEFINED__
typedef interface IAcadPlotConfigurations IAcadPlotConfigurations;
#endif 	/* __IAcadPlotConfigurations_FWD_DEFINED__ */


#ifndef __AcadPlotConfigurations_FWD_DEFINED__
#define __AcadPlotConfigurations_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPlotConfigurations AcadPlotConfigurations;
#else
typedef struct AcadPlotConfigurations AcadPlotConfigurations;
#endif /* __cplusplus */

#endif 	/* __AcadPlotConfigurations_FWD_DEFINED__ */


#ifndef __AcadEntity_FWD_DEFINED__
#define __AcadEntity_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadEntity AcadEntity;
#else
typedef struct AcadEntity AcadEntity;
#endif /* __cplusplus */

#endif 	/* __AcadEntity_FWD_DEFINED__ */


#ifndef __IAcadShadowDisplay_FWD_DEFINED__
#define __IAcadShadowDisplay_FWD_DEFINED__
typedef interface IAcadShadowDisplay IAcadShadowDisplay;
#endif 	/* __IAcadShadowDisplay_FWD_DEFINED__ */


#ifndef __IAcadRasterImage_FWD_DEFINED__
#define __IAcadRasterImage_FWD_DEFINED__
typedef interface IAcadRasterImage IAcadRasterImage;
#endif 	/* __IAcadRasterImage_FWD_DEFINED__ */


#ifndef __AcadRasterImage_FWD_DEFINED__
#define __AcadRasterImage_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadRasterImage AcadRasterImage;
#else
typedef struct AcadRasterImage AcadRasterImage;
#endif /* __cplusplus */

#endif 	/* __AcadRasterImage_FWD_DEFINED__ */


#ifndef __IAcad3DFace_FWD_DEFINED__
#define __IAcad3DFace_FWD_DEFINED__
typedef interface IAcad3DFace IAcad3DFace;
#endif 	/* __IAcad3DFace_FWD_DEFINED__ */


#ifndef __Acad3DFace_FWD_DEFINED__
#define __Acad3DFace_FWD_DEFINED__

#ifdef __cplusplus
typedef class Acad3DFace Acad3DFace;
#else
typedef struct Acad3DFace Acad3DFace;
#endif /* __cplusplus */

#endif 	/* __Acad3DFace_FWD_DEFINED__ */


#ifndef __IAcad3DPolyline_FWD_DEFINED__
#define __IAcad3DPolyline_FWD_DEFINED__
typedef interface IAcad3DPolyline IAcad3DPolyline;
#endif 	/* __IAcad3DPolyline_FWD_DEFINED__ */


#ifndef __Acad3DPolyline_FWD_DEFINED__
#define __Acad3DPolyline_FWD_DEFINED__

#ifdef __cplusplus
typedef class Acad3DPolyline Acad3DPolyline;
#else
typedef struct Acad3DPolyline Acad3DPolyline;
#endif /* __cplusplus */

#endif 	/* __Acad3DPolyline_FWD_DEFINED__ */


#ifndef __IAcadRegion_FWD_DEFINED__
#define __IAcadRegion_FWD_DEFINED__
typedef interface IAcadRegion IAcadRegion;
#endif 	/* __IAcadRegion_FWD_DEFINED__ */


#ifndef __AcadRegion_FWD_DEFINED__
#define __AcadRegion_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadRegion AcadRegion;
#else
typedef struct AcadRegion AcadRegion;
#endif /* __cplusplus */

#endif 	/* __AcadRegion_FWD_DEFINED__ */


#ifndef __IAcad3DSolid_FWD_DEFINED__
#define __IAcad3DSolid_FWD_DEFINED__
typedef interface IAcad3DSolid IAcad3DSolid;
#endif 	/* __IAcad3DSolid_FWD_DEFINED__ */


#ifndef __Acad3DSolid_FWD_DEFINED__
#define __Acad3DSolid_FWD_DEFINED__

#ifdef __cplusplus
typedef class Acad3DSolid Acad3DSolid;
#else
typedef struct Acad3DSolid Acad3DSolid;
#endif /* __cplusplus */

#endif 	/* __Acad3DSolid_FWD_DEFINED__ */


#ifndef __IAcadArc_FWD_DEFINED__
#define __IAcadArc_FWD_DEFINED__
typedef interface IAcadArc IAcadArc;
#endif 	/* __IAcadArc_FWD_DEFINED__ */


#ifndef __AcadArc_FWD_DEFINED__
#define __AcadArc_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadArc AcadArc;
#else
typedef struct AcadArc AcadArc;
#endif /* __cplusplus */

#endif 	/* __AcadArc_FWD_DEFINED__ */


#ifndef __IAcadAttribute_FWD_DEFINED__
#define __IAcadAttribute_FWD_DEFINED__
typedef interface IAcadAttribute IAcadAttribute;
#endif 	/* __IAcadAttribute_FWD_DEFINED__ */


#ifndef __AcadAttribute_FWD_DEFINED__
#define __AcadAttribute_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadAttribute AcadAttribute;
#else
typedef struct AcadAttribute AcadAttribute;
#endif /* __cplusplus */

#endif 	/* __AcadAttribute_FWD_DEFINED__ */


#ifndef __IAcadAttributeReference_FWD_DEFINED__
#define __IAcadAttributeReference_FWD_DEFINED__
typedef interface IAcadAttributeReference IAcadAttributeReference;
#endif 	/* __IAcadAttributeReference_FWD_DEFINED__ */


#ifndef __AcadAttributeReference_FWD_DEFINED__
#define __AcadAttributeReference_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadAttributeReference AcadAttributeReference;
#else
typedef struct AcadAttributeReference AcadAttributeReference;
#endif /* __cplusplus */

#endif 	/* __AcadAttributeReference_FWD_DEFINED__ */


#ifndef __IAcadBlockReference_FWD_DEFINED__
#define __IAcadBlockReference_FWD_DEFINED__
typedef interface IAcadBlockReference IAcadBlockReference;
#endif 	/* __IAcadBlockReference_FWD_DEFINED__ */


#ifndef __AcadBlockReference_FWD_DEFINED__
#define __AcadBlockReference_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadBlockReference AcadBlockReference;
#else
typedef struct AcadBlockReference AcadBlockReference;
#endif /* __cplusplus */

#endif 	/* __AcadBlockReference_FWD_DEFINED__ */


#ifndef __IAcadCircle_FWD_DEFINED__
#define __IAcadCircle_FWD_DEFINED__
typedef interface IAcadCircle IAcadCircle;
#endif 	/* __IAcadCircle_FWD_DEFINED__ */


#ifndef __AcadCircle_FWD_DEFINED__
#define __AcadCircle_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadCircle AcadCircle;
#else
typedef struct AcadCircle AcadCircle;
#endif /* __cplusplus */

#endif 	/* __AcadCircle_FWD_DEFINED__ */


#ifndef __IAcadEllipse_FWD_DEFINED__
#define __IAcadEllipse_FWD_DEFINED__
typedef interface IAcadEllipse IAcadEllipse;
#endif 	/* __IAcadEllipse_FWD_DEFINED__ */


#ifndef __AcadEllipse_FWD_DEFINED__
#define __AcadEllipse_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadEllipse AcadEllipse;
#else
typedef struct AcadEllipse AcadEllipse;
#endif /* __cplusplus */

#endif 	/* __AcadEllipse_FWD_DEFINED__ */


#ifndef __IAcadHatch_FWD_DEFINED__
#define __IAcadHatch_FWD_DEFINED__
typedef interface IAcadHatch IAcadHatch;
#endif 	/* __IAcadHatch_FWD_DEFINED__ */


#ifndef __AcadHatch_FWD_DEFINED__
#define __AcadHatch_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadHatch AcadHatch;
#else
typedef struct AcadHatch AcadHatch;
#endif /* __cplusplus */

#endif 	/* __AcadHatch_FWD_DEFINED__ */


#ifndef __IAcadLeader_FWD_DEFINED__
#define __IAcadLeader_FWD_DEFINED__
typedef interface IAcadLeader IAcadLeader;
#endif 	/* __IAcadLeader_FWD_DEFINED__ */


#ifndef __AcadLeader_FWD_DEFINED__
#define __AcadLeader_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLeader AcadLeader;
#else
typedef struct AcadLeader AcadLeader;
#endif /* __cplusplus */

#endif 	/* __AcadLeader_FWD_DEFINED__ */


#ifndef __IAcadSubEntity_FWD_DEFINED__
#define __IAcadSubEntity_FWD_DEFINED__
typedef interface IAcadSubEntity IAcadSubEntity;
#endif 	/* __IAcadSubEntity_FWD_DEFINED__ */


#ifndef __IAcadMLeaderLeader_FWD_DEFINED__
#define __IAcadMLeaderLeader_FWD_DEFINED__
typedef interface IAcadMLeaderLeader IAcadMLeaderLeader;
#endif 	/* __IAcadMLeaderLeader_FWD_DEFINED__ */


#ifndef __AcadMLeaderLeader_FWD_DEFINED__
#define __AcadMLeaderLeader_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMLeaderLeader AcadMLeaderLeader;
#else
typedef struct AcadMLeaderLeader AcadMLeaderLeader;
#endif /* __cplusplus */

#endif 	/* __AcadMLeaderLeader_FWD_DEFINED__ */


#ifndef __IAcadMLeader_FWD_DEFINED__
#define __IAcadMLeader_FWD_DEFINED__
typedef interface IAcadMLeader IAcadMLeader;
#endif 	/* __IAcadMLeader_FWD_DEFINED__ */


#ifndef __AcadMLeader_FWD_DEFINED__
#define __AcadMLeader_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMLeader AcadMLeader;
#else
typedef struct AcadMLeader AcadMLeader;
#endif /* __cplusplus */

#endif 	/* __AcadMLeader_FWD_DEFINED__ */


#ifndef __IAcadLWPolyline_FWD_DEFINED__
#define __IAcadLWPolyline_FWD_DEFINED__
typedef interface IAcadLWPolyline IAcadLWPolyline;
#endif 	/* __IAcadLWPolyline_FWD_DEFINED__ */


#ifndef __AcadLWPolyline_FWD_DEFINED__
#define __AcadLWPolyline_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLWPolyline AcadLWPolyline;
#else
typedef struct AcadLWPolyline AcadLWPolyline;
#endif /* __cplusplus */

#endif 	/* __AcadLWPolyline_FWD_DEFINED__ */


#ifndef __IAcadLine_FWD_DEFINED__
#define __IAcadLine_FWD_DEFINED__
typedef interface IAcadLine IAcadLine;
#endif 	/* __IAcadLine_FWD_DEFINED__ */


#ifndef __AcadLine_FWD_DEFINED__
#define __AcadLine_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLine AcadLine;
#else
typedef struct AcadLine AcadLine;
#endif /* __cplusplus */

#endif 	/* __AcadLine_FWD_DEFINED__ */


#ifndef __IAcadMText_FWD_DEFINED__
#define __IAcadMText_FWD_DEFINED__
typedef interface IAcadMText IAcadMText;
#endif 	/* __IAcadMText_FWD_DEFINED__ */


#ifndef __AcadMText_FWD_DEFINED__
#define __AcadMText_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMText AcadMText;
#else
typedef struct AcadMText AcadMText;
#endif /* __cplusplus */

#endif 	/* __AcadMText_FWD_DEFINED__ */


#ifndef __IAcadPoint_FWD_DEFINED__
#define __IAcadPoint_FWD_DEFINED__
typedef interface IAcadPoint IAcadPoint;
#endif 	/* __IAcadPoint_FWD_DEFINED__ */


#ifndef __AcadPoint_FWD_DEFINED__
#define __AcadPoint_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPoint AcadPoint;
#else
typedef struct AcadPoint AcadPoint;
#endif /* __cplusplus */

#endif 	/* __AcadPoint_FWD_DEFINED__ */


#ifndef __IAcadPolyline_FWD_DEFINED__
#define __IAcadPolyline_FWD_DEFINED__
typedef interface IAcadPolyline IAcadPolyline;
#endif 	/* __IAcadPolyline_FWD_DEFINED__ */


#ifndef __AcadPolyline_FWD_DEFINED__
#define __AcadPolyline_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPolyline AcadPolyline;
#else
typedef struct AcadPolyline AcadPolyline;
#endif /* __cplusplus */

#endif 	/* __AcadPolyline_FWD_DEFINED__ */


#ifndef __IAcadPolygonMesh_FWD_DEFINED__
#define __IAcadPolygonMesh_FWD_DEFINED__
typedef interface IAcadPolygonMesh IAcadPolygonMesh;
#endif 	/* __IAcadPolygonMesh_FWD_DEFINED__ */


#ifndef __AcadPolygonMesh_FWD_DEFINED__
#define __AcadPolygonMesh_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPolygonMesh AcadPolygonMesh;
#else
typedef struct AcadPolygonMesh AcadPolygonMesh;
#endif /* __cplusplus */

#endif 	/* __AcadPolygonMesh_FWD_DEFINED__ */


#ifndef __IAcadRay_FWD_DEFINED__
#define __IAcadRay_FWD_DEFINED__
typedef interface IAcadRay IAcadRay;
#endif 	/* __IAcadRay_FWD_DEFINED__ */


#ifndef __AcadRay_FWD_DEFINED__
#define __AcadRay_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadRay AcadRay;
#else
typedef struct AcadRay AcadRay;
#endif /* __cplusplus */

#endif 	/* __AcadRay_FWD_DEFINED__ */


#ifndef __IAcadShape_FWD_DEFINED__
#define __IAcadShape_FWD_DEFINED__
typedef interface IAcadShape IAcadShape;
#endif 	/* __IAcadShape_FWD_DEFINED__ */


#ifndef __AcadShape_FWD_DEFINED__
#define __AcadShape_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadShape AcadShape;
#else
typedef struct AcadShape AcadShape;
#endif /* __cplusplus */

#endif 	/* __AcadShape_FWD_DEFINED__ */


#ifndef __IAcadSolid_FWD_DEFINED__
#define __IAcadSolid_FWD_DEFINED__
typedef interface IAcadSolid IAcadSolid;
#endif 	/* __IAcadSolid_FWD_DEFINED__ */


#ifndef __AcadSolid_FWD_DEFINED__
#define __AcadSolid_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSolid AcadSolid;
#else
typedef struct AcadSolid AcadSolid;
#endif /* __cplusplus */

#endif 	/* __AcadSolid_FWD_DEFINED__ */


#ifndef __IAcadSpline_FWD_DEFINED__
#define __IAcadSpline_FWD_DEFINED__
typedef interface IAcadSpline IAcadSpline;
#endif 	/* __IAcadSpline_FWD_DEFINED__ */


#ifndef __AcadSpline_FWD_DEFINED__
#define __AcadSpline_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSpline AcadSpline;
#else
typedef struct AcadSpline AcadSpline;
#endif /* __cplusplus */

#endif 	/* __AcadSpline_FWD_DEFINED__ */


#ifndef __IAcadText_FWD_DEFINED__
#define __IAcadText_FWD_DEFINED__
typedef interface IAcadText IAcadText;
#endif 	/* __IAcadText_FWD_DEFINED__ */


#ifndef __AcadText_FWD_DEFINED__
#define __AcadText_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadText AcadText;
#else
typedef struct AcadText AcadText;
#endif /* __cplusplus */

#endif 	/* __AcadText_FWD_DEFINED__ */


#ifndef __IAcadTolerance_FWD_DEFINED__
#define __IAcadTolerance_FWD_DEFINED__
typedef interface IAcadTolerance IAcadTolerance;
#endif 	/* __IAcadTolerance_FWD_DEFINED__ */


#ifndef __AcadTolerance_FWD_DEFINED__
#define __AcadTolerance_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadTolerance AcadTolerance;
#else
typedef struct AcadTolerance AcadTolerance;
#endif /* __cplusplus */

#endif 	/* __AcadTolerance_FWD_DEFINED__ */


#ifndef __IAcadTrace_FWD_DEFINED__
#define __IAcadTrace_FWD_DEFINED__
typedef interface IAcadTrace IAcadTrace;
#endif 	/* __IAcadTrace_FWD_DEFINED__ */


#ifndef __AcadTrace_FWD_DEFINED__
#define __AcadTrace_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadTrace AcadTrace;
#else
typedef struct AcadTrace AcadTrace;
#endif /* __cplusplus */

#endif 	/* __AcadTrace_FWD_DEFINED__ */


#ifndef __IAcadXline_FWD_DEFINED__
#define __IAcadXline_FWD_DEFINED__
typedef interface IAcadXline IAcadXline;
#endif 	/* __IAcadXline_FWD_DEFINED__ */


#ifndef __AcadXline_FWD_DEFINED__
#define __AcadXline_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadXline AcadXline;
#else
typedef struct AcadXline AcadXline;
#endif /* __cplusplus */

#endif 	/* __AcadXline_FWD_DEFINED__ */


#ifndef __IAcadPViewport_FWD_DEFINED__
#define __IAcadPViewport_FWD_DEFINED__
typedef interface IAcadPViewport IAcadPViewport;
#endif 	/* __IAcadPViewport_FWD_DEFINED__ */


#ifndef __AcadPViewport_FWD_DEFINED__
#define __AcadPViewport_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPViewport AcadPViewport;
#else
typedef struct AcadPViewport AcadPViewport;
#endif /* __cplusplus */

#endif 	/* __AcadPViewport_FWD_DEFINED__ */


#ifndef __IAcadMInsertBlock_FWD_DEFINED__
#define __IAcadMInsertBlock_FWD_DEFINED__
typedef interface IAcadMInsertBlock IAcadMInsertBlock;
#endif 	/* __IAcadMInsertBlock_FWD_DEFINED__ */


#ifndef __AcadMInsertBlock_FWD_DEFINED__
#define __AcadMInsertBlock_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMInsertBlock AcadMInsertBlock;
#else
typedef struct AcadMInsertBlock AcadMInsertBlock;
#endif /* __cplusplus */

#endif 	/* __AcadMInsertBlock_FWD_DEFINED__ */


#ifndef __IAcadPolyfaceMesh_FWD_DEFINED__
#define __IAcadPolyfaceMesh_FWD_DEFINED__
typedef interface IAcadPolyfaceMesh IAcadPolyfaceMesh;
#endif 	/* __IAcadPolyfaceMesh_FWD_DEFINED__ */


#ifndef __AcadPolyfaceMesh_FWD_DEFINED__
#define __AcadPolyfaceMesh_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPolyfaceMesh AcadPolyfaceMesh;
#else
typedef struct AcadPolyfaceMesh AcadPolyfaceMesh;
#endif /* __cplusplus */

#endif 	/* __AcadPolyfaceMesh_FWD_DEFINED__ */


#ifndef __IAcadMLine_FWD_DEFINED__
#define __IAcadMLine_FWD_DEFINED__
typedef interface IAcadMLine IAcadMLine;
#endif 	/* __IAcadMLine_FWD_DEFINED__ */


#ifndef __AcadMLine_FWD_DEFINED__
#define __AcadMLine_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadMLine AcadMLine;
#else
typedef struct AcadMLine AcadMLine;
#endif /* __cplusplus */

#endif 	/* __AcadMLine_FWD_DEFINED__ */


#ifndef __IAcadExternalReference_FWD_DEFINED__
#define __IAcadExternalReference_FWD_DEFINED__
typedef interface IAcadExternalReference IAcadExternalReference;
#endif 	/* __IAcadExternalReference_FWD_DEFINED__ */


#ifndef __AcadExternalReference_FWD_DEFINED__
#define __AcadExternalReference_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadExternalReference AcadExternalReference;
#else
typedef struct AcadExternalReference AcadExternalReference;
#endif /* __cplusplus */

#endif 	/* __AcadExternalReference_FWD_DEFINED__ */


#ifndef __IAcadTable_FWD_DEFINED__
#define __IAcadTable_FWD_DEFINED__
typedef interface IAcadTable IAcadTable;
#endif 	/* __IAcadTable_FWD_DEFINED__ */


#ifndef __AcadTable_FWD_DEFINED__
#define __AcadTable_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadTable AcadTable;
#else
typedef struct AcadTable AcadTable;
#endif /* __cplusplus */

#endif 	/* __AcadTable_FWD_DEFINED__ */


#ifndef __IAcadOle_FWD_DEFINED__
#define __IAcadOle_FWD_DEFINED__
typedef interface IAcadOle IAcadOle;
#endif 	/* __IAcadOle_FWD_DEFINED__ */


#ifndef __AcadOle_FWD_DEFINED__
#define __AcadOle_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadOle AcadOle;
#else
typedef struct AcadOle AcadOle;
#endif /* __cplusplus */

#endif 	/* __AcadOle_FWD_DEFINED__ */


#ifndef __IAcadHelix_FWD_DEFINED__
#define __IAcadHelix_FWD_DEFINED__
typedef interface IAcadHelix IAcadHelix;
#endif 	/* __IAcadHelix_FWD_DEFINED__ */


#ifndef __AcadHelix_FWD_DEFINED__
#define __AcadHelix_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadHelix AcadHelix;
#else
typedef struct AcadHelix AcadHelix;
#endif /* __cplusplus */

#endif 	/* __AcadHelix_FWD_DEFINED__ */


#ifndef __IAcadSurface_FWD_DEFINED__
#define __IAcadSurface_FWD_DEFINED__
typedef interface IAcadSurface IAcadSurface;
#endif 	/* __IAcadSurface_FWD_DEFINED__ */


#ifndef __AcadSurface_FWD_DEFINED__
#define __AcadSurface_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSurface AcadSurface;
#else
typedef struct AcadSurface AcadSurface;
#endif /* __cplusplus */

#endif 	/* __AcadSurface_FWD_DEFINED__ */


#ifndef __IAcadPlaneSurface_FWD_DEFINED__
#define __IAcadPlaneSurface_FWD_DEFINED__
typedef interface IAcadPlaneSurface IAcadPlaneSurface;
#endif 	/* __IAcadPlaneSurface_FWD_DEFINED__ */


#ifndef __AcadPlaneSurface_FWD_DEFINED__
#define __AcadPlaneSurface_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPlaneSurface AcadPlaneSurface;
#else
typedef struct AcadPlaneSurface AcadPlaneSurface;
#endif /* __cplusplus */

#endif 	/* __AcadPlaneSurface_FWD_DEFINED__ */


#ifndef __IAcadExtrudedSurface_FWD_DEFINED__
#define __IAcadExtrudedSurface_FWD_DEFINED__
typedef interface IAcadExtrudedSurface IAcadExtrudedSurface;
#endif 	/* __IAcadExtrudedSurface_FWD_DEFINED__ */


#ifndef __AcadExtrudedSurface_FWD_DEFINED__
#define __AcadExtrudedSurface_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadExtrudedSurface AcadExtrudedSurface;
#else
typedef struct AcadExtrudedSurface AcadExtrudedSurface;
#endif /* __cplusplus */

#endif 	/* __AcadExtrudedSurface_FWD_DEFINED__ */


#ifndef __IAcadRevolvedSurface_FWD_DEFINED__
#define __IAcadRevolvedSurface_FWD_DEFINED__
typedef interface IAcadRevolvedSurface IAcadRevolvedSurface;
#endif 	/* __IAcadRevolvedSurface_FWD_DEFINED__ */


#ifndef __AcadRevolvedSurface_FWD_DEFINED__
#define __AcadRevolvedSurface_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadRevolvedSurface AcadRevolvedSurface;
#else
typedef struct AcadRevolvedSurface AcadRevolvedSurface;
#endif /* __cplusplus */

#endif 	/* __AcadRevolvedSurface_FWD_DEFINED__ */


#ifndef __IAcadSweptSurface_FWD_DEFINED__
#define __IAcadSweptSurface_FWD_DEFINED__
typedef interface IAcadSweptSurface IAcadSweptSurface;
#endif 	/* __IAcadSweptSurface_FWD_DEFINED__ */


#ifndef __AcadSweptSurface_FWD_DEFINED__
#define __AcadSweptSurface_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSweptSurface AcadSweptSurface;
#else
typedef struct AcadSweptSurface AcadSweptSurface;
#endif /* __cplusplus */

#endif 	/* __AcadSweptSurface_FWD_DEFINED__ */


#ifndef __IAcadLoftedSurface_FWD_DEFINED__
#define __IAcadLoftedSurface_FWD_DEFINED__
typedef interface IAcadLoftedSurface IAcadLoftedSurface;
#endif 	/* __IAcadLoftedSurface_FWD_DEFINED__ */


#ifndef __AcadLoftedSurface_FWD_DEFINED__
#define __AcadLoftedSurface_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLoftedSurface AcadLoftedSurface;
#else
typedef struct AcadLoftedSurface AcadLoftedSurface;
#endif /* __cplusplus */

#endif 	/* __AcadLoftedSurface_FWD_DEFINED__ */


#ifndef __IAcadSection_FWD_DEFINED__
#define __IAcadSection_FWD_DEFINED__
typedef interface IAcadSection IAcadSection;
#endif 	/* __IAcadSection_FWD_DEFINED__ */


#ifndef __AcadSection_FWD_DEFINED__
#define __AcadSection_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSection AcadSection;
#else
typedef struct AcadSection AcadSection;
#endif /* __cplusplus */

#endif 	/* __AcadSection_FWD_DEFINED__ */


#ifndef __IAcadSectionManager_FWD_DEFINED__
#define __IAcadSectionManager_FWD_DEFINED__
typedef interface IAcadSectionManager IAcadSectionManager;
#endif 	/* __IAcadSectionManager_FWD_DEFINED__ */


#ifndef __AcadSectionManager_FWD_DEFINED__
#define __AcadSectionManager_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSectionManager AcadSectionManager;
#else
typedef struct AcadSectionManager AcadSectionManager;
#endif /* __cplusplus */

#endif 	/* __AcadSectionManager_FWD_DEFINED__ */


#ifndef __IAcadUnderlay_FWD_DEFINED__
#define __IAcadUnderlay_FWD_DEFINED__
typedef interface IAcadUnderlay IAcadUnderlay;
#endif 	/* __IAcadUnderlay_FWD_DEFINED__ */


#ifndef __IAcadDwfUnderlay_FWD_DEFINED__
#define __IAcadDwfUnderlay_FWD_DEFINED__
typedef interface IAcadDwfUnderlay IAcadDwfUnderlay;
#endif 	/* __IAcadDwfUnderlay_FWD_DEFINED__ */


#ifndef __AcadDwfUnderlay_FWD_DEFINED__
#define __AcadDwfUnderlay_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDwfUnderlay AcadDwfUnderlay;
#else
typedef struct AcadDwfUnderlay AcadDwfUnderlay;
#endif /* __cplusplus */

#endif 	/* __AcadDwfUnderlay_FWD_DEFINED__ */


#ifndef __AcadDgnUnderlay_FWD_DEFINED__
#define __AcadDgnUnderlay_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDgnUnderlay AcadDgnUnderlay;
#else
typedef struct AcadDgnUnderlay AcadDgnUnderlay;
#endif /* __cplusplus */

#endif 	/* __AcadDgnUnderlay_FWD_DEFINED__ */


#ifndef __AcadPdfUnderlay_FWD_DEFINED__
#define __AcadPdfUnderlay_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPdfUnderlay AcadPdfUnderlay;
#else
typedef struct AcadPdfUnderlay AcadPdfUnderlay;
#endif /* __cplusplus */

#endif 	/* __AcadPdfUnderlay_FWD_DEFINED__ */


#ifndef __AcadSubEntity_FWD_DEFINED__
#define __AcadSubEntity_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubEntity AcadSubEntity;
#else
typedef struct AcadSubEntity AcadSubEntity;
#endif /* __cplusplus */

#endif 	/* __AcadSubEntity_FWD_DEFINED__ */


#ifndef __IAcadSubEntSolidFace_FWD_DEFINED__
#define __IAcadSubEntSolidFace_FWD_DEFINED__
typedef interface IAcadSubEntSolidFace IAcadSubEntSolidFace;
#endif 	/* __IAcadSubEntSolidFace_FWD_DEFINED__ */


#ifndef __AcadSubEntSolidFace_FWD_DEFINED__
#define __AcadSubEntSolidFace_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubEntSolidFace AcadSubEntSolidFace;
#else
typedef struct AcadSubEntSolidFace AcadSubEntSolidFace;
#endif /* __cplusplus */

#endif 	/* __AcadSubEntSolidFace_FWD_DEFINED__ */


#ifndef __IAcadSubEntSolidEdge_FWD_DEFINED__
#define __IAcadSubEntSolidEdge_FWD_DEFINED__
typedef interface IAcadSubEntSolidEdge IAcadSubEntSolidEdge;
#endif 	/* __IAcadSubEntSolidEdge_FWD_DEFINED__ */


#ifndef __AcadSubEntSolidEdge_FWD_DEFINED__
#define __AcadSubEntSolidEdge_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubEntSolidEdge AcadSubEntSolidEdge;
#else
typedef struct AcadSubEntSolidEdge AcadSubEntSolidEdge;
#endif /* __cplusplus */

#endif 	/* __AcadSubEntSolidEdge_FWD_DEFINED__ */


#ifndef __IAcadSubEntSolidVertex_FWD_DEFINED__
#define __IAcadSubEntSolidVertex_FWD_DEFINED__
typedef interface IAcadSubEntSolidVertex IAcadSubEntSolidVertex;
#endif 	/* __IAcadSubEntSolidVertex_FWD_DEFINED__ */


#ifndef __AcadSubEntSolidVertex_FWD_DEFINED__
#define __AcadSubEntSolidVertex_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubEntSolidVertex AcadSubEntSolidVertex;
#else
typedef struct AcadSubEntSolidVertex AcadSubEntSolidVertex;
#endif /* __cplusplus */

#endif 	/* __AcadSubEntSolidVertex_FWD_DEFINED__ */


#ifndef __IAcadSubEntSolidNode_FWD_DEFINED__
#define __IAcadSubEntSolidNode_FWD_DEFINED__
typedef interface IAcadSubEntSolidNode IAcadSubEntSolidNode;
#endif 	/* __IAcadSubEntSolidNode_FWD_DEFINED__ */


#ifndef __AcadSubEntSolidNode_FWD_DEFINED__
#define __AcadSubEntSolidNode_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubEntSolidNode AcadSubEntSolidNode;
#else
typedef struct AcadSubEntSolidNode AcadSubEntSolidNode;
#endif /* __cplusplus */

#endif 	/* __AcadSubEntSolidNode_FWD_DEFINED__ */


#ifndef __IAcadWipeout_FWD_DEFINED__
#define __IAcadWipeout_FWD_DEFINED__
typedef interface IAcadWipeout IAcadWipeout;
#endif 	/* __IAcadWipeout_FWD_DEFINED__ */


#ifndef __AcadWipeout_FWD_DEFINED__
#define __AcadWipeout_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadWipeout AcadWipeout;
#else
typedef struct AcadWipeout AcadWipeout;
#endif /* __cplusplus */

#endif 	/* __AcadWipeout_FWD_DEFINED__ */


#ifndef __IAcadSubDMesh_FWD_DEFINED__
#define __IAcadSubDMesh_FWD_DEFINED__
typedef interface IAcadSubDMesh IAcadSubDMesh;
#endif 	/* __IAcadSubDMesh_FWD_DEFINED__ */


#ifndef __AcadSubDMesh_FWD_DEFINED__
#define __AcadSubDMesh_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubDMesh AcadSubDMesh;
#else
typedef struct AcadSubDMesh AcadSubDMesh;
#endif /* __cplusplus */

#endif 	/* __AcadSubDMesh_FWD_DEFINED__ */


#ifndef __IAcadSubDMeshFace_FWD_DEFINED__
#define __IAcadSubDMeshFace_FWD_DEFINED__
typedef interface IAcadSubDMeshFace IAcadSubDMeshFace;
#endif 	/* __IAcadSubDMeshFace_FWD_DEFINED__ */


#ifndef __AcadSubDMeshFace_FWD_DEFINED__
#define __AcadSubDMeshFace_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubDMeshFace AcadSubDMeshFace;
#else
typedef struct AcadSubDMeshFace AcadSubDMeshFace;
#endif /* __cplusplus */

#endif 	/* __AcadSubDMeshFace_FWD_DEFINED__ */


#ifndef __IAcadSubDMeshEdge_FWD_DEFINED__
#define __IAcadSubDMeshEdge_FWD_DEFINED__
typedef interface IAcadSubDMeshEdge IAcadSubDMeshEdge;
#endif 	/* __IAcadSubDMeshEdge_FWD_DEFINED__ */


#ifndef __AcadSubDMeshEdge_FWD_DEFINED__
#define __AcadSubDMeshEdge_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubDMeshEdge AcadSubDMeshEdge;
#else
typedef struct AcadSubDMeshEdge AcadSubDMeshEdge;
#endif /* __cplusplus */

#endif 	/* __AcadSubDMeshEdge_FWD_DEFINED__ */


#ifndef __IAcadSubDMeshVertex_FWD_DEFINED__
#define __IAcadSubDMeshVertex_FWD_DEFINED__
typedef interface IAcadSubDMeshVertex IAcadSubDMeshVertex;
#endif 	/* __IAcadSubDMeshVertex_FWD_DEFINED__ */


#ifndef __AcadSubDMeshVertex_FWD_DEFINED__
#define __AcadSubDMeshVertex_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSubDMeshVertex AcadSubDMeshVertex;
#else
typedef struct AcadSubDMeshVertex AcadSubDMeshVertex;
#endif /* __cplusplus */

#endif 	/* __AcadSubDMeshVertex_FWD_DEFINED__ */


#ifndef __IAcadDimension_FWD_DEFINED__
#define __IAcadDimension_FWD_DEFINED__
typedef interface IAcadDimension IAcadDimension;
#endif 	/* __IAcadDimension_FWD_DEFINED__ */


#ifndef __AcadDimension_FWD_DEFINED__
#define __AcadDimension_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimension AcadDimension;
#else
typedef struct AcadDimension AcadDimension;
#endif /* __cplusplus */

#endif 	/* __AcadDimension_FWD_DEFINED__ */


#ifndef __IAcadDimAligned_FWD_DEFINED__
#define __IAcadDimAligned_FWD_DEFINED__
typedef interface IAcadDimAligned IAcadDimAligned;
#endif 	/* __IAcadDimAligned_FWD_DEFINED__ */


#ifndef __AcadDimAligned_FWD_DEFINED__
#define __AcadDimAligned_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimAligned AcadDimAligned;
#else
typedef struct AcadDimAligned AcadDimAligned;
#endif /* __cplusplus */

#endif 	/* __AcadDimAligned_FWD_DEFINED__ */


#ifndef __IAcadDimAngular_FWD_DEFINED__
#define __IAcadDimAngular_FWD_DEFINED__
typedef interface IAcadDimAngular IAcadDimAngular;
#endif 	/* __IAcadDimAngular_FWD_DEFINED__ */


#ifndef __AcadDimAngular_FWD_DEFINED__
#define __AcadDimAngular_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimAngular AcadDimAngular;
#else
typedef struct AcadDimAngular AcadDimAngular;
#endif /* __cplusplus */

#endif 	/* __AcadDimAngular_FWD_DEFINED__ */


#ifndef __IAcadDimDiametric_FWD_DEFINED__
#define __IAcadDimDiametric_FWD_DEFINED__
typedef interface IAcadDimDiametric IAcadDimDiametric;
#endif 	/* __IAcadDimDiametric_FWD_DEFINED__ */


#ifndef __AcadDimDiametric_FWD_DEFINED__
#define __AcadDimDiametric_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimDiametric AcadDimDiametric;
#else
typedef struct AcadDimDiametric AcadDimDiametric;
#endif /* __cplusplus */

#endif 	/* __AcadDimDiametric_FWD_DEFINED__ */


#ifndef __IAcadDimOrdinate_FWD_DEFINED__
#define __IAcadDimOrdinate_FWD_DEFINED__
typedef interface IAcadDimOrdinate IAcadDimOrdinate;
#endif 	/* __IAcadDimOrdinate_FWD_DEFINED__ */


#ifndef __AcadDimOrdinate_FWD_DEFINED__
#define __AcadDimOrdinate_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimOrdinate AcadDimOrdinate;
#else
typedef struct AcadDimOrdinate AcadDimOrdinate;
#endif /* __cplusplus */

#endif 	/* __AcadDimOrdinate_FWD_DEFINED__ */


#ifndef __IAcadDimRadial_FWD_DEFINED__
#define __IAcadDimRadial_FWD_DEFINED__
typedef interface IAcadDimRadial IAcadDimRadial;
#endif 	/* __IAcadDimRadial_FWD_DEFINED__ */


#ifndef __AcadDimRadial_FWD_DEFINED__
#define __AcadDimRadial_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimRadial AcadDimRadial;
#else
typedef struct AcadDimRadial AcadDimRadial;
#endif /* __cplusplus */

#endif 	/* __AcadDimRadial_FWD_DEFINED__ */


#ifndef __IAcadDimRotated_FWD_DEFINED__
#define __IAcadDimRotated_FWD_DEFINED__
typedef interface IAcadDimRotated IAcadDimRotated;
#endif 	/* __IAcadDimRotated_FWD_DEFINED__ */


#ifndef __AcadDimRotated_FWD_DEFINED__
#define __AcadDimRotated_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimRotated AcadDimRotated;
#else
typedef struct AcadDimRotated AcadDimRotated;
#endif /* __cplusplus */

#endif 	/* __AcadDimRotated_FWD_DEFINED__ */


#ifndef __IAcadDim3PointAngular_FWD_DEFINED__
#define __IAcadDim3PointAngular_FWD_DEFINED__
typedef interface IAcadDim3PointAngular IAcadDim3PointAngular;
#endif 	/* __IAcadDim3PointAngular_FWD_DEFINED__ */


#ifndef __AcadDim3PointAngular_FWD_DEFINED__
#define __AcadDim3PointAngular_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDim3PointAngular AcadDim3PointAngular;
#else
typedef struct AcadDim3PointAngular AcadDim3PointAngular;
#endif /* __cplusplus */

#endif 	/* __AcadDim3PointAngular_FWD_DEFINED__ */


#ifndef __IAcadDimArcLength_FWD_DEFINED__
#define __IAcadDimArcLength_FWD_DEFINED__
typedef interface IAcadDimArcLength IAcadDimArcLength;
#endif 	/* __IAcadDimArcLength_FWD_DEFINED__ */


#ifndef __AcadDimArcLength_FWD_DEFINED__
#define __AcadDimArcLength_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimArcLength AcadDimArcLength;
#else
typedef struct AcadDimArcLength AcadDimArcLength;
#endif /* __cplusplus */

#endif 	/* __AcadDimArcLength_FWD_DEFINED__ */


#ifndef __IAcadDimRadialLarge_FWD_DEFINED__
#define __IAcadDimRadialLarge_FWD_DEFINED__
typedef interface IAcadDimRadialLarge IAcadDimRadialLarge;
#endif 	/* __IAcadDimRadialLarge_FWD_DEFINED__ */


#ifndef __AcadDimRadialLarge_FWD_DEFINED__
#define __AcadDimRadialLarge_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDimRadialLarge AcadDimRadialLarge;
#else
typedef struct AcadDimRadialLarge AcadDimRadialLarge;
#endif /* __cplusplus */

#endif 	/* __AcadDimRadialLarge_FWD_DEFINED__ */


#ifndef __AcadBlock_FWD_DEFINED__
#define __AcadBlock_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadBlock AcadBlock;
#else
typedef struct AcadBlock AcadBlock;
#endif /* __cplusplus */

#endif 	/* __AcadBlock_FWD_DEFINED__ */


#ifndef __IAcadModelSpace_FWD_DEFINED__
#define __IAcadModelSpace_FWD_DEFINED__
typedef interface IAcadModelSpace IAcadModelSpace;
#endif 	/* __IAcadModelSpace_FWD_DEFINED__ */


#ifndef __AcadModelSpace_FWD_DEFINED__
#define __AcadModelSpace_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadModelSpace AcadModelSpace;
#else
typedef struct AcadModelSpace AcadModelSpace;
#endif /* __cplusplus */

#endif 	/* __AcadModelSpace_FWD_DEFINED__ */


#ifndef __IAcadPaperSpace_FWD_DEFINED__
#define __IAcadPaperSpace_FWD_DEFINED__
typedef interface IAcadPaperSpace IAcadPaperSpace;
#endif 	/* __IAcadPaperSpace_FWD_DEFINED__ */


#ifndef __AcadPaperSpace_FWD_DEFINED__
#define __AcadPaperSpace_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadPaperSpace AcadPaperSpace;
#else
typedef struct AcadPaperSpace AcadPaperSpace;
#endif /* __cplusplus */

#endif 	/* __AcadPaperSpace_FWD_DEFINED__ */


#ifndef __IAcadFileDependency_FWD_DEFINED__
#define __IAcadFileDependency_FWD_DEFINED__
typedef interface IAcadFileDependency IAcadFileDependency;
#endif 	/* __IAcadFileDependency_FWD_DEFINED__ */


#ifndef __AcadFileDependency_FWD_DEFINED__
#define __AcadFileDependency_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadFileDependency AcadFileDependency;
#else
typedef struct AcadFileDependency AcadFileDependency;
#endif /* __cplusplus */

#endif 	/* __AcadFileDependency_FWD_DEFINED__ */


#ifndef __IAcadFileDependencies_FWD_DEFINED__
#define __IAcadFileDependencies_FWD_DEFINED__
typedef interface IAcadFileDependencies IAcadFileDependencies;
#endif 	/* __IAcadFileDependencies_FWD_DEFINED__ */


#ifndef __AcadFileDependencies_FWD_DEFINED__
#define __AcadFileDependencies_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadFileDependencies AcadFileDependencies;
#else
typedef struct AcadFileDependencies AcadFileDependencies;
#endif /* __cplusplus */

#endif 	/* __AcadFileDependencies_FWD_DEFINED__ */


#ifndef __IAcadSummaryInfo_FWD_DEFINED__
#define __IAcadSummaryInfo_FWD_DEFINED__
typedef interface IAcadSummaryInfo IAcadSummaryInfo;
#endif 	/* __IAcadSummaryInfo_FWD_DEFINED__ */


#ifndef __AcadSummaryInfo_FWD_DEFINED__
#define __AcadSummaryInfo_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSummaryInfo AcadSummaryInfo;
#else
typedef struct AcadSummaryInfo AcadSummaryInfo;
#endif /* __cplusplus */

#endif 	/* __AcadSummaryInfo_FWD_DEFINED__ */


#ifndef __IAcadDatabasePreferences_FWD_DEFINED__
#define __IAcadDatabasePreferences_FWD_DEFINED__
typedef interface IAcadDatabasePreferences IAcadDatabasePreferences;
#endif 	/* __IAcadDatabasePreferences_FWD_DEFINED__ */


#ifndef __AcadDatabasePreferences_FWD_DEFINED__
#define __AcadDatabasePreferences_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDatabasePreferences AcadDatabasePreferences;
#else
typedef struct AcadDatabasePreferences AcadDatabasePreferences;
#endif /* __cplusplus */

#endif 	/* __AcadDatabasePreferences_FWD_DEFINED__ */


#ifndef __AcadDatabase_FWD_DEFINED__
#define __AcadDatabase_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadDatabase AcadDatabase;
#else
typedef struct AcadDatabase AcadDatabase;
#endif /* __cplusplus */

#endif 	/* __AcadDatabase_FWD_DEFINED__ */


#ifndef __IAcadSecurityParams_FWD_DEFINED__
#define __IAcadSecurityParams_FWD_DEFINED__
typedef interface IAcadSecurityParams IAcadSecurityParams;
#endif 	/* __IAcadSecurityParams_FWD_DEFINED__ */


#ifndef __AcadSecurityParams_FWD_DEFINED__
#define __AcadSecurityParams_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadSecurityParams AcadSecurityParams;
#else
typedef struct AcadSecurityParams AcadSecurityParams;
#endif /* __cplusplus */

#endif 	/* __AcadSecurityParams_FWD_DEFINED__ */


#ifndef __IAcadLayerStateManager_FWD_DEFINED__
#define __IAcadLayerStateManager_FWD_DEFINED__
typedef interface IAcadLayerStateManager IAcadLayerStateManager;
#endif 	/* __IAcadLayerStateManager_FWD_DEFINED__ */


#ifndef __AcadLayerStateManager_FWD_DEFINED__
#define __AcadLayerStateManager_FWD_DEFINED__

#ifdef __cplusplus
typedef class AcadLayerStateManager AcadLayerStateManager;
#else
typedef struct AcadLayerStateManager AcadLayerStateManager;
#endif /* __cplusplus */

#endif 	/* __AcadLayerStateManager_FWD_DEFINED__ */


#ifndef __IAxDbDocumentEvents_FWD_DEFINED__
#define __IAxDbDocumentEvents_FWD_DEFINED__
typedef interface IAxDbDocumentEvents IAxDbDocumentEvents;
#endif 	/* __IAxDbDocumentEvents_FWD_DEFINED__ */


#ifndef __IAxDbDocument_FWD_DEFINED__
#define __IAxDbDocument_FWD_DEFINED__
typedef interface IAxDbDocument IAxDbDocument;
#endif 	/* __IAxDbDocument_FWD_DEFINED__ */


#ifndef __AxDbDocument_FWD_DEFINED__
#define __AxDbDocument_FWD_DEFINED__

#ifdef __cplusplus
typedef class AxDbDocument AxDbDocument;
#else
typedef struct AxDbDocument AxDbDocument;
#endif /* __cplusplus */

#endif 	/* __AxDbDocument_FWD_DEFINED__ */


#ifdef __cplusplus
extern "C"{
#endif 



#ifndef __AXDBLib_LIBRARY_DEFINED__
#define __AXDBLib_LIBRARY_DEFINED__

/* library AXDBLib */
/* [helpstringdll][lcid][helpstringcontext][helpfile][version][uuid] */ 

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("6D43C23F-DFCB-4644-B1A7-46AB55BF81FB") 
enum AcBoolean
    {	acFalse	= 0,
	acTrue	= 1
    } 	AcBoolean;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("4941FE6C-6D77-4A3B-8BE7-1A084BB9231E") 
enum AcOnOff
    {	acOff	= 0,
	acOn	= 1
    } 	AcOnOff;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("113C0650-CCCA-4BA3-905C-4316C835DC49") 
enum AcEntityName
    {	ac3dFace	= 1,
	ac3dPolyline	= 2,
	ac3dSolid	= 3,
	acArc	= 4,
	acAttribute	= 5,
	acAttributeReference	= 6,
	acBlockReference	= 7,
	acCircle	= 8,
	acDimAligned	= 9,
	acDimAngular	= 10,
	acDimDiametric	= 12,
	acDimOrdinate	= 13,
	acDimRadial	= 14,
	acDimRotated	= 15,
	acEllipse	= 16,
	acHatch	= 17,
	acLeader	= 18,
	acLine	= 19,
	acMtext	= 21,
	acPoint	= 22,
	acPolyline	= 23,
	acPolylineLight	= 24,
	acPolymesh	= 25,
	acRaster	= 26,
	acRay	= 27,
	acRegion	= 28,
	acShape	= 29,
	acSolid	= 30,
	acSpline	= 31,
	acText	= 32,
	acTolerance	= 33,
	acTrace	= 34,
	acPViewport	= 35,
	acXline	= 36,
	acGroup	= 37,
	acMInsertBlock	= 38,
	acPolyfaceMesh	= 39,
	acMLine	= 40,
	acDim3PointAngular	= 41,
	acExternalReference	= 42,
	acTable	= 43,
	acDimArcLength	= 44,
	acDimRadialLarge	= 45,
	acDwfUnderlay	= 46,
	acDgnUnderlay	= 47,
	acMLeader	= 48,
	acSubDMesh	= 49,
	acPdfUnderlay	= 50
    } 	AcEntityName;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("C20BFC7A-4207-4FE4-97AE-DD1B62D8F4A6") 
enum AcActiveSpace
    {	acPaperSpace	= 0,
	acModelSpace	= 1
    } 	AcActiveSpace;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("B451621F-FA12-4A67-92EF-4D32027C65FC") 
enum AcKeyboardAccelerator
    {	acPreferenceClassic	= 0,
	acPreferenceCustom	= 1
    } 	AcKeyboardAccelerator;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("2DD948E5-8ECB-4DE6-B307-2BF1BD9E1E0E") 
enum AcPlotOrientation
    {	acPlotOrientationPortrait	= 0,
	acPlotOrientationLandscape	= 1
    } 	AcPlotOrientation;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9B6B7518-D1CC-4A1E-B362-E9E23DE4D95E") 
enum AcColor
    {	acByBlock	= 0,
	acRed	= 1,
	acYellow	= 2,
	acGreen	= 3,
	acCyan	= 4,
	acBlue	= 5,
	acMagenta	= 6,
	acWhite	= 7,
	acByLayer	= 256
    } 	AcColor;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("625939E4-BF39-4B49-A974-EA57FFFD205C") 
enum AcAttachmentPoint
    {	acAttachmentPointTopLeft	= 1,
	acAttachmentPointTopCenter	= 2,
	acAttachmentPointTopRight	= 3,
	acAttachmentPointMiddleLeft	= 4,
	acAttachmentPointMiddleCenter	= 5,
	acAttachmentPointMiddleRight	= 6,
	acAttachmentPointBottomLeft	= 7,
	acAttachmentPointBottomCenter	= 8,
	acAttachmentPointBottomRight	= 9
    } 	AcAttachmentPoint;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1E6689C3-A4C0-4674-B0F6-45E98677BD6F") 
enum AcDrawingDirection
    {	acLeftToRight	= 1,
	acRightToLeft	= 2,
	acTopToBottom	= 3,
	acBottomToTop	= 4,
	acByStyle	= 5
    } 	AcDrawingDirection;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("D312A5FD-9DE7-4CD9-A57A-D8A3DB2BA197") 
enum AcLeaderType
    {	acLineNoArrow	= 0,
	acSplineNoArrow	= 1,
	acLineWithArrow	= 2,
	acSplineWithArrow	= 3
    } 	AcLeaderType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F218A874-C594-4A17-9825-C0420122A730") 
enum AcAttributeMode
    {	acAttributeModeNormal	= 0,
	acAttributeModeInvisible	= 1,
	acAttributeModeConstant	= 2,
	acAttributeModeVerify	= 4,
	acAttributeModePreset	= 8,
	acAttributeModeLockPosition	= 16,
	acAttributeModeMultipleLine	= 32
    } 	AcAttributeMode;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("06DF5AF2-351D-426F-8128-7BB8EE1364FB") 
enum AcHorizontalAlignment
    {	acHorizontalAlignmentLeft	= 0,
	acHorizontalAlignmentCenter	= 1,
	acHorizontalAlignmentRight	= 2,
	acHorizontalAlignmentAligned	= 3,
	acHorizontalAlignmentMiddle	= 4,
	acHorizontalAlignmentFit	= 5
    } 	AcHorizontalAlignment;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("4121660E-2700-4533-BDEB-666BD74BBBE7") 
enum AcVerticalAlignment
    {	acVerticalAlignmentBaseline	= 0,
	acVerticalAlignmentBottom	= 1,
	acVerticalAlignmentMiddle	= 2,
	acVerticalAlignmentTop	= 3
    } 	AcVerticalAlignment;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("691D9D8A-203B-46CF-A8BB-ED9BED4C8F9B") 
enum AcTextGenerationFlag
    {	acTextFlagBackward	= 2,
	acTextFlagUpsideDown	= 4
    } 	AcTextGenerationFlag;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("019486A1-2E2E-43E8-9C7B-6604C8CF31EE") 
enum AcSelect
    {	acSelectionSetWindow	= 0,
	acSelectionSetCrossing	= 1,
	acSelectionSetFence	= 2,
	acSelectionSetPrevious	= 3,
	acSelectionSetLast	= 4,
	acSelectionSetAll	= 5,
	acSelectionSetWindowPolygon	= 6,
	acSelectionSetCrossingPolygon	= 7
    } 	AcSelect;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1BCEDC2A-0EED-41D5-8911-782FBF35A29F") 
enum AcPatternType
    {	acHatchPatternTypeUserDefined	= 0,
	acHatchPatternTypePreDefined	= 1,
	acHatchPatternTypeCustomDefined	= 2
    } 	AcPatternType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("B6E1FA84-41F9-43DC-BEB3-82813E6FE836") 
enum AcLoopType
    {	acHatchLoopTypeDefault	= 0,
	acHatchLoopTypeExternal	= 1,
	acHatchLoopTypePolyline	= 2,
	acHatchLoopTypeDerived	= 4,
	acHatchLoopTypeTextbox	= 8
    } 	AcLoopType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9F3994E0-D06F-4AD3-941A-12EFD1E97055") 
enum AcHatchStyle
    {	acHatchStyleNormal	= 0,
	acHatchStyleOuter	= 1,
	acHatchStyleIgnore	= 2
    } 	AcHatchStyle;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("C0200D24-3E9B-47EC-8736-842406A8DA76") 
enum AcPolylineType
    {	acSimplePoly	= 0,
	acFitCurvePoly	= 1,
	acQuadSplinePoly	= 2,
	acCubicSplinePoly	= 3
    } 	AcPolylineType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("762EA8F7-06D5-4774-A059-2C8D0FB597F3") 
enum Ac3DPolylineType
    {	acSimple3DPoly	= 0,
	acQuadSpline3DPoly	= 1,
	acCubicSpline3DPoly	= 2
    } 	Ac3DPolylineType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("BA4BEA3F-C670-4F2B-B3B9-F769A3F7DC81") 
enum AcViewportSplitType
    {	acViewport2Horizontal	= 0,
	acViewport2Vertical	= 1,
	acViewport3Left	= 2,
	acViewport3Right	= 3,
	acViewport3Horizontal	= 4,
	acViewport3Vertical	= 5,
	acViewport3Above	= 6,
	acViewport3Below	= 7,
	acViewport4	= 8
    } 	AcViewportSplitType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("5D0D6694-2040-47DD-BBAD-0D1341FE385F") 
enum AcRegenType
    {	acActiveViewport	= 0,
	acAllViewports	= 1
    } 	AcRegenType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("122603BF-AFF9-4C8B-84A2-ED14563F4D02") 
enum AcBooleanType
    {	acUnion	= 0,
	acIntersection	= 1,
	acSubtraction	= 2
    } 	AcBooleanType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("87BD4272-75C8-49BA-A94B-7527E2A8E7C4") 
enum AcExtendOption
    {	acExtendNone	= 0,
	acExtendThisEntity	= 1,
	acExtendOtherEntity	= 2,
	acExtendBoth	= 3
    } 	AcExtendOption;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("E9EEEABB-57A7-4C15-8015-398A01D227C3") 
enum AcAngleUnits
    {	acDegrees	= 0,
	acDegreeMinuteSeconds	= 1,
	acGrads	= 2,
	acRadians	= 3
    } 	AcAngleUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("74F2B0FE-6F41-4286-8679-4AE48F791D31") 
enum AcUnits
    {	acDefaultUnits	= -1,
	acScientific	= 1,
	acDecimal	= 2,
	acEngineering	= 3,
	acArchitectural	= 4,
	acFractional	= 5
    } 	AcUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("BF0E6106-A59F-42FC-A964-2EE38FBADAF5") 
enum AcCoordinateSystem
    {	acWorld	= 0,
	acUCS	= 1,
	acDisplayDCS	= 2,
	acPaperSpaceDCS	= 3,
	acOCS	= 4
    } 	AcCoordinateSystem;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F4639B60-EF4A-496D-9593-81BCC4413995") 
enum AcMeasurementUnits
    {	acEnglish	= 0,
	acMetric	= 1
    } 	AcMeasurementUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("BB061350-6B1E-4136-B5B4-1ADCBEF8DDF4") 
enum AcXRefDemandLoad
    {	acDemandLoadDisabled	= 0,
	acDemandLoadEnabled	= 1,
	acDemandLoadEnabledWithCopy	= 2
    } 	AcXRefDemandLoad;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9287C104-7B09-4569-A6A3-A2833411CF07") 
enum AcPreviewMode
    {	acPartialPreview	= 0,
	acFullPreview	= 1
    } 	AcPreviewMode;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1FE6D0D6-8A20-4891-AF1D-D5CE8ED83267") 
enum AcPolymeshType
    {	acSimpleMesh	= 0,
	acQuadSurfaceMesh	= 5,
	acCubicSurfaceMesh	= 6,
	acBezierSurfaceMesh	= 8
    } 	AcPolymeshType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("996A232A-E249-4780-A1B0-4626D4AC3C1F") 
enum AcZoomScaleType
    {	acZoomScaledAbsolute	= 0,
	acZoomScaledRelative	= 1,
	acZoomScaledRelativePSpace	= 2
    } 	AcZoomScaleType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("55C49040-0BA2-40B2-B9CE-63445DE81B40") 
enum AcDragDisplayMode
    {	acDragDoNotDisplay	= 0,
	acDragDisplayOnRequest	= 1,
	acDragDisplayAutomatically	= 2
    } 	AcDragDisplayMode;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("5364A350-7CDA-4020-BCEA-ED6CAFA66586") 
enum AcARXDemandLoad
    {	acDemanLoadDisable	= 0,
	acDemandLoadOnObjectDetect	= 1,
	acDemandLoadCmdInvoke	= 2
    } 	AcARXDemandLoad;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("51D3D3D9-4281-4D3D-917A-CB0677C0248B") 
enum AcTextFontStyle
    {	acFontRegular	= 0,
	acFontItalic	= 1,
	acFontBold	= 2,
	acFontBoldItalic	= 3
    } 	AcTextFontStyle;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("05D14A8B-1EA0-4FD2-B05C-C36CBA7CE256") 
enum AcProxyImage
    {	acProxyNotShow	= 0,
	acProxyShow	= 1,
	acProxyBoundingBox	= 2
    } 	AcProxyImage;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9213F26B-83ED-440B-A120-B1B3158CB3AE") 
enum AcKeyboardPriority
    {	acKeyboardRunningObjSnap	= 0,
	acKeyboardEntry	= 1,
	acKeyboardEntryExceptScripts	= 2
    } 	AcKeyboardPriority;

#define	acAmericanEnglish	( "enu" )

#define	acAustralianEnglish	( "ena" )

#define	acBritishEnglishIse	( "ens" )

#define	acBritishEnglishIze	( "enz" )

#define	acCatalan	( "ca" )

#define	acCzech	( "cs" )

#define	acDanish	( "da" )

#define	acDutchPrim	( "nl" )

#define	acDutchSec	( "nls" )

#define	acFinnish	( "fi" )

#define	acFrenchUnaccentCap	( "fr" )

#define	acFrenchAccentCap	( "fra" )

#define	acGermanScharfesS	( "de" )

#define	acGermanDoppleS	( "ded" )

#define	acItalian	( "it" )

#define	acNorwegianBokmal	( "no" )

#define	acNorwegianNynorsk	( "non" )

#define	acPortugueseIberian	( "pt" )

#define	acPortugueseBrazilian	( "ptb" )

#define	acRussianInfrequentIo	( "ru" )

#define	acRussianFrequentIo	( "rui" )

#define	acSpanishUnaccentCap	( "es" )

#define	acSpanishAccentCap	( "esa" )

#define	acSwedish	( "sv" )

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("D361C8C4-F03A-4100-8F41-0CEBA3B820D8") 
enum AcMenuGroupType
    {	acBaseMenuGroup	= 0,
	acPartialMenuGroup	= 1
    } 	AcMenuGroupType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1D513208-4CB8-47A9-8ADC-B3D323D372CB") 
enum AcMenuFileType
    {	acMenuFileCompiled	= 0,
	acMenuFileSource	= 1
    } 	AcMenuFileType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("0E1DF0A0-B2A7-4DCC-8B19-47178BF34C8F") 
enum AcMenuItemType
    {	acMenuItem	= 0,
	acMenuSeparator	= 1,
	acMenuSubMenu	= 2
    } 	AcMenuItemType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("6CD38EF7-F703-46D7-A428-74CA81A82EBB") 
enum AcToolbarItemType
    {	acToolbarButton	= 0,
	acToolbarSeparator	= 1,
	acToolbarControl	= 2,
	acToolbarFlyout	= 3
    } 	AcToolbarItemType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("A8A1B708-D1C0-4075-9727-CF9336CB9971") 
enum AcToolbarDockStatus
    {	acToolbarDockTop	= 0,
	acToolbarDockBottom	= 1,
	acToolbarDockLeft	= 2,
	acToolbarDockRight	= 3,
	acToolbarFloating	= 4
    } 	AcToolbarDockStatus;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("C1DFB2BC-078B-4615-8A18-2D38BA2E8DBF") 
enum AcLineWeight
    {	acLnWt000	= 0,
	acLnWt005	= 5,
	acLnWt009	= 9,
	acLnWt013	= 13,
	acLnWt015	= 15,
	acLnWt018	= 18,
	acLnWt020	= 20,
	acLnWt025	= 25,
	acLnWt030	= 30,
	acLnWt035	= 35,
	acLnWt040	= 40,
	acLnWt050	= 50,
	acLnWt053	= 53,
	acLnWt060	= 60,
	acLnWt070	= 70,
	acLnWt080	= 80,
	acLnWt090	= 90,
	acLnWt100	= 100,
	acLnWt106	= 106,
	acLnWt120	= 120,
	acLnWt140	= 140,
	acLnWt158	= 158,
	acLnWt200	= 200,
	acLnWt211	= 211,
	acLnWtByLayer	= -1,
	acLnWtByBlock	= -2,
	acLnWtByLwDefault	= -3
    } 	AcLineWeight;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F8B91A70-6279-4597-A338-9CF3C7543FBD") 
enum AcWindowState
    {	acNorm	= 1,
	acMin	= ( acNorm + 1 ) ,
	acMax	= ( acMin + 1 ) 
    } 	AcWindowState;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("D95B31AE-0AE0-4D65-AAB8-7CAF248771C1") 
enum AcPlotPaperUnits
    {	acInches	= 0,
	acMillimeters	= ( acInches + 1 ) ,
	acPixels	= ( acMillimeters + 1 ) 
    } 	AcPlotPaperUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F5F3DE0A-680F-4CAF-9797-ACBE60DB0F31") 
enum AcPlotRotation
    {	ac0degrees	= 0,
	ac90degrees	= ( ac0degrees + 1 ) ,
	ac180degrees	= ( ac90degrees + 1 ) ,
	ac270degrees	= ( ac180degrees + 1 ) 
    } 	AcPlotRotation;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("67C94F55-B138-488B-A658-1C6FFA02D2CA") 
enum AcPlotType
    {	acDisplay	= 0,
	acExtents	= ( acDisplay + 1 ) ,
	acLimits	= ( acExtents + 1 ) ,
	acView	= ( acLimits + 1 ) ,
	acWindow	= ( acView + 1 ) ,
	acLayout	= ( acWindow + 1 ) 
    } 	AcPlotType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("66E39D85-AAF1-4929-8734-91CB35923FEC") 
enum AcPlotScale
    {	acScaleToFit	= 0,
	ac1_128in_1ft	= ( acScaleToFit + 1 ) ,
	ac1_64in_1ft	= ( ac1_128in_1ft + 1 ) ,
	ac1_32in_1ft	= ( ac1_64in_1ft + 1 ) ,
	ac1_16in_1ft	= ( ac1_32in_1ft + 1 ) ,
	ac3_32in_1ft	= ( ac1_16in_1ft + 1 ) ,
	ac1_8in_1ft	= ( ac3_32in_1ft + 1 ) ,
	ac3_16in_1ft	= ( ac1_8in_1ft + 1 ) ,
	ac1_4in_1ft	= ( ac3_16in_1ft + 1 ) ,
	ac3_8in_1ft	= ( ac1_4in_1ft + 1 ) ,
	ac1_2in_1ft	= ( ac3_8in_1ft + 1 ) ,
	ac3_4in_1ft	= ( ac1_2in_1ft + 1 ) ,
	ac1in_1ft	= ( ac3_4in_1ft + 1 ) ,
	ac3in_1ft	= ( ac1in_1ft + 1 ) ,
	ac6in_1ft	= ( ac3in_1ft + 1 ) ,
	ac1ft_1ft	= ( ac6in_1ft + 1 ) ,
	ac1_1	= ( ac1ft_1ft + 1 ) ,
	ac1_2	= ( ac1_1 + 1 ) ,
	ac1_4	= ( ac1_2 + 1 ) ,
	ac1_5	= ( ac1_4 + 1 ) ,
	ac1_8	= ( ac1_5 + 1 ) ,
	ac1_10	= ( ac1_8 + 1 ) ,
	ac1_16	= ( ac1_10 + 1 ) ,
	ac1_20	= ( ac1_16 + 1 ) ,
	ac1_30	= ( ac1_20 + 1 ) ,
	ac1_40	= ( ac1_30 + 1 ) ,
	ac1_50	= ( ac1_40 + 1 ) ,
	ac1_100	= ( ac1_50 + 1 ) ,
	ac2_1	= ( ac1_100 + 1 ) ,
	ac4_1	= ( ac2_1 + 1 ) ,
	ac8_1	= ( ac4_1 + 1 ) ,
	ac10_1	= ( ac8_1 + 1 ) ,
	ac100_1	= ( ac10_1 + 1 ) 
    } 	AcPlotScale;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("82EA4AF2-B0AE-4910-8D71-FA9591F7AEE9") 
enum AcAlignment
    {	acAlignmentLeft	= 0,
	acAlignmentCenter	= ( acAlignmentLeft + 1 ) ,
	acAlignmentRight	= ( acAlignmentCenter + 1 ) ,
	acAlignmentAligned	= ( acAlignmentRight + 1 ) ,
	acAlignmentMiddle	= ( acAlignmentAligned + 1 ) ,
	acAlignmentFit	= ( acAlignmentMiddle + 1 ) ,
	acAlignmentTopLeft	= ( acAlignmentFit + 1 ) ,
	acAlignmentTopCenter	= ( acAlignmentTopLeft + 1 ) ,
	acAlignmentTopRight	= ( acAlignmentTopCenter + 1 ) ,
	acAlignmentMiddleLeft	= ( acAlignmentTopRight + 1 ) ,
	acAlignmentMiddleCenter	= ( acAlignmentMiddleLeft + 1 ) ,
	acAlignmentMiddleRight	= ( acAlignmentMiddleCenter + 1 ) ,
	acAlignmentBottomLeft	= ( acAlignmentMiddleRight + 1 ) ,
	acAlignmentBottomCenter	= ( acAlignmentBottomLeft + 1 ) ,
	acAlignmentBottomRight	= ( acAlignmentBottomCenter + 1 ) 
    } 	AcAlignment;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("2A7F7797-EEC1-4FBE-B9D1-DE110D6B4042") AcColor ACAD_COLOR;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("B19A6974-BC0D-415E-8B90-C213D7076F4D") BSTR ACAD_LAYER;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("9F4949B8-FACD-44B0-8CFF-DA6123E322EC") BSTR ACAD_LTYPE;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("86FDE406-5825-4654-AA60-A9DAF79C5664") long ACAD_NULL;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("A98E2D89-E680-4646-87DE-3FBD4FB322FB") double ACAD_DISTANCE;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("029A6E55-007E-4428-8DB8-8F322C8E99D5") double ACAD_ANGLE;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("DA004D8F-28AF-4D92-A15C-1DA2B1B6E559") AcLineWeight ACAD_LWEIGHT;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("4FA1DBF9-F71D-480A-B7A0-107BB15AC383") double ACAD_NOUNITS;

typedef /* [public][uuid][helpcontext] */  DECLSPEC_UUID("6CC6ABC2-F3F8-4F12-9ABD-1EFB95A81B91") VARIANT ACAD_POINT;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("BC26E038-5060-48BC-A412-379A0FAC3167") 
enum AcLineSpacingStyle
    {	acLineSpacingStyleAtLeast	= 1,
	acLineSpacingStyleExactly	= 2
    } 	AcLineSpacingStyle;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("86D62DB7-DD92-4349-9ABA-4CE01CE10196") 
enum AcDimPrecision
    {	acDimPrecisionZero	= 0,
	acDimPrecisionOne	= ( acDimPrecisionZero + 1 ) ,
	acDimPrecisionTwo	= ( acDimPrecisionOne + 1 ) ,
	acDimPrecisionThree	= ( acDimPrecisionTwo + 1 ) ,
	acDimPrecisionFour	= ( acDimPrecisionThree + 1 ) ,
	acDimPrecisionFive	= ( acDimPrecisionFour + 1 ) ,
	acDimPrecisionSix	= ( acDimPrecisionFive + 1 ) ,
	acDimPrecisionSeven	= ( acDimPrecisionSix + 1 ) ,
	acDimPrecisionEight	= ( acDimPrecisionSeven + 1 ) 
    } 	AcDimPrecision;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F8C8F0A0-7EBE-4D74-980A-90F6D7A6A6FD") 
enum AcDimUnits
    {	acDimScientific	= 1,
	acDimDecimal	= ( acDimScientific + 1 ) ,
	acDimEngineering	= ( acDimDecimal + 1 ) ,
	acDimArchitecturalStacked	= ( acDimEngineering + 1 ) ,
	acDimFractionalStacked	= ( acDimArchitecturalStacked + 1 ) ,
	acDimArchitectural	= ( acDimFractionalStacked + 1 ) ,
	acDimFractional	= ( acDimArchitectural + 1 ) ,
	acDimWindowsDesktop	= ( acDimFractional + 1 ) 
    } 	AcDimUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("274499C2-9B74-41FA-8B9F-F6797F5EDD17") 
enum AcDimLUnits
    {	acDimLScientific	= 1,
	acDimLDecimal	= ( acDimLScientific + 1 ) ,
	acDimLEngineering	= ( acDimLDecimal + 1 ) ,
	acDimLArchitectural	= ( acDimLEngineering + 1 ) ,
	acDimLFractional	= ( acDimLArchitectural + 1 ) ,
	acDimLWindowsDesktop	= ( acDimLFractional + 1 ) 
    } 	AcDimLUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("54813096-C1A5-4F01-9042-AB65E1C013FB") 
enum AcDimArrowheadType
    {	acArrowDefault	= 0,
	acArrowClosedBlank	= 1,
	acArrowClosed	= 2,
	acArrowDot	= 3,
	acArrowArchTick	= 4,
	acArrowOblique	= 5,
	acArrowOpen	= 6,
	acArrowOrigin	= 7,
	acArrowOrigin2	= 8,
	acArrowOpen90	= 9,
	acArrowOpen30	= 10,
	acArrowDotSmall	= 11,
	acArrowDotBlank	= 12,
	acArrowSmall	= 13,
	acArrowBoxBlank	= 14,
	acArrowBoxFilled	= 15,
	acArrowDatumBlank	= 16,
	acArrowDatumFilled	= 17,
	acArrowIntegral	= 18,
	acArrowNone	= 19,
	acArrowUserDefined	= 20
    } 	AcDimArrowheadType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("79400A49-1AFF-4058-BA15-E32A8C3F9433") 
enum AcDimCenterType
    {	acCenterMark	= 0,
	acCenterLine	= ( acCenterMark + 1 ) ,
	acCenterNone	= ( acCenterLine + 1 ) 
    } 	AcDimCenterType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F88E214F-46B2-46E6-8938-7FD7E6C73F04") 
enum AcDimFit
    {	acTextAndArrows	= 0,
	acArrowsOnly	= ( acTextAndArrows + 1 ) ,
	acTextOnly	= ( acArrowsOnly + 1 ) ,
	acBestFit	= ( acTextOnly + 1 ) 
    } 	AcDimFit;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("D2DC2B5B-7DF0-413F-A4BD-7D14B97D4A4E") 
enum AcDimFractionType
    {	acHorizontal	= 0,
	acDiagonal	= ( acHorizontal + 1 ) ,
	acNotStacked	= ( acDiagonal + 1 ) 
    } 	AcDimFractionType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("E0879420-062F-4FE6-88DA-E6D1AF94F01D") 
enum AcDimArcLengthSymbol
    {	acSymInFront	= 0,
	acSymAbove	= ( acSymInFront + 1 ) ,
	acSymNone	= ( acSymAbove + 1 ) 
    } 	AcDimArcLengthSymbol;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("C2A37DF0-3224-4D3B-BEA9-122C8EA5DB48") 
enum AcDimHorizontalJustification
    {	acHorzCentered	= 0,
	acFirstExtensionLine	= ( acHorzCentered + 1 ) ,
	acSecondExtensionLine	= ( acFirstExtensionLine + 1 ) ,
	acOverFirstExtension	= ( acSecondExtensionLine + 1 ) ,
	acOverSecondExtension	= ( acOverFirstExtension + 1 ) 
    } 	AcDimHorizontalJustification;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("116378D2-BB8B-4BF1-9E2A-C22319FEC3B2") 
enum AcDimVerticalJustification
    {	acVertCentered	= 0,
	acAbove	= ( acVertCentered + 1 ) ,
	acOutside	= ( acAbove + 1 ) ,
	acJIS	= ( acOutside + 1 ) ,
	acUnder	= ( acJIS + 1 ) 
    } 	AcDimVerticalJustification;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("DD8D7F57-50E0-4933-B17A-B9343329756D") 
enum AcDimTextMovement
    {	acDimLineWithText	= 0,
	acMoveTextAddLeader	= ( acDimLineWithText + 1 ) ,
	acMoveTextNoLeader	= ( acMoveTextAddLeader + 1 ) 
    } 	AcDimTextMovement;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("02195C5D-E84B-4E4A-B59F-C31DE66CA942") 
enum AcDimToleranceMethod
    {	acTolNone	= 0,
	acTolSymmetrical	= ( acTolNone + 1 ) ,
	acTolDeviation	= ( acTolSymmetrical + 1 ) ,
	acTolLimits	= ( acTolDeviation + 1 ) ,
	acTolBasic	= ( acTolLimits + 1 ) 
    } 	AcDimToleranceMethod;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("8962419A-A098-4258-BA0C-73A87235613F") 
enum AcDimToleranceJustify
    {	acTolBottom	= 0,
	acTolMiddle	= ( acTolBottom + 1 ) ,
	acTolTop	= ( acTolMiddle + 1 ) 
    } 	AcDimToleranceJustify;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("53DC160A-44DC-4B0D-B814-A150F9D8B24A") 
enum AcViewportScale
    {	acVpScaleToFit	= 0,
	acVpCustomScale	= ( acVpScaleToFit + 1 ) ,
	acVp1_1	= ( acVpCustomScale + 1 ) ,
	acVp1_2	= ( acVp1_1 + 1 ) ,
	acVp1_4	= ( acVp1_2 + 1 ) ,
	acVp1_5	= ( acVp1_4 + 1 ) ,
	acVp1_8	= ( acVp1_5 + 1 ) ,
	acVp1_10	= ( acVp1_8 + 1 ) ,
	acVp1_16	= ( acVp1_10 + 1 ) ,
	acVp1_20	= ( acVp1_16 + 1 ) ,
	acVp1_30	= ( acVp1_20 + 1 ) ,
	acVp1_40	= ( acVp1_30 + 1 ) ,
	acVp1_50	= ( acVp1_40 + 1 ) ,
	acVp1_100	= ( acVp1_50 + 1 ) ,
	acVp2_1	= ( acVp1_100 + 1 ) ,
	acVp4_1	= ( acVp2_1 + 1 ) ,
	acVp8_1	= ( acVp4_1 + 1 ) ,
	acVp10_1	= ( acVp8_1 + 1 ) ,
	acVp100_1	= ( acVp10_1 + 1 ) ,
	acVp1_128in_1ft	= ( acVp100_1 + 1 ) ,
	acVp1_64in_1ft	= ( acVp1_128in_1ft + 1 ) ,
	acVp1_32in_1ft	= ( acVp1_64in_1ft + 1 ) ,
	acVp1_16in_1ft	= ( acVp1_32in_1ft + 1 ) ,
	acVp3_32in_1ft	= ( acVp1_16in_1ft + 1 ) ,
	acVp1_8in_1ft	= ( acVp3_32in_1ft + 1 ) ,
	acVp3_16in_1ft	= ( acVp1_8in_1ft + 1 ) ,
	acVp1_4in_1ft	= ( acVp3_16in_1ft + 1 ) ,
	acVp3_8in_1ft	= ( acVp1_4in_1ft + 1 ) ,
	acVp1_2in_1ft	= ( acVp3_8in_1ft + 1 ) ,
	acVp3_4in_1ft	= ( acVp1_2in_1ft + 1 ) ,
	acVp1in_1ft	= ( acVp3_4in_1ft + 1 ) ,
	acVp1and1_2in_1ft	= ( acVp1in_1ft + 1 ) ,
	acVp3in_1ft	= ( acVp1and1_2in_1ft + 1 ) ,
	acVp6in_1ft	= ( acVp3in_1ft + 1 ) ,
	acVp1ft_1ft	= ( acVp6in_1ft + 1 ) 
    } 	AcViewportScale;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("14F0255C-33A7-487A-8163-4994A6E484E1") 
enum AcISOPenWidth
    {	acPenWidth013	= 13,
	acPenWidth018	= 18,
	acPenWidth025	= 25,
	acPenWidth035	= 35,
	acPenWidth050	= 50,
	acPenWidth070	= 70,
	acPenWidth100	= 100,
	acPenWidth140	= 140,
	acPenWidth200	= 200,
	acPenWidthUnk	= -1
    } 	AcISOPenWidth;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("D7827BD2-9CE6-4E6F-A20C-1A0BD11A215E") 
enum AcSaveAsType
    {	acUnknown	= -1,
	acR12_dxf	= 1,
	acR13_dwg	= 4,
	acR13_dxf	= 5,
	acR14_dwg	= 8,
	acR14_dxf	= 9,
	ac2000_dwg	= 12,
	ac2000_dxf	= 13,
	ac2000_Template	= 14,
	ac2004_dwg	= 24,
	ac2004_dxf	= 25,
	ac2004_Template	= 26,
	ac2007_dwg	= 36,
	ac2007_dxf	= 37,
	ac2007_Template	= 38,
	acNative	= ac2007_dwg,
	acR15_dwg	= ac2000_dwg,
	acR15_dxf	= ac2000_dxf,
	acR15_Template	= ac2000_Template,
	acR18_dwg	= ac2004_dwg,
	acR18_dxf	= ac2004_dxf,
	acR18_Template	= ac2004_Template
    } 	AcSaveAsType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("D6760237-B6D1-4AC7-9B3D-9977A51296F1") 
enum AcPrinterSpoolAlert
    {	acPrinterAlwaysAlert	= 0,
	acPrinterAlertOnce	= ( acPrinterAlwaysAlert + 1 ) ,
	acPrinterNeverAlertLogOnce	= ( acPrinterAlertOnce + 1 ) ,
	acPrinterNeverAlert	= ( acPrinterNeverAlertLogOnce + 1 ) 
    } 	AcPrinterSpoolAlert;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("431954E3-17AD-45DA-8DC2-252917D6A46F") 
enum AcPlotPolicyForNewDwgs
    {	acPolicyNewDefault	= 0,
	acPolicyNewLegacy	= ( acPolicyNewDefault + 1 ) 
    } 	AcPlotPolicyForNewDwgs;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("91124033-FFA2-4BD7-9E22-B9E6A51D5C86") 
enum AcPlotPolicyForLegacyDwgs
    {	acPolicyLegacyDefault	= 0,
	acPolicyLegacyQuery	= ( acPolicyLegacyDefault + 1 ) ,
	acPolicyLegacyLegacy	= ( acPolicyLegacyQuery + 1 ) 
    } 	AcPlotPolicyForLegacyDwgs;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("58F84863-E943-4234-82CD-EA981D2CC54D") 
enum AcOleQuality
    {	acOQLineArt	= 0,
	acOQText	= ( acOQLineArt + 1 ) ,
	acOQGraphics	= ( acOQText + 1 ) ,
	acOQPhoto	= ( acOQGraphics + 1 ) ,
	acOQHighPhoto	= ( acOQPhoto + 1 ) 
    } 	AcOleQuality;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("3EB7A8AC-DACA-42C6-AD45-6D39E476CC7B") 
enum AcLoadPalette
    {	acPaletteByDrawing	= 0,
	acPaletteBySession	= ( acPaletteByDrawing + 1 ) 
    } 	AcLoadPalette;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("3CE3D739-D57D-43A7-9755-F36814D0319F") 
enum AcInsertUnits
    {	acInsertUnitsUnitless	= 0,
	acInsertUnitsInches	= ( acInsertUnitsUnitless + 1 ) ,
	acInsertUnitsFeet	= ( acInsertUnitsInches + 1 ) ,
	acInsertUnitsMiles	= ( acInsertUnitsFeet + 1 ) ,
	acInsertUnitsMillimeters	= ( acInsertUnitsMiles + 1 ) ,
	acInsertUnitsCentimeters	= ( acInsertUnitsMillimeters + 1 ) ,
	acInsertUnitsMeters	= ( acInsertUnitsCentimeters + 1 ) ,
	acInsertUnitsKilometers	= ( acInsertUnitsMeters + 1 ) ,
	acInsertUnitsMicroinches	= ( acInsertUnitsKilometers + 1 ) ,
	acInsertUnitsMils	= ( acInsertUnitsMicroinches + 1 ) ,
	acInsertUnitsYards	= ( acInsertUnitsMils + 1 ) ,
	acInsertUnitsAngstroms	= ( acInsertUnitsYards + 1 ) ,
	acInsertUnitsNanometers	= ( acInsertUnitsAngstroms + 1 ) ,
	acInsertUnitsMicrons	= ( acInsertUnitsNanometers + 1 ) ,
	acInsertUnitsDecimeters	= ( acInsertUnitsMicrons + 1 ) ,
	acInsertUnitsDecameters	= ( acInsertUnitsDecimeters + 1 ) ,
	acInsertUnitsHectometers	= ( acInsertUnitsDecameters + 1 ) ,
	acInsertUnitsGigameters	= ( acInsertUnitsHectometers + 1 ) ,
	acInsertUnitsAstronomicalUnits	= ( acInsertUnitsGigameters + 1 ) ,
	acInsertUnitsLightYears	= ( acInsertUnitsAstronomicalUnits + 1 ) ,
	acInsertUnitsParsecs	= ( acInsertUnitsLightYears + 1 ) 
    } 	AcInsertUnits;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("33762F25-1931-41F1-B09D-A4EDC30D817C") 
enum AcAlignmentPointAcquisition
    {	acAlignPntAcquisitionAutomatic	= 0,
	acAlignPntAcquisitionShiftToAcquire	= ( acAlignPntAcquisitionAutomatic + 1 ) 
    } 	AcAlignmentPointAcquisition;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("2314CCFC-4F3F-44E4-A101-54DAAD8F8174") 
enum AcInsertUnitsAction
    {	acInsertUnitsPrompt	= 0,
	acInsertUnitsAutoAssign	= ( acInsertUnitsPrompt + 1 ) 
    } 	AcInsertUnitsAction;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("610349EC-32AC-43CC-89E8-112D45AFD335") 
enum AcPlotPolicy
    {	acPolicyNamed	= 0,
	acPolicyLegacy	= ( acPolicyNamed + 1 ) 
    } 	AcPlotPolicy;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("AF1A3F39-EB87-4C96-9459-DA03F880C092") 
enum AcDrawingAreaShortCutMenu
    {	acNoDrawingAreaShortCutMenu	= 0,
	acUseDefaultDrawingAreaShortCutMenu	= ( acNoDrawingAreaShortCutMenu + 1 ) 
    } 	AcDrawingAreaShortCutMenu;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("481AF049-A798-4E6B-B899-76DEC686094F") 
enum AcDrawingAreaSCMDefault
    {	acRepeatLastCommand	= 0,
	acSCM	= ( acRepeatLastCommand + 1 ) 
    } 	AcDrawingAreaSCMDefault;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("AB564AB3-5DEC-4258-8B9D-E20F5485FA6F") 
enum AcDrawingAreaSCMEdit
    {	acEdRepeatLastCommand	= 0,
	acEdSCM	= ( acEdRepeatLastCommand + 1 ) 
    } 	AcDrawingAreaSCMEdit;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("BAEE6DCD-6232-45F5-A6F3-A0CDAC3D68C7") 
enum AcDrawingAreaSCMCommand
    {	acEnter	= 0,
	acEnableSCMOptions	= ( acEnter + 1 ) ,
	acEnableSCM	= ( acEnableSCMOptions + 1 ) 
    } 	AcDrawingAreaSCMCommand;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("415197FE-AC7E-493B-9C7C-9CF3B66E9A04") 
enum AcLayerStateMask
    {	acLsNone	= 0,
	acLsOn	= 0x1,
	acLsFrozen	= 0x2,
	acLsLocked	= 0x4,
	acLsPlot	= 0x8,
	acLsNewViewport	= 0x10,
	acLsColor	= 0x20,
	acLsLineType	= 0x40,
	acLsLineWeight	= 0x80,
	acLsPlotStyle	= 0x100,
	acLsAll	= 0xffff
    } 	AcLayerStateMask;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("CC21B083-40DA-4B5B-9A1E-9F72A6FE68A9") 
enum AcShadePlot
    {	acShadePlotAsDisplayed	= 0,
	acShadePlotWireframe	= ( acShadePlotAsDisplayed + 1 ) ,
	acShadePlotHidden	= ( acShadePlotWireframe + 1 ) ,
	acShadePlotRendered	= ( acShadePlotHidden + 1 ) 
    } 	AcShadePlot;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("710C0FFA-29D7-4794-9162-30E6B38BCD65") 
enum AcHatchObjectType
    {	acHatchObject	= 0,
	acGradientObject	= 1
    } 	AcHatchObjectType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F27F9A40-9A83-4CDE-A72D-B83AEE2CB929") 
enum AcGradientPatternType
    {	acPreDefinedGradient	= 0,
	acUserDefinedGradient	= 1
    } 	AcGradientPatternType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1E841973-7BB8-467C-A7D4-09B2EDFA8D6A") 
enum AcTableDirection
    {	acTableTopToBottom	= 0,
	acTableBottomToTop	= 1
    } 	AcTableDirection;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F50A42F0-AE20-4802-86EF-97328772DEF0") 
enum AcCellAlignment
    {	acTopLeft	= 1,
	acTopCenter	= 2,
	acTopRight	= 3,
	acMiddleLeft	= 4,
	acMiddleCenter	= 5,
	acMiddleRight	= 6,
	acBottomLeft	= 7,
	acBottomCenter	= 8,
	acBottomRight	= 9
    } 	AcCellAlignment;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("8E2410B4-33F8-4F80-9CF0-542434B7AC62") 
enum AcRowType
    {	acUnknownRow	= 0,
	acDataRow	= 1,
	acTitleRow	= 2,
	acHeaderRow	= 4
    } 	AcRowType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("53ED042F-3695-4BB9-B4C7-79ECB2FF0EDF") 
enum AcValueDataType
    {	acUnknownDataType	= 0,
	acLong	= ( 0x1 << 0 ) ,
	acDouble	= ( 0x1 << 1 ) ,
	acString	= ( 0x1 << 2 ) ,
	acDate	= ( 0x1 << 3 ) ,
	acPoint2d	= ( 0x1 << 4 ) ,
	acPoint3d	= ( 0x1 << 5 ) ,
	acObjectId	= ( 0x1 << 6 ) ,
	acBuffer	= ( 0x1 << 7 ) ,
	acResbuf	= ( 0x1 << 8 ) ,
	acGeneral	= ( 0x1 << 9 ) 
    } 	AcValueDataType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("A2D98D13-2847-4E3A-94AF-E78CFEA545C2") 
enum AcValueUnitType
    {	acUnitless	= 0,
	acUnitDistance	= ( 0x1 << 0 ) ,
	acUnitAngle	= ( 0x1 << 1 ) ,
	acUnitArea	= ( 0x1 << 2 ) ,
	acUnitVolume	= ( 0x1 << 3 ) 
    } 	AcValueUnitType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("CD794AB1-19AF-499F-89CC-2E6EE23E2414") 
enum AcParseOption
    {	acParseOptionNone	= 0,
	acSetDefaultFormat	= ( 0x1 << 0 ) ,
	acPreserveMtextFormat	= ( 0x1 << 1 ) 
    } 	AcParseOption;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9E9CB15C-F028-4516-8A5E-487E95E1AEFF") 
enum AcFormatOption
    {	kFormatOptionNone	= 0,
	acForEditing	= ( 0x1 << 0 ) ,
	acForExpression	= ( 0x1 << 1 ) ,
	acUseMaximumPrecision	= ( 0x1 << 2 ) ,
	acIgnoreMtextFormat	= ( 0x1 << 3 ) 
    } 	AcFormatOption;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1EEEC7AC-996D-4A34-B81C-FEF5314BBBC7") 
enum AcGridLineType
    {	acInvalidGridLine	= 0,
	acHorzTop	= 1,
	acHorzInside	= 2,
	acHorzBottom	= 4,
	acVertLeft	= 8,
	acVertInside	= 0x10,
	acVertRight	= 0x20
    } 	AcGridLineType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("AE22B652-3177-4CC6-B5C7-3B3BB192AFA0") 
enum AcCellType
    {	acUnknownCell	= 0,
	acTextCell	= 1,
	acBlockCell	= 2
    } 	AcCellType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("3C7CA153-2011-4E26-92C7-D995368AA624") 
enum AcCellEdgeMask
    {	acTopMask	= 1,
	acRightMask	= 2,
	acBottomMask	= 4,
	acLeftMask	= 8
    } 	AcCellEdgeMask;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("B623F9D6-30A0-45F5-A64B-1B300C359C6F") 
enum AcRotationAngle
    {	acDegreesUnknown	= -1,
	acDegrees000	= 0,
	acDegrees090	= 1,
	acDegrees180	= 2,
	acDegrees270	= 3
    } 	AcRotationAngle;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("EC9A3904-6CD5-4929-9F51-0BF7AF25AC7E") 
enum AcMergeCellStyleOption
    {	acMergeCellStyleNone	= 0,
	acMergeCellStyleCopyDuplicates	= 0x1,
	acMergeCellStyleOverwriteDuplicates	= 0x2,
	acMergeCellStyleConvertDuplicatesToOverrides	= 0x4,
	acMergeCellStyleIgnoreNewStyles	= 0x8
    } 	AcMergeCellStyleOption;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("FCA8436E-3B06-4413-BE30-0424DEF578DF") 
enum AcSelectType
    {	acTableSelectWindow	= 1,
	acTableSelectCrossing	= 2
    } 	AcSelectType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9B5B2420-8504-48DF-A38B-528DCB405F64") 
enum AcOleType
    {	acOTLink	= 1,
	acOTEmbedded	= 2,
	acOTStatic	= 3
    } 	AcOleType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("87ABF48C-325F-4030-8C5E-1D12081627FF") 
enum AcOlePlotQuality
    {	acOPQMonochrome	= 0,
	acOPQLowGraphics	= ( acOPQMonochrome + 1 ) ,
	acOPQHighGraphics	= ( acOPQLowGraphics + 1 ) 
    } 	AcOlePlotQuality;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("85C730AB-33C1-476E-A07A-5860381CA3D5") 
enum AcTableStyleOverrides
    {	acTitleSuppressed	= 1,
	acHeaderSuppressed	= 2,
	acFlowDirection	= 3,
	acHorzCellMargin	= 4,
	acVertCellMargin	= 5,
	acTitleRowColor	= 6,
	acHeaderRowColor	= 7,
	acDataRowColor	= 8,
	acTitleRowFillNone	= 9,
	acHeaderRowFillNone	= 10,
	acDataRowFillNone	= 11,
	acTitleRowFillColor	= 12,
	acHeaderRowFillColor	= 13,
	acDataRowFillColor	= 14,
	acTitleRowAlignment	= 15,
	acHeaderRowAlignment	= 16,
	acDataRowAlignment	= 17,
	acTitleRowTextStyle	= 18,
	acHeaderRowTextStyle	= 19,
	acDataRowTextStyle	= 20,
	acTitleRowTextHeight	= 21,
	acHeaderRowTextHeight	= 22,
	acDataRowTextHeight	= 23,
	acTitleRowDataType	= 24,
	acHeaderRowDataType	= 25,
	acDataRowDataType	= 26,
	acTitleHorzTopColor	= 40,
	acTitleHorzInsideColor	= 41,
	acTitleHorzBottomColor	= 42,
	acTitleVertLeftColor	= 43,
	acTitleVertInsideColor	= 44,
	acTitleVertRightColor	= 45,
	acHeaderHorzTopColor	= 46,
	acHeaderHorzInsideColor	= 47,
	acHeaderHorzBottomColor	= 48,
	acHeaderVertLeftColor	= 49,
	acHeaderVertInsideColor	= 50,
	acHeaderVertRightColor	= 51,
	acDataHorzTopColor	= 52,
	acDataHorzInsideColor	= 53,
	acDataHorzBottomColor	= 54,
	acDataVertLeftColor	= 55,
	acDataVertInsideColor	= 56,
	acDataVertRightColor	= 57,
	acTitleHorzTopLineWeight	= 70,
	acTitleHorzInsideLineWeight	= 71,
	acTitleHorzBottomLineWeight	= 72,
	acTitleVertLeftLineWeight	= 73,
	acTitleVertInsideLineWeight	= 74,
	acTitleVertRightLineWeight	= 75,
	acHeaderHorzTopLineWeight	= 76,
	acHeaderHorzInsideLineWeight	= 77,
	acHeaderHorzBottomLineWeight	= 78,
	acHeaderVertLeftLineWeight	= 79,
	acHeaderVertInsideLineWeight	= 80,
	acHeaderVertRightLineWeight	= 81,
	acDataHorzTopLineWeight	= 82,
	acDataHorzInsideLineWeight	= 83,
	acDataHorzBottomLineWeight	= 84,
	acDataVertLeftLineWeight	= 85,
	acDataVertInsideLineWeight	= 86,
	acDataVertRightLineWeight	= 87,
	acTitleHorzTopVisibility	= 100,
	acTitleHorzInsideVisibility	= 101,
	acTitleHorzBottomVisibility	= 102,
	acTitleVertLeftVisibility	= 103,
	acTitleVertInsideVisibility	= 104,
	acTitleVertRightVisibility	= 105,
	acHeaderHorzTopVisibility	= 106,
	acHeaderHorzInsideVisibility	= 107,
	acHeaderHorzBottomVisibility	= 108,
	acHeaderVertLeftVisibility	= 109,
	acHeaderVertInsideVisibility	= 110,
	acHeaderVertRightVisibility	= 111,
	acDataHorzTopVisibility	= 112,
	acDataHorzInsideVisibility	= 113,
	acDataHorzBottomVisibility	= 114,
	acDataVertLeftVisibility	= 115,
	acDataVertInsideVisibility	= 116,
	acDataVertRightVisibility	= 117,
	acCellAlign	= 130,
	acCellBackgroundFillNone	= 131,
	acCellBackgroundColor	= 132,
	acCellContentColor	= 133,
	acCellTextStyle	= 134,
	acCellTextHeight	= 135,
	acCellTopGridColor	= 136,
	acCellRightGridColor	= 137,
	acCellBottomGridColor	= 138,
	acCellLeftGridColor	= 139,
	acCellTopGridLineWeight	= 140,
	acCellRightGridLineWeight	= 141,
	acCellBottomGridLineWeight	= 142,
	acCellLeftGridLineWeight	= 143,
	acCellTopVisibility	= 144,
	acCellRightVisibility	= 145,
	acCellBottomVisibility	= 146,
	acCellLeftVisibility	= 147,
	acCellDataType	= 148
    } 	AcTableStyleOverrides;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("76378DA2-C38C-4FF9-A39A-5E0CCEFF513E") 
enum AcMLineJustification
    {	acTop	= 0,
	acZero	= 1,
	acBottom	= 2
    } 	AcMLineJustification;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("28C72BFA-4953-4F7A-B2C0-1D25F736D60B") 
enum AcBlockScaling
    {	acAny	= 0,
	acUniform	= 1
    } 	AcBlockScaling;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("82B4BF8F-2311-475B-BAB0-324AA0C3DCBB") 
enum AcDynamicBlockReferencePropertyUnitsType
    {	acNoUnits	= 0,
	acAngular	= 1,
	acDistance	= 2,
	acArea	= 3
    } 	AcDynamicBlockReferencePropertyUnitsType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("DC6A2394-7C61-452B-B566-FE9A9192831A") 
enum AcSectionState
    {	acSectionStatePlane	= ( 0x1 << 0 ) ,
	acSectionStateBoundary	= ( 0x1 << 1 ) ,
	acSectionStateVolume	= ( 0x1 << 2 ) 
    } 	AcSectionState;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("6E873081-FFB0-425A-8419-8F3AA06563E2") 
enum AcSectionSubItem
    {	acSectionSubItemkNone	= 0,
	acSectionSubItemSectionLine	= ( 0x1 << 0 ) ,
	acSectionSubItemSectionLineTop	= ( 0x1 << 1 ) ,
	acSectionSubItemSectionLineBottom	= ( 0x1 << 2 ) ,
	acSectionSubItemBackLine	= ( 0x1 << 3 ) ,
	acSectionSubItemBackLineTop	= ( 0x1 << 4 ) ,
	acSectionSubItemBackLineBottom	= ( 0x1 << 5 ) ,
	acSectionSubItemVerticalLineTop	= ( 0x1 << 6 ) ,
	acSectionSubItemVerticalLineBottom	= ( 0x1 << 7 ) 
    } 	AcSectionSubItem;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("A6E8F2EA-08C4-45CA-B3C9-23590AB8C1EF") 
enum AcSectionType
    {	acSectionTypeLiveSection	= ( 0x1 << 0 ) ,
	acSectionType2dSection	= ( 0x1 << 1 ) ,
	acSectionType3dSection	= ( 0x1 << 2 ) 
    } 	AcSectionType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("B44EB433-F35D-485D-9650-7523FCC4FB59") 
enum AcSectionGeneration
    {	acSectionGenerationSourceAllObjects	= ( 0x1 << 0 ) ,
	acSectionGenerationSourceSelectedObjects	= ( 0x1 << 1 ) ,
	acSectionGenerationDestinationNewBlock	= ( 0x1 << 4 ) ,
	acSectionGenerationDestinationReplaceBlock	= ( 0x1 << 5 ) ,
	acSectionGenerationDestinationFile	= ( 0x1 << 6 ) 
    } 	AcSectionGeneration;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("2F8A875C-7E61-44BF-A4B6-21C4C9E30AF9") 
enum AcHelixConstrainType
    {	acTurnHeight	= 0,
	acTurns	= 1,
	acHeight	= 2
    } 	AcHelixConstrainType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("87AA15D9-4116-49D3-8AC6-29DD8DF10F7F") 
enum AcShadowDisplayType
    {	acCastsAndReceivesShadows	= 0,
	acCastsShadows	= 1,
	acReceivesShadows	= 2,
	acIgnoreShadows	= 3
    } 	AcShadowDisplayType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("66E0C3D8-3A39-435F-BDAD-F10679E0B153") 
enum AcLoftedSurfaceNormalType
    {	acRuled	= 0,
	acSmooth	= 1,
	acFirstNormal	= 2,
	acLastNormal	= 3,
	acEndsNormal	= 4,
	acAllNormal	= 5,
	acUseDraftAngles	= 6
    } 	AcLoftedSurfaceNormalType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("F07370F9-1841-41CA-902E-9815474CDC60") 
enum AcHelixTwistType
    {	acCCW	= 0,
	acCW	= 1
    } 	AcHelixTwistType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("B511B197-EB60-4351-902E-F4714EB164D9") 
enum AcUnderlayLayerOverrideType
    {	acNoOverrides	= 0,
	acApplied	= 1
    } 	AcUnderlayLayerOverrideType;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("860F36AF-744A-465F-B094-87EEA66638FD") 
enum AcTableFlowDirection
    {	acTableFlowRight	= 0x1,
	acTableFlowDownOrUp	= 0x2,
	acTableFlowLeft	= 0x4
    } 	AcTableFlowDirection;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("D493BA13-ED06-45B2-8D33-B35A95D7E904") 
enum AcCellMargin
    {	acCellMarginTop	= 0x1,
	acCellMarginLeft	= 0x2,
	acCellMarginBottom	= 0x4,
	acCellMarginRight	= 0x8,
	acCellMarginHorzSpacing	= 0x10,
	acCellMarginVertSpacing	= 0x20
    } 	AcCellMargin;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("EBB41DE7-8C80-4137-A6CF-78EE328B08BE") 
enum AcCellContentLayout
    {	acCellContentLayoutFlow	= 0x1,
	acCellContentLayoutStackedHorizontal	= 0x2,
	acCellContentLayoutStackedVertical	= 0x4
    } 	AcCellContentLayout;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("9C35547A-DEB2-47AB-AEBD-BA4E0EA025B0") 
enum AcCellProperty
    {	acInvalidCellProperty	= 0,
	acLock	= ( 0x1 << 0 ) ,
	acDataType	= ( 0x1 << 1 ) ,
	acDataFormat	= ( 0x1 << 2 ) ,
	acRotation	= ( 0x1 << 3 ) ,
	acScale	= ( 0x1 << 4 ) ,
	acAlignmentProperty	= ( 0x1 << 5 ) ,
	acContentColor	= ( 0x1 << 6 ) ,
	acBackgroundColor	= ( 0x1 << 7 ) ,
	acTextStyle	= ( 0x1 << 8 ) ,
	acTextHeight	= ( 0x1 << 9 ) ,
	acMarginLeft	= ( 0x1 << 10 ) ,
	acMarginTop	= ( 0x1 << 11 ) ,
	acMarginRight	= ( 0x1 << 12 ) ,
	acMarginBottom	= ( 0x1 << 13 ) ,
	acEnableBackgroundColor	= ( 0x1 << 14 ) ,
	acAutoScale	= ( 0x1 << 15 ) ,
	acMergeAll	= ( 0x1 << 16 ) ,
	acFlowDirBtoT	= ( 0x1 << 17 ) ,
	acContentLayout	= ( 0x1 << 18 ) ,
	acDataTypeAndFormat	= ( acDataType | acDataFormat ) ,
	acContentProperties	= ( ( ( ( ( ( ( ( acDataType | acDataFormat )  | acRotation )  | acScale )  | acAlignmentProperty )  | acContentColor )  | acTextStyle )  | acTextHeight )  | acAutoScale ) ,
	acBitProperties	= ( ( ( acEnableBackgroundColor | acAutoScale )  | acMergeAll )  | acFlowDirBtoT ) ,
	acAllCellProperties	= ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( acLock | acDataType )  | acDataFormat )  | acRotation )  | acScale )  | acAlignmentProperty )  | acContentColor )  | acBackgroundColor )  | acTextStyle )  | acTextHeight )  | acMarginLeft )  | acMarginTop )  | acMarginRight )  | acMarginBottom )  | acEnableBackgroundColor )  | acAutoScale )  | acMergeAll )  | acFlowDirBtoT )  | acContentLayout ) 
    } 	AcCellProperty;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("287A1E23-CA94-410E-AA1C-77BE1BA0E6F5") 
enum AcGridLineStyle
    {	acGridLineStyleSingle	= 1,
	acGridLineStyleDouble	= 2
    } 	AcGridLineStyle;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("0C5DA888-F1B7-4EA1-A3BD-4ACA3ECB6672") 
enum AcDataLinkUpdateDirection
    {	acUpdateDataFromSource	= 0x1,
	acUpdateSourceFromData	= 0x2
    } 	AcDataLinkUpdateDirection;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("C0432A1D-3703-4984-93A9-E7A62E06E423") 
enum AcDataLinkUpdateOption
    {	acUpdateOptionNone	= 0,
	acUpdateOptionOverwriteContentModifiedAfterUpdate	= 0x20000,
	acUpdateOptionOverwriteFormatModifiedAfterUpdate	= 0x40000,
	acUpdateOptionUpdateFullSourceRange	= 0x80000,
	acUpdateOptionIncludeXrefs	= 0x100000
    } 	AcDataLinkUpdateOption;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("8337C06A-D4AC-4C15-8004-8DB99E660AC4") 
enum AcCellContentType
    {	acCellContentTypeUnknown	= 0,
	acCellContentTypeValue	= ( 0x1 << 0 ) ,
	acCellContentTypeField	= ( 0x1 << 1 ) ,
	acCellContentTypeBlock	= ( 0x1 << 2 ) 
    } 	AcCellContentType;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("1055DBFD-7B7D-4985-9A39-240D6081B24A") 
enum AcCellState
    {	acCellStateNone	= 0,
	acCellStateContentLocked	= 0x1,
	acCellStateContentReadOnly	= 0x2,
	acCellStateFormatLocked	= 0x4,
	acCellStateFormatReadOnly	= 0x8,
	acCellStateLinked	= 0x10,
	acCellStateContentModified	= 0x20,
	acCellStateFormatModified	= 0x40
    } 	AcCellState;

typedef /* [v1_enum][uuid] */  DECLSPEC_UUID("87DB9AF5-9A20-46E3-9B91-06B49807E682") 
enum AcCellOption
    {	kCellOptionNone	= 0,
	kInheritCellFormat	= 0x1
    } 	AcCellOption;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("98D831DE-CAAC-4E0E-9667-C54E7263A6A8") 
enum AcTextAttachmentType
    {	acAttachmentTopOfTop	= 0,
	acAttachmentMiddleOfTop	= 1,
	acAttachmentBottomOfTop	= 2,
	acAttachmentBottomOfTopLine	= 3,
	acAttachmentMiddle	= 4,
	acAttachmentMiddleOfBottom	= 5,
	acAttachmentBottomOfBottom	= 6,
	acAttachmentBottomLine	= 7,
	acAttachmentAllLine	= 8
    } 	AcTextAttachmentType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("89D6D064-FB4D-4030-AF21-A1E65F1ED94D") 
enum AcMLeaderType
    {	acStraightLeader	= 1,
	acSplineLeader	= 2,
	acInVisibleLeader	= 0
    } 	AcMLeaderType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("293510DF-0106-4A09-9008-5BE4EDAB42DC") 
enum AcMLeaderContentType
    {	acNoneContent	= 0,
	acBlockContent	= 1,
	acMTextContent	= 2
    } 	AcMLeaderContentType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("A6EAB731-8B00-485B-A0AC-B541E5856C96") 
enum AcTextAlignmentType
    {	acLeftAlignment	= 0,
	acCenterAlignment	= 1,
	acRightAlignment	= 2
    } 	AcTextAlignmentType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9A54EB18-4791-4F04-B6C5-82D43A7051CE") 
enum AcTextAngleType
    {	acInsertAngle	= 0,
	acHorizontalAngle	= 1,
	acAlwaysRightReadingAngle	= 2
    } 	AcTextAngleType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("72794339-4681-433A-8F4F-03F4E090B91F") 
enum AcBlockConnectionType
    {	acConnectExtents	= 0,
	acConnectBase	= 1
    } 	AcBlockConnectionType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("5EA99C30-91C9-4EC1-815A-BBC08A280A71") 
enum AcPredefBlockType
    {	acBlockImperial	= 0,
	acBlockSlot	= 1,
	acBlockCircle	= 2,
	acBlockBox	= 3,
	acBlockHexagon	= 4,
	acBlockTriangle	= 5,
	acBlockUserDefined	= 6
    } 	AcPredefBlockType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("2D8A9641-3879-48D2-A036-013D30930C80") 
enum AcDrawLeaderOrderType
    {	acDrawLeaderHeadFirst	= 0,
	acDrawLeaderTailFirst	= 1
    } 	AcDrawLeaderOrderType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("E0A10A09-638B-4BDF-B521-24D696061436") 
enum AcDrawMLeaderOrderType
    {	acDrawContentFirst	= 0,
	acDrawLeaderFirst	= 1
    } 	AcDrawMLeaderOrderType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("1DD8A563-2E16-4B81-9905-FE2965EA64BD") 
enum AcSegmentAngleType
    {	acDegreesAny	= 0,
	acDegrees15	= 1,
	acDegrees30	= 2,
	acDegrees45	= 3,
	acDegrees60	= 4,
	acDegrees90	= 6,
	acDegreesHorz	= 12
    } 	AcSegmentAngleType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("57d5c98e-6992-419a-879e-fd4e466206b2") 
enum AcTextAttachmentDirection
    {	acAttachmentHorizontal	= 0,
	acAttachmentVertical	= 1
    } 	AcTextAttachmentDirection;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("9a5918ec-e2e3-4223-a55d-12076a0cf3fa") 
enum AcVerticalTextAttachmentType
    {	acAttachmentCenter	= 0,
	acAttachmentLinedCenter	= 1
    } 	AcVerticalTextAttachmentType;

typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("656CEC0C-7E36-46ba-8D5E-F2C048525D62") 
enum AcMeshCreaseType
    {	acNoneCrease	= 0,
	acAlwaysCrease	= 1,
	acCreaseByLevel	= 2
    } 	AcMeshCreaseType;

#pragma once







typedef /* [v1_enum][uuid][helpcontext] */  DECLSPEC_UUID("7ACED4FE-6935-4BF8-BF8D-0EC2F006D3B6") 
enum AcColorMethod
    {	acColorMethodByLayer	= 192,
	acColorMethodByBlock	= 193,
	acColorMethodByRGB	= 194,
	acColorMethodByACI	= 195,
	acColorMethodForeground	= 197
    } 	AcColorMethod;


typedef /* [helpcontext][uuid] */  DECLSPEC_UUID("2024EFF1-0789-4595-BCD8-408E7F346D49") 
enum __MIDL___MIDL_itf_axauto_0001_0117_0001
    {	ACADSECURITYPARAMS_ENCRYPT_DATA	= 0x1,
	ACADSECURITYPARAMS_ENCRYPT_PROPS	= 0x2,
	ACADSECURITYPARAMS_SIGN_DATA	= 0x10,
	ACADSECURITYPARAMS_ADD_TIMESTAMP	= 0x20
    } 	AcadSecurityParamsType;

typedef /* [helpcontext][uuid] */  DECLSPEC_UUID("5928B5DB-EA00-497B-86D5-E1121694EFE0") 
enum __MIDL___MIDL_itf_axauto_0001_0117_0002
    {	ACADSECURITYPARAMS_ALGID_RC4	= 0x6801
    } 	AcadSecurityParamsConstants;


DEFINE_GUID(LIBID_AXDBLib,0xFFC2A8DB,0xA497,0x4087,0x94,0x1C,0xC5,0xB5,0x46,0x22,0x37,0xEA);

#ifndef __IAcadObject_INTERFACE_DEFINED__
#define __IAcadObject_INTERFACE_DEFINED__

/* interface IAcadObject */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadObject,0x425F38BA,0x456A,0x4937,0x88,0x25,0xBE,0xA0,0x6D,0x12,0xDA,0xA2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("425F38BA-456A-4937-8825-BEA06D12DAA2")
    IAcadObject : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Handle( 
            /* [retval][out] */ BSTR *Handle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectName( 
            /* [retval][out] */ BSTR *ObjectName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetXData( 
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetXData( 
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Delete( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectID( 
            /* [retval][out] */ LONG_PTR *ObjectId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *ApplicationObject) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Database( 
            /* [retval][out] */ IAcadDatabase **pDatabase) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasExtensionDictionary( 
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetExtensionDictionary( 
            /* [retval][out] */ IAcadDictionary **pExtDictionary) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_OwnerID( 
            /* [retval][out] */ LONG_PTR *OwnerId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Document( 
            /* [retval][out] */ LPDISPATCH *pDocument) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT STDMETHODCALLTYPE Erase( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectID32( 
            /* [retval][out] */ LONG *ObjectId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_OwnerID32( 
            /* [retval][out] */ LONG *OwnerId) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadObject * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadObject * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadObject * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadObject * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadObject * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadObject * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadObject * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadObject * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadObject * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadObject * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadObject * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadObject * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadObject * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadObject * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadObject * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadObject * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadObject * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadObject * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadObject * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadObject * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadObject * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadObject * This,
            /* [retval][out] */ LONG *OwnerId);
        
        END_INTERFACE
    } IAcadObjectVtbl;

    interface IAcadObject
    {
        CONST_VTBL struct IAcadObjectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadObject_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadObject_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadObject_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadObject_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadObject_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadObject_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadObject_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadObject_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadObject_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadObject_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadObject_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadObject_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadObject_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadObject_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadObject_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadObject_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadObject_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadObject_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadObject_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadObject_INTERFACE_DEFINED__ */


#ifndef __IAcadDictionary_INTERFACE_DEFINED__
#define __IAcadDictionary_INTERFACE_DEFINED__

/* interface IAcadDictionary */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDictionary,0xD5551E84,0xC9C8,0x4939,0x81,0x7B,0x63,0xDD,0x7C,0xE8,0x0C,0xAF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D5551E84-C9C8-4939-817B-63DD7CE80CAF")
    IAcadDictionary : public IAcadObject
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE AddObject( 
            /* [in] */ BSTR Keyword,
            /* [in] */ BSTR ObjectName,
            /* [retval][out] */ IAcadObject **pNewObj) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE GetName( 
            /* [in] */ IAcadObject *Object,
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE GetObject( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadObject **pObj) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Remove( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadObject **pObj) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Rename( 
            /* [in] */ BSTR OldName,
            /* [in] */ BSTR NewName) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Replace( 
            /* [in] */ BSTR OldName,
            /* [in] */ IAcadObject *pObj) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadObject **pItem) = 0;
        
        virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE AddXRecord( 
            /* [in] */ BSTR Keyword,
            /* [retval][out] */ IAcadXRecord **pNewXRecord) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDictionaryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDictionary * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDictionary * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDictionary * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDictionary * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDictionary * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDictionary * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDictionary * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDictionary * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDictionary * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDictionary * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDictionary * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDictionary * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDictionary * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDictionary * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDictionary * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDictionary * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDictionary * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDictionary * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDictionary * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDictionary * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDictionary * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDictionary * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadDictionary * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadDictionary * This,
            /* [in] */ BSTR newVal);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddObject )( 
            IAcadDictionary * This,
            /* [in] */ BSTR Keyword,
            /* [in] */ BSTR ObjectName,
            /* [retval][out] */ IAcadObject **pNewObj);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetName )( 
            IAcadDictionary * This,
            /* [in] */ IAcadObject *Object,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetObject )( 
            IAcadDictionary * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadObject **pObj);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Remove )( 
            IAcadDictionary * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadObject **pObj);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rename )( 
            IAcadDictionary * This,
            /* [in] */ BSTR OldName,
            /* [in] */ BSTR NewName);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Replace )( 
            IAcadDictionary * This,
            /* [in] */ BSTR OldName,
            /* [in] */ IAcadObject *pObj);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadDictionary * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadObject **pItem);
        
        /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadDictionary * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadDictionary * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddXRecord )( 
            IAcadDictionary * This,
            /* [in] */ BSTR Keyword,
            /* [retval][out] */ IAcadXRecord **pNewXRecord);
        
        END_INTERFACE
    } IAcadDictionaryVtbl;

    interface IAcadDictionary
    {
        CONST_VTBL struct IAcadDictionaryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDictionary_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDictionary_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDictionary_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDictionary_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDictionary_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDictionary_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDictionary_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDictionary_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDictionary_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDictionary_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDictionary_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDictionary_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDictionary_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDictionary_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDictionary_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDictionary_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDictionary_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDictionary_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDictionary_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDictionary_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDictionary_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDictionary_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDictionary_get_Name(This,pVal)	\
    ( (This)->lpVtbl -> get_Name(This,pVal) ) 

#define IAcadDictionary_put_Name(This,newVal)	\
    ( (This)->lpVtbl -> put_Name(This,newVal) ) 

#define IAcadDictionary_AddObject(This,Keyword,ObjectName,pNewObj)	\
    ( (This)->lpVtbl -> AddObject(This,Keyword,ObjectName,pNewObj) ) 

#define IAcadDictionary_GetName(This,Object,bstrName)	\
    ( (This)->lpVtbl -> GetName(This,Object,bstrName) ) 

#define IAcadDictionary_GetObject(This,Name,pObj)	\
    ( (This)->lpVtbl -> GetObject(This,Name,pObj) ) 

#define IAcadDictionary_Remove(This,Name,pObj)	\
    ( (This)->lpVtbl -> Remove(This,Name,pObj) ) 

#define IAcadDictionary_Rename(This,OldName,NewName)	\
    ( (This)->lpVtbl -> Rename(This,OldName,NewName) ) 

#define IAcadDictionary_Replace(This,OldName,pObj)	\
    ( (This)->lpVtbl -> Replace(This,OldName,pObj) ) 

#define IAcadDictionary_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadDictionary_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadDictionary_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadDictionary_AddXRecord(This,Keyword,pNewXRecord)	\
    ( (This)->lpVtbl -> AddXRecord(This,Keyword,pNewXRecord) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDictionary_INTERFACE_DEFINED__ */


#ifndef __IAcadEntity_INTERFACE_DEFINED__
#define __IAcadEntity_INTERFACE_DEFINED__

/* interface IAcadEntity */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadEntity,0x3F403358,0x8F13,0x495C,0x8B,0xFF,0x12,0x32,0x8A,0x1F,0x38,0x23);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3F403358-8F13-495C-8BFF-12328A1F3823")
    IAcadEntity : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrueColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TrueColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Layer( 
            /* [in] */ BSTR Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinetypeScale( 
            /* [in] */ ACAD_NOUNITS ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL *bVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ VARIANT_BOOL bVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ArrayPolar( 
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ArrayRectangular( 
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Highlight( 
            /* [in] */ VARIANT_BOOL HighlightFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Copy( 
            /* [retval][out] */ LPDISPATCH *pCopyObj) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Move( 
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Rotate( 
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Rotate3D( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Mirror( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Mirror3D( 
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ScaleEntity( 
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE TransformBy( 
            /* [in] */ VARIANT TransformationMatrix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Update( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBoundingBox( 
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IntersectWith( 
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_PlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_PlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Lineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Lineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Hyperlinks( 
            /* [retval][out] */ IAcadHyperlinks **HyperLinks) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Material( 
            /* [retval][out] */ BSTR *Material) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Material( 
            /* [in] */ BSTR Material) = 0;
        
        virtual /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_EntityName( 
            /* [retval][out] */ BSTR *EntityName) = 0;
        
        virtual /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_EntityType( 
            /* [retval][out] */ long *entType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ ACAD_COLOR *Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ ACAD_COLOR Color) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadEntityVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadEntity * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadEntity * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadEntity * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadEntity * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadEntity * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadEntity * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadEntity * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadEntity * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadEntity * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadEntity * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadEntity * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadEntity * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadEntity * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadEntity * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadEntity * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadEntity * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadEntity * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadEntity * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadEntity * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadEntity * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadEntity * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadEntity * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadEntity * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadEntity * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadEntity * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadEntity * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadEntity * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadEntity * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadEntity * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadEntity * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadEntity * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadEntity * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadEntity * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadEntity * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadEntity * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadEntity * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadEntity * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadEntity * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadEntity * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadEntity * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadEntity * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadEntity * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadEntity * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadEntity * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadEntity * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadEntity * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadEntity * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadEntity * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadEntity * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadEntity * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadEntity * This,
            /* [in] */ ACAD_COLOR Color);
        
        END_INTERFACE
    } IAcadEntityVtbl;

    interface IAcadEntity
    {
        CONST_VTBL struct IAcadEntityVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadEntity_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadEntity_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadEntity_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadEntity_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadEntity_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadEntity_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadEntity_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadEntity_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadEntity_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadEntity_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadEntity_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadEntity_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadEntity_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadEntity_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadEntity_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadEntity_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadEntity_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadEntity_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadEntity_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadEntity_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadEntity_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadEntity_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadEntity_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadEntity_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadEntity_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadEntity_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadEntity_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadEntity_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadEntity_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadEntity_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadEntity_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadEntity_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadEntity_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadEntity_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadEntity_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadEntity_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadEntity_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadEntity_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadEntity_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadEntity_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadEntity_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadEntity_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadEntity_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadEntity_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadEntity_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadEntity_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadEntity_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadEntity_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadEntity_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadEntity_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadEntity_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadEntity_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadEntity_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadEntity_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadEntity_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadEntity_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadEntity_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadEntity_INTERFACE_DEFINED__ */


#ifndef __IAcadBlock_INTERFACE_DEFINED__
#define __IAcadBlock_INTERFACE_DEFINED__

/* interface IAcadBlock */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadBlock,0xD22E36B7,0xAD82,0x4F43,0xA6,0x0D,0x58,0x24,0xFD,0x84,0x2E,0x9F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D22E36B7-AD82-4F43-A60D-5824FD842E9F")
    IAcadBlock : public IAcadObject
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadEntity **pItem) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Origin( 
            /* [retval][out] */ VARIANT *origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Origin( 
            /* [in] */ VARIANT origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddCustomObject( 
            /* [in] */ BSTR ClassName,
            /* [retval][out] */ LPDISPATCH *pObject) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add3DFace( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcad3DFace **pFace3d) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add3DMesh( 
            /* [in] */ int M,
            /* [in] */ int N,
            /* [in] */ VARIANT PointsMatrix,
            /* [retval][out] */ IAcadPolygonMesh **pMesh3d) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add3DPoly( 
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcad3DPolyline **pPoly3d) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddArc( 
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double StartAngle,
            /* [in] */ double EndAngle,
            /* [retval][out] */ IAcadArc **pArc) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddAttribute( 
            /* [in] */ double Height,
            /* [in] */ AcAttributeMode Mode,
            /* [in] */ BSTR Prompt,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Tag,
            /* [in] */ BSTR Value,
            /* [retval][out] */ IAcadAttribute **pAttr) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddBox( 
            /* [in] */ VARIANT Origin,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pBox) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddCircle( 
            /* [in] */ VARIANT center,
            /* [in] */ double radius,
            /* [retval][out] */ IAcadCircle **pCircle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddCone( 
            /* [in] */ VARIANT Center,
            /* [in] */ double BaseRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCone) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddCylinder( 
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCyl) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimAligned( 
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT TextPosition,
            /* [retval][out] */ IAcadDimAligned **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimAngular( 
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDimAngular **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimDiametric( 
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT FarChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimDiametric **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimRotated( 
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT DimLineLocation,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadDimRotated **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimOrdinate( 
            /* [in] */ VARIANT DefinitionPoint,
            /* [in] */ VARIANT LeaderEndPoint,
            /* [in] */ int UseXAxis,
            /* [retval][out] */ IAcadDimOrdinate **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimRadial( 
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimRadial **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddEllipse( 
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT MajorAxis,
            /* [in] */ double RadiusRatio,
            /* [retval][out] */ IAcadEllipse **pEllipse) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddEllipticalCone( 
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCone) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddEllipticalCylinder( 
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCyl) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddExtrudedSolid( 
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ double Height,
            /* [in] */ double TaperAngle,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddExtrudedSolidAlongPath( 
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ IDispatch *Path,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddLeader( 
            /* [in] */ VARIANT PointsArray,
            /* [in] */ IAcadEntity *Annotation,
            /* [in] */ AcLeaderType Type,
            /* [retval][out] */ IAcadLeader **pLeader) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddMText( 
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Width,
            /* [in] */ BSTR Text,
            /* [retval][out] */ IAcadMText **pMtext) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddPoint( 
            /* [in] */ VARIANT Point,
            /* [retval][out] */ IAcadPoint **pPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddLightWeightPolyline( 
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadLWPolyline **pLWPolyline) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddPolyline( 
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadPolyline **pPolyline) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddRay( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadRay **pRay) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddRegion( 
            /* [in] */ VARIANT ObjectList,
            /* [retval][out] */ VARIANT *pRegions) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddRevolvedSolid( 
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ VARIANT AxisPoint,
            /* [in] */ VARIANT AxisDir,
            /* [in] */ double Angle,
            /* [retval][out] */ IAcad3DSolid **pRevolSolid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddShape( 
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double scaleFactor,
            /* [in] */ double rotationAngle,
            /* [retval][out] */ IAcadShape **pShape) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddSolid( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcadSolid **pSolid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddSphere( 
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [retval][out] */ IAcad3DSolid **pSphere) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddSpline( 
            /* [in] */ VARIANT PointsArray,
            /* [in] */ VARIANT StartTangent,
            /* [in] */ VARIANT EndTangent,
            /* [retval][out] */ IAcadSpline **pSpline) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddText( 
            /* [in] */ BSTR TextString,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Height,
            /* [retval][out] */ IAcadText **pText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddTolerance( 
            /* [in] */ BSTR Text,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ VARIANT Direction,
            /* [retval][out] */ IAcadTolerance **pTolerance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddTorus( 
            /* [in] */ VARIANT Center,
            /* [in] */ double TorusRadius,
            /* [in] */ double TubeRadius,
            /* [retval][out] */ IAcad3DSolid **pTorus) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddTrace( 
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcadTrace **pTrace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddWedge( 
            /* [in] */ VARIANT Center,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pWedge) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddXline( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadXline **pXline) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE InsertBlock( 
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadBlockReference **pBlkRef) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddHatch( 
            /* [in] */ int PatternType,
            /* [in] */ BSTR PatternName,
            /* [in] */ VARIANT_BOOL Associativity,
            /* [optional][in] */ VARIANT HatchObjectType,
            /* [retval][out] */ IAcadHatch **pHatch) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddRaster( 
            /* [in] */ BSTR ImageFileName,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double ScaleFactor,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadRasterImage **pRaster) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddLine( 
            /* [in] */ VARIANT StartPoint,
            /* [in] */ VARIANT EndPoint,
            /* [retval][out] */ IAcadLine **pLine) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsLayout( 
            /* [retval][out] */ VARIANT_BOOL *bIsLayout) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layout( 
            /* [retval][out] */ IAcadLayout **pLayout) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsXRef( 
            /* [retval][out] */ VARIANT_BOOL *pIsXRref) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddMInsertBlock( 
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ long NumRows,
            /* [in] */ long NumColumns,
            /* [in] */ long RowSpacing,
            /* [in] */ long ColumnSpacing,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadMInsertBlock **pMInsertBlk) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddPolyfaceMesh( 
            /* [in] */ VARIANT VertexList,
            /* [in] */ VARIANT FaceList,
            /* [retval][out] */ IAcadPolyfaceMesh **pPFMesh) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddMLine( 
            /* [in] */ VARIANT VertexList,
            /* [retval][out] */ IAcadMLine **pMLine) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDim3PointAngular( 
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDim3PointAngular **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_XRefDatabase( 
            /* [retval][out] */ IAcadDatabase **pDatabase) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AttachExternalReference( 
            /* [in] */ BSTR PathName,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ VARIANT_BOOL bOverlay,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadExternalReference **pXRef) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Unload( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Reload( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Bind( 
            /* [in] */ VARIANT_BOOL bPrefixName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Detach( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddTable( 
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ int NumRows,
            /* [in] */ int NumColumns,
            /* [in] */ double RowHeight,
            /* [in] */ double ColWidth,
            /* [retval][out] */ IAcadTable **pTable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Path( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comments( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comments( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Units( 
            /* [retval][out] */ AcInsertUnits *pIU) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Units( 
            /* [in] */ AcInsertUnits IU) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Explodable( 
            /* [retval][out] */ VARIANT_BOOL *bExplodable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Explodable( 
            /* [in] */ VARIANT_BOOL bExplodable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockScaling( 
            /* [retval][out] */ AcBlockScaling *pBS) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockScaling( 
            /* [in] */ AcBlockScaling BS) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsDynamicBlock( 
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimArc( 
            /* [in] */ VARIANT ArcCenter,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT ArcPoint,
            /* [retval][out] */ IAcadDimArcLength **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddDimRadialLarge( 
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT OverrideCenter,
            /* [in] */ VARIANT JogPoint,
            /* [in] */ double JogAngle,
            /* [retval][out] */ IAcadDimRadialLarge **pDim) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddSection( 
            /* [in] */ VARIANT fromPoint,
            /* [in] */ VARIANT toPoint,
            /* [in] */ VARIANT planeVector,
            /* [retval][out] */ IAcadSection **ppSecPlane) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddMLeader( 
            /* [in] */ VARIANT pointsArray,
            /* [out] */ int *leaderLineIndex,
            /* [retval][out] */ IAcadMLeader **pMLeader) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadBlockVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadBlock * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadBlock * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadBlock * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadBlock * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadBlock * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadBlock * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadBlock * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadBlock * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadBlock * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadBlock * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadBlock * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadBlock * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadBlock * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadBlock * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadBlock * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadBlock * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadBlock * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadBlock * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadBlock * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadBlock * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadBlock * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadBlock * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadEntity **pItem);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadBlock * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadBlock * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadBlock * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadBlock * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadBlock * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadBlock * This,
            /* [in] */ VARIANT origin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCustomObject )( 
            IAcadBlock * This,
            /* [in] */ BSTR ClassName,
            /* [retval][out] */ LPDISPATCH *pObject);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DFace )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcad3DFace **pFace3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DMesh )( 
            IAcadBlock * This,
            /* [in] */ int M,
            /* [in] */ int N,
            /* [in] */ VARIANT PointsMatrix,
            /* [retval][out] */ IAcadPolygonMesh **pMesh3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DPoly )( 
            IAcadBlock * This,
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcad3DPolyline **pPoly3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddArc )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double StartAngle,
            /* [in] */ double EndAngle,
            /* [retval][out] */ IAcadArc **pArc);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddAttribute )( 
            IAcadBlock * This,
            /* [in] */ double Height,
            /* [in] */ AcAttributeMode Mode,
            /* [in] */ BSTR Prompt,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Tag,
            /* [in] */ BSTR Value,
            /* [retval][out] */ IAcadAttribute **pAttr);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddBox )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Origin,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pBox);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCircle )( 
            IAcadBlock * This,
            /* [in] */ VARIANT center,
            /* [in] */ double radius,
            /* [retval][out] */ IAcadCircle **pCircle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCone )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double BaseRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCone);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCylinder )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCyl);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimAligned )( 
            IAcadBlock * This,
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT TextPosition,
            /* [retval][out] */ IAcadDimAligned **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimAngular )( 
            IAcadBlock * This,
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDimAngular **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimDiametric )( 
            IAcadBlock * This,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT FarChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimDiametric **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRotated )( 
            IAcadBlock * This,
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT DimLineLocation,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadDimRotated **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimOrdinate )( 
            IAcadBlock * This,
            /* [in] */ VARIANT DefinitionPoint,
            /* [in] */ VARIANT LeaderEndPoint,
            /* [in] */ int UseXAxis,
            /* [retval][out] */ IAcadDimOrdinate **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRadial )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimRadial **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipse )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT MajorAxis,
            /* [in] */ double RadiusRatio,
            /* [retval][out] */ IAcadEllipse **pEllipse);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipticalCone )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCone);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipticalCylinder )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCyl);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddExtrudedSolid )( 
            IAcadBlock * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ double Height,
            /* [in] */ double TaperAngle,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddExtrudedSolidAlongPath )( 
            IAcadBlock * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ IDispatch *Path,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLeader )( 
            IAcadBlock * This,
            /* [in] */ VARIANT PointsArray,
            /* [in] */ IAcadEntity *Annotation,
            /* [in] */ AcLeaderType Type,
            /* [retval][out] */ IAcadLeader **pLeader);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMText )( 
            IAcadBlock * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Width,
            /* [in] */ BSTR Text,
            /* [retval][out] */ IAcadMText **pMtext);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPoint )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Point,
            /* [retval][out] */ IAcadPoint **pPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLightWeightPolyline )( 
            IAcadBlock * This,
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadLWPolyline **pLWPolyline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPolyline )( 
            IAcadBlock * This,
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadPolyline **pPolyline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRay )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadRay **pRay);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRegion )( 
            IAcadBlock * This,
            /* [in] */ VARIANT ObjectList,
            /* [retval][out] */ VARIANT *pRegions);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRevolvedSolid )( 
            IAcadBlock * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ VARIANT AxisPoint,
            /* [in] */ VARIANT AxisDir,
            /* [in] */ double Angle,
            /* [retval][out] */ IAcad3DSolid **pRevolSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddShape )( 
            IAcadBlock * This,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double scaleFactor,
            /* [in] */ double rotationAngle,
            /* [retval][out] */ IAcadShape **pShape);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSolid )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcadSolid **pSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSphere )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [retval][out] */ IAcad3DSolid **pSphere);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSpline )( 
            IAcadBlock * This,
            /* [in] */ VARIANT PointsArray,
            /* [in] */ VARIANT StartTangent,
            /* [in] */ VARIANT EndTangent,
            /* [retval][out] */ IAcadSpline **pSpline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddText )( 
            IAcadBlock * This,
            /* [in] */ BSTR TextString,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Height,
            /* [retval][out] */ IAcadText **pText);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTolerance )( 
            IAcadBlock * This,
            /* [in] */ BSTR Text,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ VARIANT Direction,
            /* [retval][out] */ IAcadTolerance **pTolerance);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTorus )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double TorusRadius,
            /* [in] */ double TubeRadius,
            /* [retval][out] */ IAcad3DSolid **pTorus);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTrace )( 
            IAcadBlock * This,
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcadTrace **pTrace);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddWedge )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pWedge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddXline )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadXline **pXline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertBlock )( 
            IAcadBlock * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadBlockReference **pBlkRef);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddHatch )( 
            IAcadBlock * This,
            /* [in] */ int PatternType,
            /* [in] */ BSTR PatternName,
            /* [in] */ VARIANT_BOOL Associativity,
            /* [optional][in] */ VARIANT HatchObjectType,
            /* [retval][out] */ IAcadHatch **pHatch);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRaster )( 
            IAcadBlock * This,
            /* [in] */ BSTR ImageFileName,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double ScaleFactor,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadRasterImage **pRaster);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLine )( 
            IAcadBlock * This,
            /* [in] */ VARIANT StartPoint,
            /* [in] */ VARIANT EndPoint,
            /* [retval][out] */ IAcadLine **pLine);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsLayout )( 
            IAcadBlock * This,
            /* [retval][out] */ VARIANT_BOOL *bIsLayout);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layout )( 
            IAcadBlock * This,
            /* [retval][out] */ IAcadLayout **pLayout);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsXRef )( 
            IAcadBlock * This,
            /* [retval][out] */ VARIANT_BOOL *pIsXRref);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMInsertBlock )( 
            IAcadBlock * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ long NumRows,
            /* [in] */ long NumColumns,
            /* [in] */ long RowSpacing,
            /* [in] */ long ColumnSpacing,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadMInsertBlock **pMInsertBlk);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPolyfaceMesh )( 
            IAcadBlock * This,
            /* [in] */ VARIANT VertexList,
            /* [in] */ VARIANT FaceList,
            /* [retval][out] */ IAcadPolyfaceMesh **pPFMesh);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMLine )( 
            IAcadBlock * This,
            /* [in] */ VARIANT VertexList,
            /* [retval][out] */ IAcadMLine **pMLine);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDim3PointAngular )( 
            IAcadBlock * This,
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDim3PointAngular **pDim);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XRefDatabase )( 
            IAcadBlock * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AttachExternalReference )( 
            IAcadBlock * This,
            /* [in] */ BSTR PathName,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ VARIANT_BOOL bOverlay,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadExternalReference **pXRef);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Unload )( 
            IAcadBlock * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Reload )( 
            IAcadBlock * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Bind )( 
            IAcadBlock * This,
            /* [in] */ VARIANT_BOOL bPrefixName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Detach )( 
            IAcadBlock * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTable )( 
            IAcadBlock * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ int NumRows,
            /* [in] */ int NumColumns,
            /* [in] */ double RowHeight,
            /* [in] */ double ColWidth,
            /* [retval][out] */ IAcadTable **pTable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IAcadBlock * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Path )( 
            IAcadBlock * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Comments )( 
            IAcadBlock * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Comments )( 
            IAcadBlock * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Units )( 
            IAcadBlock * This,
            /* [retval][out] */ AcInsertUnits *pIU);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Units )( 
            IAcadBlock * This,
            /* [in] */ AcInsertUnits IU);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Explodable )( 
            IAcadBlock * This,
            /* [retval][out] */ VARIANT_BOOL *bExplodable);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Explodable )( 
            IAcadBlock * This,
            /* [in] */ VARIANT_BOOL bExplodable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockScaling )( 
            IAcadBlock * This,
            /* [retval][out] */ AcBlockScaling *pBS);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockScaling )( 
            IAcadBlock * This,
            /* [in] */ AcBlockScaling BS);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsDynamicBlock )( 
            IAcadBlock * This,
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimArc )( 
            IAcadBlock * This,
            /* [in] */ VARIANT ArcCenter,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT ArcPoint,
            /* [retval][out] */ IAcadDimArcLength **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRadialLarge )( 
            IAcadBlock * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT OverrideCenter,
            /* [in] */ VARIANT JogPoint,
            /* [in] */ double JogAngle,
            /* [retval][out] */ IAcadDimRadialLarge **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSection )( 
            IAcadBlock * This,
            /* [in] */ VARIANT fromPoint,
            /* [in] */ VARIANT toPoint,
            /* [in] */ VARIANT planeVector,
            /* [retval][out] */ IAcadSection **ppSecPlane);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMLeader )( 
            IAcadBlock * This,
            /* [in] */ VARIANT pointsArray,
            /* [out] */ int *leaderLineIndex,
            /* [retval][out] */ IAcadMLeader **pMLeader);
        
        END_INTERFACE
    } IAcadBlockVtbl;

    interface IAcadBlock
    {
        CONST_VTBL struct IAcadBlockVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadBlock_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadBlock_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadBlock_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadBlock_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadBlock_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadBlock_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadBlock_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadBlock_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadBlock_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadBlock_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadBlock_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadBlock_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadBlock_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadBlock_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadBlock_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadBlock_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadBlock_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadBlock_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadBlock_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadBlock_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadBlock_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadBlock_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadBlock_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadBlock_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadBlock_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadBlock_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadBlock_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadBlock_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadBlock_put_Origin(This,origin)	\
    ( (This)->lpVtbl -> put_Origin(This,origin) ) 

#define IAcadBlock_AddCustomObject(This,ClassName,pObject)	\
    ( (This)->lpVtbl -> AddCustomObject(This,ClassName,pObject) ) 

#define IAcadBlock_Add3DFace(This,Point1,Point2,Point3,Point4,pFace3d)	\
    ( (This)->lpVtbl -> Add3DFace(This,Point1,Point2,Point3,Point4,pFace3d) ) 

#define IAcadBlock_Add3DMesh(This,M,N,PointsMatrix,pMesh3d)	\
    ( (This)->lpVtbl -> Add3DMesh(This,M,N,PointsMatrix,pMesh3d) ) 

#define IAcadBlock_Add3DPoly(This,PointsArray,pPoly3d)	\
    ( (This)->lpVtbl -> Add3DPoly(This,PointsArray,pPoly3d) ) 

#define IAcadBlock_AddArc(This,Center,Radius,StartAngle,EndAngle,pArc)	\
    ( (This)->lpVtbl -> AddArc(This,Center,Radius,StartAngle,EndAngle,pArc) ) 

#define IAcadBlock_AddAttribute(This,Height,Mode,Prompt,InsertionPoint,Tag,Value,pAttr)	\
    ( (This)->lpVtbl -> AddAttribute(This,Height,Mode,Prompt,InsertionPoint,Tag,Value,pAttr) ) 

#define IAcadBlock_AddBox(This,Origin,Length,Width,Height,pBox)	\
    ( (This)->lpVtbl -> AddBox(This,Origin,Length,Width,Height,pBox) ) 

#define IAcadBlock_AddCircle(This,center,radius,pCircle)	\
    ( (This)->lpVtbl -> AddCircle(This,center,radius,pCircle) ) 

#define IAcadBlock_AddCone(This,Center,BaseRadius,Height,pCone)	\
    ( (This)->lpVtbl -> AddCone(This,Center,BaseRadius,Height,pCone) ) 

#define IAcadBlock_AddCylinder(This,Center,Radius,Height,pCyl)	\
    ( (This)->lpVtbl -> AddCylinder(This,Center,Radius,Height,pCyl) ) 

#define IAcadBlock_AddDimAligned(This,ExtLine1Point,ExtLine2Point,TextPosition,pDim)	\
    ( (This)->lpVtbl -> AddDimAligned(This,ExtLine1Point,ExtLine2Point,TextPosition,pDim) ) 

#define IAcadBlock_AddDimAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim)	\
    ( (This)->lpVtbl -> AddDimAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim) ) 

#define IAcadBlock_AddDimDiametric(This,ChordPoint,FarChordPoint,LeaderLength,pDim)	\
    ( (This)->lpVtbl -> AddDimDiametric(This,ChordPoint,FarChordPoint,LeaderLength,pDim) ) 

#define IAcadBlock_AddDimRotated(This,ExtLine1Point,ExtLine2Point,DimLineLocation,RotationAngle,pDim)	\
    ( (This)->lpVtbl -> AddDimRotated(This,ExtLine1Point,ExtLine2Point,DimLineLocation,RotationAngle,pDim) ) 

#define IAcadBlock_AddDimOrdinate(This,DefinitionPoint,LeaderEndPoint,UseXAxis,pDim)	\
    ( (This)->lpVtbl -> AddDimOrdinate(This,DefinitionPoint,LeaderEndPoint,UseXAxis,pDim) ) 

#define IAcadBlock_AddDimRadial(This,Center,ChordPoint,LeaderLength,pDim)	\
    ( (This)->lpVtbl -> AddDimRadial(This,Center,ChordPoint,LeaderLength,pDim) ) 

#define IAcadBlock_AddEllipse(This,Center,MajorAxis,RadiusRatio,pEllipse)	\
    ( (This)->lpVtbl -> AddEllipse(This,Center,MajorAxis,RadiusRatio,pEllipse) ) 

#define IAcadBlock_AddEllipticalCone(This,Center,MajorRadius,MinorRadius,Height,pEllipCone)	\
    ( (This)->lpVtbl -> AddEllipticalCone(This,Center,MajorRadius,MinorRadius,Height,pEllipCone) ) 

#define IAcadBlock_AddEllipticalCylinder(This,Center,MajorRadius,MinorRadius,Height,pEllipCyl)	\
    ( (This)->lpVtbl -> AddEllipticalCylinder(This,Center,MajorRadius,MinorRadius,Height,pEllipCyl) ) 

#define IAcadBlock_AddExtrudedSolid(This,Profile,Height,TaperAngle,pExtrSolid)	\
    ( (This)->lpVtbl -> AddExtrudedSolid(This,Profile,Height,TaperAngle,pExtrSolid) ) 

#define IAcadBlock_AddExtrudedSolidAlongPath(This,Profile,Path,pExtrSolid)	\
    ( (This)->lpVtbl -> AddExtrudedSolidAlongPath(This,Profile,Path,pExtrSolid) ) 

#define IAcadBlock_AddLeader(This,PointsArray,Annotation,Type,pLeader)	\
    ( (This)->lpVtbl -> AddLeader(This,PointsArray,Annotation,Type,pLeader) ) 

#define IAcadBlock_AddMText(This,InsertionPoint,Width,Text,pMtext)	\
    ( (This)->lpVtbl -> AddMText(This,InsertionPoint,Width,Text,pMtext) ) 

#define IAcadBlock_AddPoint(This,Point,pPoint)	\
    ( (This)->lpVtbl -> AddPoint(This,Point,pPoint) ) 

#define IAcadBlock_AddLightWeightPolyline(This,VerticesList,pLWPolyline)	\
    ( (This)->lpVtbl -> AddLightWeightPolyline(This,VerticesList,pLWPolyline) ) 

#define IAcadBlock_AddPolyline(This,VerticesList,pPolyline)	\
    ( (This)->lpVtbl -> AddPolyline(This,VerticesList,pPolyline) ) 

#define IAcadBlock_AddRay(This,Point1,Point2,pRay)	\
    ( (This)->lpVtbl -> AddRay(This,Point1,Point2,pRay) ) 

#define IAcadBlock_AddRegion(This,ObjectList,pRegions)	\
    ( (This)->lpVtbl -> AddRegion(This,ObjectList,pRegions) ) 

#define IAcadBlock_AddRevolvedSolid(This,Profile,AxisPoint,AxisDir,Angle,pRevolSolid)	\
    ( (This)->lpVtbl -> AddRevolvedSolid(This,Profile,AxisPoint,AxisDir,Angle,pRevolSolid) ) 

#define IAcadBlock_AddShape(This,Name,InsertionPoint,scaleFactor,rotationAngle,pShape)	\
    ( (This)->lpVtbl -> AddShape(This,Name,InsertionPoint,scaleFactor,rotationAngle,pShape) ) 

#define IAcadBlock_AddSolid(This,Point1,Point2,Point3,Point4,pSolid)	\
    ( (This)->lpVtbl -> AddSolid(This,Point1,Point2,Point3,Point4,pSolid) ) 

#define IAcadBlock_AddSphere(This,Center,Radius,pSphere)	\
    ( (This)->lpVtbl -> AddSphere(This,Center,Radius,pSphere) ) 

#define IAcadBlock_AddSpline(This,PointsArray,StartTangent,EndTangent,pSpline)	\
    ( (This)->lpVtbl -> AddSpline(This,PointsArray,StartTangent,EndTangent,pSpline) ) 

#define IAcadBlock_AddText(This,TextString,InsertionPoint,Height,pText)	\
    ( (This)->lpVtbl -> AddText(This,TextString,InsertionPoint,Height,pText) ) 

#define IAcadBlock_AddTolerance(This,Text,InsertionPoint,Direction,pTolerance)	\
    ( (This)->lpVtbl -> AddTolerance(This,Text,InsertionPoint,Direction,pTolerance) ) 

#define IAcadBlock_AddTorus(This,Center,TorusRadius,TubeRadius,pTorus)	\
    ( (This)->lpVtbl -> AddTorus(This,Center,TorusRadius,TubeRadius,pTorus) ) 

#define IAcadBlock_AddTrace(This,PointsArray,pTrace)	\
    ( (This)->lpVtbl -> AddTrace(This,PointsArray,pTrace) ) 

#define IAcadBlock_AddWedge(This,Center,Length,Width,Height,pWedge)	\
    ( (This)->lpVtbl -> AddWedge(This,Center,Length,Width,Height,pWedge) ) 

#define IAcadBlock_AddXline(This,Point1,Point2,pXline)	\
    ( (This)->lpVtbl -> AddXline(This,Point1,Point2,pXline) ) 

#define IAcadBlock_InsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,Password,pBlkRef)	\
    ( (This)->lpVtbl -> InsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,Password,pBlkRef) ) 

#define IAcadBlock_AddHatch(This,PatternType,PatternName,Associativity,HatchObjectType,pHatch)	\
    ( (This)->lpVtbl -> AddHatch(This,PatternType,PatternName,Associativity,HatchObjectType,pHatch) ) 

#define IAcadBlock_AddRaster(This,ImageFileName,InsertionPoint,ScaleFactor,RotationAngle,pRaster)	\
    ( (This)->lpVtbl -> AddRaster(This,ImageFileName,InsertionPoint,ScaleFactor,RotationAngle,pRaster) ) 

#define IAcadBlock_AddLine(This,StartPoint,EndPoint,pLine)	\
    ( (This)->lpVtbl -> AddLine(This,StartPoint,EndPoint,pLine) ) 

#define IAcadBlock_get_IsLayout(This,bIsLayout)	\
    ( (This)->lpVtbl -> get_IsLayout(This,bIsLayout) ) 

#define IAcadBlock_get_Layout(This,pLayout)	\
    ( (This)->lpVtbl -> get_Layout(This,pLayout) ) 

#define IAcadBlock_get_IsXRef(This,pIsXRref)	\
    ( (This)->lpVtbl -> get_IsXRef(This,pIsXRref) ) 

#define IAcadBlock_AddMInsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,NumRows,NumColumns,RowSpacing,ColumnSpacing,Password,pMInsertBlk)	\
    ( (This)->lpVtbl -> AddMInsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,NumRows,NumColumns,RowSpacing,ColumnSpacing,Password,pMInsertBlk) ) 

#define IAcadBlock_AddPolyfaceMesh(This,VertexList,FaceList,pPFMesh)	\
    ( (This)->lpVtbl -> AddPolyfaceMesh(This,VertexList,FaceList,pPFMesh) ) 

#define IAcadBlock_AddMLine(This,VertexList,pMLine)	\
    ( (This)->lpVtbl -> AddMLine(This,VertexList,pMLine) ) 

#define IAcadBlock_AddDim3PointAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim)	\
    ( (This)->lpVtbl -> AddDim3PointAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim) ) 

#define IAcadBlock_get_XRefDatabase(This,pDatabase)	\
    ( (This)->lpVtbl -> get_XRefDatabase(This,pDatabase) ) 

#define IAcadBlock_AttachExternalReference(This,PathName,Name,InsertionPoint,Xscale,Yscale,Zscale,Rotation,bOverlay,Password,pXRef)	\
    ( (This)->lpVtbl -> AttachExternalReference(This,PathName,Name,InsertionPoint,Xscale,Yscale,Zscale,Rotation,bOverlay,Password,pXRef) ) 

#define IAcadBlock_Unload(This)	\
    ( (This)->lpVtbl -> Unload(This) ) 

#define IAcadBlock_Reload(This)	\
    ( (This)->lpVtbl -> Reload(This) ) 

#define IAcadBlock_Bind(This,bPrefixName)	\
    ( (This)->lpVtbl -> Bind(This,bPrefixName) ) 

#define IAcadBlock_Detach(This)	\
    ( (This)->lpVtbl -> Detach(This) ) 

#define IAcadBlock_AddTable(This,InsertionPoint,NumRows,NumColumns,RowHeight,ColWidth,pTable)	\
    ( (This)->lpVtbl -> AddTable(This,InsertionPoint,NumRows,NumColumns,RowHeight,ColWidth,pTable) ) 

#define IAcadBlock_get_Path(This,bstrName)	\
    ( (This)->lpVtbl -> get_Path(This,bstrName) ) 

#define IAcadBlock_put_Path(This,bstrName)	\
    ( (This)->lpVtbl -> put_Path(This,bstrName) ) 

#define IAcadBlock_get_Comments(This,bstrName)	\
    ( (This)->lpVtbl -> get_Comments(This,bstrName) ) 

#define IAcadBlock_put_Comments(This,bstrName)	\
    ( (This)->lpVtbl -> put_Comments(This,bstrName) ) 

#define IAcadBlock_get_Units(This,pIU)	\
    ( (This)->lpVtbl -> get_Units(This,pIU) ) 

#define IAcadBlock_put_Units(This,IU)	\
    ( (This)->lpVtbl -> put_Units(This,IU) ) 

#define IAcadBlock_get_Explodable(This,bExplodable)	\
    ( (This)->lpVtbl -> get_Explodable(This,bExplodable) ) 

#define IAcadBlock_put_Explodable(This,bExplodable)	\
    ( (This)->lpVtbl -> put_Explodable(This,bExplodable) ) 

#define IAcadBlock_get_BlockScaling(This,pBS)	\
    ( (This)->lpVtbl -> get_BlockScaling(This,pBS) ) 

#define IAcadBlock_put_BlockScaling(This,BS)	\
    ( (This)->lpVtbl -> put_BlockScaling(This,BS) ) 

#define IAcadBlock_get_IsDynamicBlock(This,pDynamicBlock)	\
    ( (This)->lpVtbl -> get_IsDynamicBlock(This,pDynamicBlock) ) 

#define IAcadBlock_AddDimArc(This,ArcCenter,FirstEndPoint,SecondEndPoint,ArcPoint,pDim)	\
    ( (This)->lpVtbl -> AddDimArc(This,ArcCenter,FirstEndPoint,SecondEndPoint,ArcPoint,pDim) ) 

#define IAcadBlock_AddDimRadialLarge(This,Center,ChordPoint,OverrideCenter,JogPoint,JogAngle,pDim)	\
    ( (This)->lpVtbl -> AddDimRadialLarge(This,Center,ChordPoint,OverrideCenter,JogPoint,JogAngle,pDim) ) 

#define IAcadBlock_AddSection(This,fromPoint,toPoint,planeVector,ppSecPlane)	\
    ( (This)->lpVtbl -> AddSection(This,fromPoint,toPoint,planeVector,ppSecPlane) ) 

#define IAcadBlock_AddMLeader(This,pointsArray,leaderLineIndex,pMLeader)	\
    ( (This)->lpVtbl -> AddMLeader(This,pointsArray,leaderLineIndex,pMLeader) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadBlock_INTERFACE_DEFINED__ */


#ifndef __IAcadDatabase_INTERFACE_DEFINED__
#define __IAcadDatabase_INTERFACE_DEFINED__

/* interface IAcadDatabase */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDatabase,0x1086243D,0x9230,0x49F6,0xB7,0xDE,0xFF,0x08,0x2A,0x68,0x3F,0x50);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1086243D-9230-49F6-B7DE-FF082A683F50")
    IAcadDatabase : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ModelSpace( 
            /* [retval][out] */ IAcadModelSpace **pMSpace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_PaperSpace( 
            /* [retval][out] */ IAcadPaperSpace **pPSpace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Blocks( 
            /* [retval][out] */ IAcadBlocks **pBlocks) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CopyObjects( 
            /* [in] */ VARIANT Objects,
            /* [optional][in] */ VARIANT Owner,
            /* [optional][out][in] */ VARIANT *IdPairs,
            /* [retval][out] */ VARIANT *pNewObjects) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Groups( 
            /* [retval][out] */ IAcadGroups **pGroups) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_DimStyles( 
            /* [retval][out] */ IAcadDimStyles **pDimStyles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Layers( 
            /* [retval][out] */ IAcadLayers **pLayers) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Linetypes( 
            /* [retval][out] */ IAcadLineTypes **pLinetypes) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Dictionaries( 
            /* [retval][out] */ IAcadDictionaries **pDictionaries) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_RegisteredApplications( 
            /* [retval][out] */ IAcadRegisteredApplications **pRegApps) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_TextStyles( 
            /* [retval][out] */ IAcadTextStyles **pTextStyles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_UserCoordinateSystems( 
            /* [retval][out] */ IAcadUCSs **pUCSs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Views( 
            /* [retval][out] */ IAcadViews **pViews) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Viewports( 
            /* [retval][out] */ IAcadViewports **pViewports) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ElevationModelSpace( 
            /* [retval][out] */ double *elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_ElevationModelSpace( 
            /* [in] */ double elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ElevationPaperSpace( 
            /* [retval][out] */ double *elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_ElevationPaperSpace( 
            /* [in] */ double elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Limits( 
            /* [retval][out] */ VARIANT *limits) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Limits( 
            /* [in] */ VARIANT limits) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE HandleToObject( 
            /* [in] */ BSTR Handle,
            /* [retval][out] */ IDispatch **pObj) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ObjectIdToObject( 
            /* [in] */ LONG_PTR ObjectID,
            /* [retval][out] */ IDispatch **pObj) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Layouts( 
            /* [retval][out] */ IAcadLayouts **pLayouts) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_PlotConfigurations( 
            /* [retval][out] */ IAcadPlotConfigurations **pPlotConfigs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Preferences( 
            /* [retval][out] */ IAcadDatabasePreferences **pPref) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_FileDependencies( 
            /* [retval][out] */ IAcadFileDependencies **pFDM) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_SummaryInfo( 
            /* [retval][out] */ IAcadSummaryInfo **pSummaryInfo) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_SectionManager( 
            /* [retval][out] */ IAcadSectionManager **pSecMgr) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Materials( 
            /* [retval][out] */ IAcadMaterials **pMaterials) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ObjectIdToObject32( 
            /* [in] */ LONG ObjectID,
            /* [retval][out] */ IDispatch **pObj) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDatabaseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDatabase * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDatabase * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDatabase * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDatabase * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDatabase * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDatabase * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDatabase * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ModelSpace )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadModelSpace **pMSpace);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PaperSpace )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadPaperSpace **pPSpace);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Blocks )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadBlocks **pBlocks);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CopyObjects )( 
            IAcadDatabase * This,
            /* [in] */ VARIANT Objects,
            /* [optional][in] */ VARIANT Owner,
            /* [optional][out][in] */ VARIANT *IdPairs,
            /* [retval][out] */ VARIANT *pNewObjects);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Groups )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadGroups **pGroups);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DimStyles )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadDimStyles **pDimStyles);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Layers )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadLayers **pLayers);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Linetypes )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadLineTypes **pLinetypes);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Dictionaries )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadDictionaries **pDictionaries);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RegisteredApplications )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadRegisteredApplications **pRegApps);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyles )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadTextStyles **pTextStyles);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserCoordinateSystems )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadUCSs **pUCSs);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Views )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadViews **pViews);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Viewports )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadViewports **pViewports);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ElevationModelSpace )( 
            IAcadDatabase * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ElevationModelSpace )( 
            IAcadDatabase * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ElevationPaperSpace )( 
            IAcadDatabase * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ElevationPaperSpace )( 
            IAcadDatabase * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Limits )( 
            IAcadDatabase * This,
            /* [retval][out] */ VARIANT *limits);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Limits )( 
            IAcadDatabase * This,
            /* [in] */ VARIANT limits);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *HandleToObject )( 
            IAcadDatabase * This,
            /* [in] */ BSTR Handle,
            /* [retval][out] */ IDispatch **pObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ObjectIdToObject )( 
            IAcadDatabase * This,
            /* [in] */ LONG_PTR ObjectID,
            /* [retval][out] */ IDispatch **pObj);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Layouts )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadLayouts **pLayouts);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotConfigurations )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadPlotConfigurations **pPlotConfigs);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Preferences )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadDatabasePreferences **pPref);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FileDependencies )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadFileDependencies **pFDM);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SummaryInfo )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadSummaryInfo **pSummaryInfo);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SectionManager )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadSectionManager **pSecMgr);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Materials )( 
            IAcadDatabase * This,
            /* [retval][out] */ IAcadMaterials **pMaterials);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ObjectIdToObject32 )( 
            IAcadDatabase * This,
            /* [in] */ LONG ObjectID,
            /* [retval][out] */ IDispatch **pObj);
        
        END_INTERFACE
    } IAcadDatabaseVtbl;

    interface IAcadDatabase
    {
        CONST_VTBL struct IAcadDatabaseVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDatabase_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDatabase_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDatabase_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDatabase_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDatabase_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDatabase_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDatabase_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDatabase_get_ModelSpace(This,pMSpace)	\
    ( (This)->lpVtbl -> get_ModelSpace(This,pMSpace) ) 

#define IAcadDatabase_get_PaperSpace(This,pPSpace)	\
    ( (This)->lpVtbl -> get_PaperSpace(This,pPSpace) ) 

#define IAcadDatabase_get_Blocks(This,pBlocks)	\
    ( (This)->lpVtbl -> get_Blocks(This,pBlocks) ) 

#define IAcadDatabase_CopyObjects(This,Objects,Owner,IdPairs,pNewObjects)	\
    ( (This)->lpVtbl -> CopyObjects(This,Objects,Owner,IdPairs,pNewObjects) ) 

#define IAcadDatabase_get_Groups(This,pGroups)	\
    ( (This)->lpVtbl -> get_Groups(This,pGroups) ) 

#define IAcadDatabase_get_DimStyles(This,pDimStyles)	\
    ( (This)->lpVtbl -> get_DimStyles(This,pDimStyles) ) 

#define IAcadDatabase_get_Layers(This,pLayers)	\
    ( (This)->lpVtbl -> get_Layers(This,pLayers) ) 

#define IAcadDatabase_get_Linetypes(This,pLinetypes)	\
    ( (This)->lpVtbl -> get_Linetypes(This,pLinetypes) ) 

#define IAcadDatabase_get_Dictionaries(This,pDictionaries)	\
    ( (This)->lpVtbl -> get_Dictionaries(This,pDictionaries) ) 

#define IAcadDatabase_get_RegisteredApplications(This,pRegApps)	\
    ( (This)->lpVtbl -> get_RegisteredApplications(This,pRegApps) ) 

#define IAcadDatabase_get_TextStyles(This,pTextStyles)	\
    ( (This)->lpVtbl -> get_TextStyles(This,pTextStyles) ) 

#define IAcadDatabase_get_UserCoordinateSystems(This,pUCSs)	\
    ( (This)->lpVtbl -> get_UserCoordinateSystems(This,pUCSs) ) 

#define IAcadDatabase_get_Views(This,pViews)	\
    ( (This)->lpVtbl -> get_Views(This,pViews) ) 

#define IAcadDatabase_get_Viewports(This,pViewports)	\
    ( (This)->lpVtbl -> get_Viewports(This,pViewports) ) 

#define IAcadDatabase_get_ElevationModelSpace(This,elevation)	\
    ( (This)->lpVtbl -> get_ElevationModelSpace(This,elevation) ) 

#define IAcadDatabase_put_ElevationModelSpace(This,elevation)	\
    ( (This)->lpVtbl -> put_ElevationModelSpace(This,elevation) ) 

#define IAcadDatabase_get_ElevationPaperSpace(This,elevation)	\
    ( (This)->lpVtbl -> get_ElevationPaperSpace(This,elevation) ) 

#define IAcadDatabase_put_ElevationPaperSpace(This,elevation)	\
    ( (This)->lpVtbl -> put_ElevationPaperSpace(This,elevation) ) 

#define IAcadDatabase_get_Limits(This,limits)	\
    ( (This)->lpVtbl -> get_Limits(This,limits) ) 

#define IAcadDatabase_put_Limits(This,limits)	\
    ( (This)->lpVtbl -> put_Limits(This,limits) ) 

#define IAcadDatabase_HandleToObject(This,Handle,pObj)	\
    ( (This)->lpVtbl -> HandleToObject(This,Handle,pObj) ) 

#define IAcadDatabase_ObjectIdToObject(This,ObjectID,pObj)	\
    ( (This)->lpVtbl -> ObjectIdToObject(This,ObjectID,pObj) ) 

#define IAcadDatabase_get_Layouts(This,pLayouts)	\
    ( (This)->lpVtbl -> get_Layouts(This,pLayouts) ) 

#define IAcadDatabase_get_PlotConfigurations(This,pPlotConfigs)	\
    ( (This)->lpVtbl -> get_PlotConfigurations(This,pPlotConfigs) ) 

#define IAcadDatabase_get_Preferences(This,pPref)	\
    ( (This)->lpVtbl -> get_Preferences(This,pPref) ) 

#define IAcadDatabase_get_FileDependencies(This,pFDM)	\
    ( (This)->lpVtbl -> get_FileDependencies(This,pFDM) ) 

#define IAcadDatabase_get_SummaryInfo(This,pSummaryInfo)	\
    ( (This)->lpVtbl -> get_SummaryInfo(This,pSummaryInfo) ) 

#define IAcadDatabase_get_SectionManager(This,pSecMgr)	\
    ( (This)->lpVtbl -> get_SectionManager(This,pSecMgr) ) 

#define IAcadDatabase_get_Materials(This,pMaterials)	\
    ( (This)->lpVtbl -> get_Materials(This,pMaterials) ) 

#define IAcadDatabase_ObjectIdToObject32(This,ObjectID,pObj)	\
    ( (This)->lpVtbl -> ObjectIdToObject32(This,ObjectID,pObj) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDatabase_INTERFACE_DEFINED__ */


#ifndef __IAcadSectionTypeSettings_INTERFACE_DEFINED__
#define __IAcadSectionTypeSettings_INTERFACE_DEFINED__

/* interface IAcadSectionTypeSettings */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSectionTypeSettings,0xB3B0361E,0x6D90,0x4C66,0xAD,0x49,0xBA,0x59,0x7F,0xAA,0x24,0xB3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B3B0361E-6D90-4C66-AD49-BA597FAA24B3")
    IAcadSectionTypeSettings : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GenerationOptions( 
            /* [retval][out] */ AcSectionGeneration *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GenerationOptions( 
            /* [in] */ AcSectionGeneration val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceObjects( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SourceObjects( 
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DestinationBlock( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DestinationBlock( 
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DestinationFile( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DestinationFile( 
            /* [in] */ BSTR val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryLayer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryLayer( 
            /* [in] */ BSTR Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryLinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryLinetypeScale( 
            /* [in] */ ACAD_NOUNITS ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryPlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryPlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryLineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryLineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryDivisionLines( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryDivisionLines( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillVisible( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillVisible( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillHatchPatternType( 
            /* [retval][out] */ AcPatternType *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillHatchPatternType( 
            /* [in] */ AcPatternType val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillHatchPatternName( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillHatchPatternName( 
            /* [in] */ BSTR val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillHatchAngle( 
            /* [retval][out] */ ACAD_ANGLE *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillHatchAngle( 
            /* [in] */ ACAD_ANGLE val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillHatchScale( 
            /* [retval][out] */ ACAD_NOUNITS *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillHatchScale( 
            /* [in] */ ACAD_NOUNITS val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillHatchSpacing( 
            /* [retval][out] */ double *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillHatchSpacing( 
            /* [in] */ double val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillLayer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillLayer( 
            /* [in] */ BSTR Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillLinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillLinetypeScale( 
            /* [in] */ ACAD_NOUNITS ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillPlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillPlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillLineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillLineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionFillFaceTransparency( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionFillFaceTransparency( 
            /* [in] */ long val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesVisible( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesVisible( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesHiddenLine( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesHiddenLine( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesLayer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesLayer( 
            /* [in] */ BSTR Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesLinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesLinetypeScale( 
            /* [in] */ ACAD_NOUNITS ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesPlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesPlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundLinesLineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundLinesLineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesVisible( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesVisible( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesHiddenLine( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesHiddenLine( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesLayer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesLayer( 
            /* [in] */ BSTR Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesLinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesLinetypeScale( 
            /* [in] */ ACAD_NOUNITS ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesPlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesPlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesLineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesLineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesFaceTransparency( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesFaceTransparency( 
            /* [in] */ long val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForegroundLinesEdgeTransparency( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForegroundLinesEdgeTransparency( 
            /* [in] */ long val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesVisible( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesVisible( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesLayer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesLayer( 
            /* [in] */ BSTR Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesLinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesLinetypeScale( 
            /* [in] */ ACAD_NOUNITS ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesPlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesPlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveTangencyLinesLineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurveTangencyLinesLineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSectionTypeSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSectionTypeSettings * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSectionTypeSettings * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSectionTypeSettings * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GenerationOptions )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ AcSectionGeneration *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GenerationOptions )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ AcSectionGeneration val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceObjects )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceObjects )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationBlock )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationBlock )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationFile )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationFile )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryColor )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryColor )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLayer )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLayer )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryDivisionLines )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryDivisionLines )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillVisible )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillVisible )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchPatternType )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ AcPatternType *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchPatternType )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ AcPatternType val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchPatternName )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchPatternName )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchAngle )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_ANGLE *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchAngle )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_ANGLE val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchScale )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_NOUNITS *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchScale )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_NOUNITS val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchSpacing )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchSpacing )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ double val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillColor )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillColor )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLayer )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLayer )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillFaceTransparency )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillFaceTransparency )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ long val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesVisible )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesVisible )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesHiddenLine )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesHiddenLine )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesColor )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesColor )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLayer )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLayer )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesVisible )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesVisible )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesHiddenLine )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesHiddenLine )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesColor )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesColor )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLayer )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLayer )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesFaceTransparency )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesFaceTransparency )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ long val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesEdgeTransparency )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesEdgeTransparency )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ long val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesVisible )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesVisible )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesColor )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesColor )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLayer )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLayer )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLinetype )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLinetypeScale )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesPlotStyleName )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLineweight )( 
            IAcadSectionTypeSettings * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        END_INTERFACE
    } IAcadSectionTypeSettingsVtbl;

    interface IAcadSectionTypeSettings
    {
        CONST_VTBL struct IAcadSectionTypeSettingsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSectionTypeSettings_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSectionTypeSettings_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSectionTypeSettings_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSectionTypeSettings_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSectionTypeSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSectionTypeSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSectionTypeSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSectionTypeSettings_get_GenerationOptions(This,pVal)	\
    ( (This)->lpVtbl -> get_GenerationOptions(This,pVal) ) 

#define IAcadSectionTypeSettings_put_GenerationOptions(This,val)	\
    ( (This)->lpVtbl -> put_GenerationOptions(This,val) ) 

#define IAcadSectionTypeSettings_get_SourceObjects(This,pVal)	\
    ( (This)->lpVtbl -> get_SourceObjects(This,pVal) ) 

#define IAcadSectionTypeSettings_put_SourceObjects(This,val)	\
    ( (This)->lpVtbl -> put_SourceObjects(This,val) ) 

#define IAcadSectionTypeSettings_get_DestinationBlock(This,pVal)	\
    ( (This)->lpVtbl -> get_DestinationBlock(This,pVal) ) 

#define IAcadSectionTypeSettings_put_DestinationBlock(This,val)	\
    ( (This)->lpVtbl -> put_DestinationBlock(This,val) ) 

#define IAcadSectionTypeSettings_get_DestinationFile(This,pVal)	\
    ( (This)->lpVtbl -> get_DestinationFile(This,pVal) ) 

#define IAcadSectionTypeSettings_put_DestinationFile(This,val)	\
    ( (This)->lpVtbl -> put_DestinationFile(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryColor(This,pColor)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryColor(This,pColor) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryColor(This,pColor)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryColor(This,pColor) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_get_IntersectionBoundaryDivisionLines(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryDivisionLines(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionBoundaryDivisionLines(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryDivisionLines(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillVisible(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillVisible(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillVisible(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillHatchPatternType(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchPatternType(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillHatchPatternType(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchPatternType(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillHatchPatternName(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchPatternName(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillHatchPatternName(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchPatternName(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillHatchAngle(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchAngle(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillHatchAngle(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchAngle(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillHatchScale(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchScale(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillHatchScale(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchScale(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillHatchSpacing(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchSpacing(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillHatchSpacing(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchSpacing(This,val) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillColor(This,pColor)	\
    ( (This)->lpVtbl -> get_IntersectionFillColor(This,pColor) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillColor(This,pColor)	\
    ( (This)->lpVtbl -> put_IntersectionFillColor(This,pColor) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_IntersectionFillLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_IntersectionFillLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_IntersectionFillLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_IntersectionFillLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_IntersectionFillLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_IntersectionFillLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_IntersectionFillPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_IntersectionFillPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_IntersectionFillLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_IntersectionFillLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_get_IntersectionFillFaceTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillFaceTransparency(This,pVal) ) 

#define IAcadSectionTypeSettings_put_IntersectionFillFaceTransparency(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillFaceTransparency(This,val) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_BackgroundLinesVisible(This,pVal) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesVisible(This,val)	\
    ( (This)->lpVtbl -> put_BackgroundLinesVisible(This,val) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesHiddenLine(This,pVal)	\
    ( (This)->lpVtbl -> get_BackgroundLinesHiddenLine(This,pVal) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesHiddenLine(This,val)	\
    ( (This)->lpVtbl -> put_BackgroundLinesHiddenLine(This,val) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> get_BackgroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> put_BackgroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_BackgroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_BackgroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_get_BackgroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_put_BackgroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesVisible(This,pVal) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesVisible(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesVisible(This,val) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesHiddenLine(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesHiddenLine(This,pVal) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesHiddenLine(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesHiddenLine(This,val) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> get_ForegroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> put_ForegroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_ForegroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_ForegroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesFaceTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesFaceTransparency(This,pVal) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesFaceTransparency(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesFaceTransparency(This,val) ) 

#define IAcadSectionTypeSettings_get_ForegroundLinesEdgeTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesEdgeTransparency(This,pVal) ) 

#define IAcadSectionTypeSettings_put_ForegroundLinesEdgeTransparency(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesEdgeTransparency(This,val) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesVisible(This,pVal) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesVisible(This,val)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesVisible(This,val) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings_get_CurveTangencyLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings_put_CurveTangencyLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLineweight(This,lineweight) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSectionTypeSettings_INTERFACE_DEFINED__ */


#ifndef __IAcadSectionTypeSettings2_INTERFACE_DEFINED__
#define __IAcadSectionTypeSettings2_INTERFACE_DEFINED__

/* interface IAcadSectionTypeSettings2 */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSectionTypeSettings2,0x0FD65FD0,0xF266,0x46D9,0xA3,0x7D,0xB9,0x76,0x33,0xE9,0x85,0xF1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0FD65FD0-F266-46D9-A37D-B97633E985F1")
    IAcadSectionTypeSettings2 : public IAcadSectionTypeSettings
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntersectionBoundaryVisible( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntersectionBoundaryVisible( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSectionTypeSettings2Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSectionTypeSettings2 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSectionTypeSettings2 * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSectionTypeSettings2 * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GenerationOptions )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ AcSectionGeneration *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GenerationOptions )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ AcSectionGeneration val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceObjects )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceObjects )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationBlock )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationBlock )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationFile )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationFile )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryDivisionLines )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryDivisionLines )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchPatternType )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ AcPatternType *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchPatternType )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ AcPatternType val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchPatternName )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchPatternName )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchAngle )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_ANGLE *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchAngle )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_ANGLE val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_NOUNITS *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_NOUNITS val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillHatchSpacing )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillHatchSpacing )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ double val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionFillFaceTransparency )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionFillFaceTransparency )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ long val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesHiddenLine )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesHiddenLine )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundLinesLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundLinesLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesHiddenLine )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesHiddenLine )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesFaceTransparency )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesFaceTransparency )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ long val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForegroundLinesEdgeTransparency )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForegroundLinesEdgeTransparency )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ long val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesColor )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLayer )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLinetype )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLinetypeScale )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesPlotStyleName )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurveTangencyLinesLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurveTangencyLinesLineweight )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IntersectionBoundaryVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IntersectionBoundaryVisible )( 
            IAcadSectionTypeSettings2 * This,
            /* [in] */ VARIANT_BOOL val);
        
        END_INTERFACE
    } IAcadSectionTypeSettings2Vtbl;

    interface IAcadSectionTypeSettings2
    {
        CONST_VTBL struct IAcadSectionTypeSettings2Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSectionTypeSettings2_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSectionTypeSettings2_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSectionTypeSettings2_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSectionTypeSettings2_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSectionTypeSettings2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSectionTypeSettings2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSectionTypeSettings2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSectionTypeSettings2_get_GenerationOptions(This,pVal)	\
    ( (This)->lpVtbl -> get_GenerationOptions(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_GenerationOptions(This,val)	\
    ( (This)->lpVtbl -> put_GenerationOptions(This,val) ) 

#define IAcadSectionTypeSettings2_get_SourceObjects(This,pVal)	\
    ( (This)->lpVtbl -> get_SourceObjects(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_SourceObjects(This,val)	\
    ( (This)->lpVtbl -> put_SourceObjects(This,val) ) 

#define IAcadSectionTypeSettings2_get_DestinationBlock(This,pVal)	\
    ( (This)->lpVtbl -> get_DestinationBlock(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_DestinationBlock(This,val)	\
    ( (This)->lpVtbl -> put_DestinationBlock(This,val) ) 

#define IAcadSectionTypeSettings2_get_DestinationFile(This,pVal)	\
    ( (This)->lpVtbl -> get_DestinationFile(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_DestinationFile(This,val)	\
    ( (This)->lpVtbl -> put_DestinationFile(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryColor(This,pColor)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryColor(This,pColor)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_get_IntersectionBoundaryDivisionLines(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryDivisionLines(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryDivisionLines(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryDivisionLines(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillVisible(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillVisible(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillVisible(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillHatchPatternType(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchPatternType(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillHatchPatternType(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchPatternType(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillHatchPatternName(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchPatternName(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillHatchPatternName(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchPatternName(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillHatchAngle(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchAngle(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillHatchAngle(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchAngle(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillHatchScale(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchScale(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillHatchScale(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchScale(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillHatchSpacing(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillHatchSpacing(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillHatchSpacing(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillHatchSpacing(This,val) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillColor(This,pColor)	\
    ( (This)->lpVtbl -> get_IntersectionFillColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillColor(This,pColor)	\
    ( (This)->lpVtbl -> put_IntersectionFillColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_IntersectionFillLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_IntersectionFillLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_IntersectionFillLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_IntersectionFillLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_IntersectionFillLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_IntersectionFillLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_IntersectionFillPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_IntersectionFillPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_IntersectionFillLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_IntersectionFillLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_get_IntersectionFillFaceTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionFillFaceTransparency(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionFillFaceTransparency(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionFillFaceTransparency(This,val) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_BackgroundLinesVisible(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesVisible(This,val)	\
    ( (This)->lpVtbl -> put_BackgroundLinesVisible(This,val) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesHiddenLine(This,pVal)	\
    ( (This)->lpVtbl -> get_BackgroundLinesHiddenLine(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesHiddenLine(This,val)	\
    ( (This)->lpVtbl -> put_BackgroundLinesHiddenLine(This,val) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> get_BackgroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> put_BackgroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_BackgroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_BackgroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_get_BackgroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_BackgroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_put_BackgroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_BackgroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesVisible(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesVisible(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesVisible(This,val) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesHiddenLine(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesHiddenLine(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesHiddenLine(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesHiddenLine(This,val) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> get_ForegroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> put_ForegroundLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_ForegroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_ForegroundLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_ForegroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_ForegroundLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesFaceTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesFaceTransparency(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesFaceTransparency(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesFaceTransparency(This,val) ) 

#define IAcadSectionTypeSettings2_get_ForegroundLinesEdgeTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_ForegroundLinesEdgeTransparency(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_ForegroundLinesEdgeTransparency(This,val)	\
    ( (This)->lpVtbl -> put_ForegroundLinesEdgeTransparency(This,val) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesVisible(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesVisible(This,val)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesVisible(This,val) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesColor(This,pColor)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesColor(This,pColor) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesLayer(This,Layer)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLayer(This,Layer) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLinetype(This,Linetype) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesLinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLinetypeScale(This,ltScale) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesPlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesPlotStyleName(This,plotStyle) ) 

#define IAcadSectionTypeSettings2_get_CurveTangencyLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_CurveTangencyLinesLineweight(This,lineweight) ) 

#define IAcadSectionTypeSettings2_put_CurveTangencyLinesLineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_CurveTangencyLinesLineweight(This,lineweight) ) 


#define IAcadSectionTypeSettings2_get_IntersectionBoundaryVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_IntersectionBoundaryVisible(This,pVal) ) 

#define IAcadSectionTypeSettings2_put_IntersectionBoundaryVisible(This,val)	\
    ( (This)->lpVtbl -> put_IntersectionBoundaryVisible(This,val) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSectionTypeSettings2_INTERFACE_DEFINED__ */


#ifndef __IAcadHyperlink_INTERFACE_DEFINED__
#define __IAcadHyperlink_INTERFACE_DEFINED__

/* interface IAcadHyperlink */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadHyperlink,0x84C08E60,0xF267,0x4C3B,0x86,0x7D,0xD3,0x5A,0x3D,0xED,0x92,0xCE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("84C08E60-F267-4C3B-867D-D35A3DED92CE")
    IAcadHyperlink : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_URL( 
            /* [in] */ BSTR URLPath) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_URL( 
            /* [retval][out] */ BSTR *URLPath) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_URLDescription( 
            /* [in] */ BSTR Description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_URLDescription( 
            /* [retval][out] */ BSTR *Description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *ApplicationObject) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Delete( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_URLNamedLocation( 
            /* [in] */ BSTR Location) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_URLNamedLocation( 
            /* [retval][out] */ BSTR *Location) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadHyperlinkVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadHyperlink * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadHyperlink * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadHyperlink * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadHyperlink * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadHyperlink * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadHyperlink * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadHyperlink * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URL )( 
            IAcadHyperlink * This,
            /* [in] */ BSTR URLPath);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URL )( 
            IAcadHyperlink * This,
            /* [retval][out] */ BSTR *URLPath);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URLDescription )( 
            IAcadHyperlink * This,
            /* [in] */ BSTR Description);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URLDescription )( 
            IAcadHyperlink * This,
            /* [retval][out] */ BSTR *Description);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadHyperlink * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadHyperlink * This);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URLNamedLocation )( 
            IAcadHyperlink * This,
            /* [in] */ BSTR Location);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URLNamedLocation )( 
            IAcadHyperlink * This,
            /* [retval][out] */ BSTR *Location);
        
        END_INTERFACE
    } IAcadHyperlinkVtbl;

    interface IAcadHyperlink
    {
        CONST_VTBL struct IAcadHyperlinkVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadHyperlink_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadHyperlink_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadHyperlink_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadHyperlink_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadHyperlink_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadHyperlink_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadHyperlink_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadHyperlink_put_URL(This,URLPath)	\
    ( (This)->lpVtbl -> put_URL(This,URLPath) ) 

#define IAcadHyperlink_get_URL(This,URLPath)	\
    ( (This)->lpVtbl -> get_URL(This,URLPath) ) 

#define IAcadHyperlink_put_URLDescription(This,Description)	\
    ( (This)->lpVtbl -> put_URLDescription(This,Description) ) 

#define IAcadHyperlink_get_URLDescription(This,Description)	\
    ( (This)->lpVtbl -> get_URLDescription(This,Description) ) 

#define IAcadHyperlink_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadHyperlink_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadHyperlink_put_URLNamedLocation(This,Location)	\
    ( (This)->lpVtbl -> put_URLNamedLocation(This,Location) ) 

#define IAcadHyperlink_get_URLNamedLocation(This,Location)	\
    ( (This)->lpVtbl -> get_URLNamedLocation(This,Location) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadHyperlink_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadHyperlink,0xCD9526F0,0xF312,0x48BC,0x97,0xC0,0x76,0x37,0xA3,0x2C,0xF6,0x3E);

#ifdef __cplusplus

class DECLSPEC_UUID("CD9526F0-F312-48BC-97C0-7637A32CF63E")
AcadHyperlink;
#endif

#ifndef __IAcadDynamicBlockReferenceProperty_INTERFACE_DEFINED__
#define __IAcadDynamicBlockReferenceProperty_INTERFACE_DEFINED__

/* interface IAcadDynamicBlockReferenceProperty */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDynamicBlockReferenceProperty,0x8B49D14E,0x9F7E,0x42C5,0xB3,0xC5,0xFF,0x8F,0x88,0x52,0xCF,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8B49D14E-9F7E-42C5-B3C5-FF8F8852CF56")
    IAcadDynamicBlockReferenceProperty : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyName( 
            /* [retval][out] */ BSTR *propertyName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL *readOnly) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Show( 
            /* [retval][out] */ VARIANT_BOOL *show) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *Description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AllowedValues( 
            /* [retval][out] */ VARIANT *AllowedValues) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ VARIANT *Value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ VARIANT Value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_UnitsType( 
            /* [retval][out] */ AcDynamicBlockReferencePropertyUnitsType *units) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDynamicBlockReferencePropertyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDynamicBlockReferenceProperty * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDynamicBlockReferenceProperty * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PropertyName )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ BSTR *propertyName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ReadOnly )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ VARIANT_BOOL *readOnly);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Show )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ VARIANT_BOOL *show);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ BSTR *Description);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowedValues )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ VARIANT *AllowedValues);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ VARIANT *Value);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [in] */ VARIANT Value);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsType )( 
            IAcadDynamicBlockReferenceProperty * This,
            /* [retval][out] */ AcDynamicBlockReferencePropertyUnitsType *units);
        
        END_INTERFACE
    } IAcadDynamicBlockReferencePropertyVtbl;

    interface IAcadDynamicBlockReferenceProperty
    {
        CONST_VTBL struct IAcadDynamicBlockReferencePropertyVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDynamicBlockReferenceProperty_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDynamicBlockReferenceProperty_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDynamicBlockReferenceProperty_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDynamicBlockReferenceProperty_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDynamicBlockReferenceProperty_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDynamicBlockReferenceProperty_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDynamicBlockReferenceProperty_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDynamicBlockReferenceProperty_get_PropertyName(This,propertyName)	\
    ( (This)->lpVtbl -> get_PropertyName(This,propertyName) ) 

#define IAcadDynamicBlockReferenceProperty_get_ReadOnly(This,readOnly)	\
    ( (This)->lpVtbl -> get_ReadOnly(This,readOnly) ) 

#define IAcadDynamicBlockReferenceProperty_get_Show(This,show)	\
    ( (This)->lpVtbl -> get_Show(This,show) ) 

#define IAcadDynamicBlockReferenceProperty_get_Description(This,Description)	\
    ( (This)->lpVtbl -> get_Description(This,Description) ) 

#define IAcadDynamicBlockReferenceProperty_get_AllowedValues(This,AllowedValues)	\
    ( (This)->lpVtbl -> get_AllowedValues(This,AllowedValues) ) 

#define IAcadDynamicBlockReferenceProperty_get_Value(This,Value)	\
    ( (This)->lpVtbl -> get_Value(This,Value) ) 

#define IAcadDynamicBlockReferenceProperty_put_Value(This,Value)	\
    ( (This)->lpVtbl -> put_Value(This,Value) ) 

#define IAcadDynamicBlockReferenceProperty_get_UnitsType(This,units)	\
    ( (This)->lpVtbl -> get_UnitsType(This,units) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDynamicBlockReferenceProperty_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDynamicBlockReferenceProperty,0x6658F584,0x15CB,0x4A36,0xBE,0xEE,0xF2,0x5C,0x60,0x6F,0xC4,0x45);

#ifdef __cplusplus

class DECLSPEC_UUID("6658F584-15CB-4A36-BEEE-F25C606FC445")
AcadDynamicBlockReferenceProperty;
#endif

#ifndef __IAcadAcCmColor_INTERFACE_DEFINED__
#define __IAcadAcCmColor_INTERFACE_DEFINED__

/* interface IAcadAcCmColor */
/* [unique][helpstringcontext][helpcontext][uuid][dual][object] */ 


DEFINE_GUID(IID_IAcadAcCmColor,0x027DD570,0x25AD,0x41D9,0x87,0x58,0x1D,0xD5,0xFB,0xB3,0x6A,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("027DD570-25AD-41D9-8758-1DD5FBB36A13")
    IAcadAcCmColor : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EntityColor( 
            /* [in] */ long eColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EntityColor( 
            /* [retval][out] */ long *eColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColorName( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BookName( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetNames( 
            /* [in] */ BSTR colorName,
            /* [in] */ BSTR bookName) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Delete( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Red( 
            /* [retval][out] */ long *red) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Blue( 
            /* [retval][out] */ long *blue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Green( 
            /* [retval][out] */ long *green) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetRGB( 
            /* [in] */ long red,
            /* [in] */ long green,
            /* [in] */ long blue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColorMethod( 
            /* [in] */ AcColorMethod Flags) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColorMethod( 
            /* [retval][out] */ AcColorMethod *Flags) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColorIndex( 
            /* [retval][out] */ AcColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColorIndex( 
            /* [in] */ AcColor color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetColorBookColor( 
            /* [in] */ BSTR bookName,
            /* [in] */ BSTR colorName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadAcCmColorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadAcCmColor * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadAcCmColor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadAcCmColor * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadAcCmColor * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadAcCmColor * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadAcCmColor * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadAcCmColor * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EntityColor )( 
            IAcadAcCmColor * This,
            /* [in] */ long eColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityColor )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ long *eColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ColorName )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BookName )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetNames )( 
            IAcadAcCmColor * This,
            /* [in] */ BSTR colorName,
            /* [in] */ BSTR bookName);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadAcCmColor * This);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Red )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ long *red);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Blue )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ long *blue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Green )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ long *green);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetRGB )( 
            IAcadAcCmColor * This,
            /* [in] */ long red,
            /* [in] */ long green,
            /* [in] */ long blue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ColorMethod )( 
            IAcadAcCmColor * This,
            /* [in] */ AcColorMethod Flags);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ColorMethod )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ AcColorMethod *Flags);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ColorIndex )( 
            IAcadAcCmColor * This,
            /* [retval][out] */ AcColor *color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ColorIndex )( 
            IAcadAcCmColor * This,
            /* [in] */ AcColor color);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetColorBookColor )( 
            IAcadAcCmColor * This,
            /* [in] */ BSTR bookName,
            /* [in] */ BSTR colorName);
        
        END_INTERFACE
    } IAcadAcCmColorVtbl;

    interface IAcadAcCmColor
    {
        CONST_VTBL struct IAcadAcCmColorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadAcCmColor_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadAcCmColor_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadAcCmColor_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadAcCmColor_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadAcCmColor_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadAcCmColor_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadAcCmColor_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadAcCmColor_put_EntityColor(This,eColor)	\
    ( (This)->lpVtbl -> put_EntityColor(This,eColor) ) 

#define IAcadAcCmColor_get_EntityColor(This,eColor)	\
    ( (This)->lpVtbl -> get_EntityColor(This,eColor) ) 

#define IAcadAcCmColor_get_ColorName(This,Name)	\
    ( (This)->lpVtbl -> get_ColorName(This,Name) ) 

#define IAcadAcCmColor_get_BookName(This,Name)	\
    ( (This)->lpVtbl -> get_BookName(This,Name) ) 

#define IAcadAcCmColor_SetNames(This,colorName,bookName)	\
    ( (This)->lpVtbl -> SetNames(This,colorName,bookName) ) 

#define IAcadAcCmColor_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadAcCmColor_get_Red(This,red)	\
    ( (This)->lpVtbl -> get_Red(This,red) ) 

#define IAcadAcCmColor_get_Blue(This,blue)	\
    ( (This)->lpVtbl -> get_Blue(This,blue) ) 

#define IAcadAcCmColor_get_Green(This,green)	\
    ( (This)->lpVtbl -> get_Green(This,green) ) 

#define IAcadAcCmColor_SetRGB(This,red,green,blue)	\
    ( (This)->lpVtbl -> SetRGB(This,red,green,blue) ) 

#define IAcadAcCmColor_put_ColorMethod(This,Flags)	\
    ( (This)->lpVtbl -> put_ColorMethod(This,Flags) ) 

#define IAcadAcCmColor_get_ColorMethod(This,Flags)	\
    ( (This)->lpVtbl -> get_ColorMethod(This,Flags) ) 

#define IAcadAcCmColor_get_ColorIndex(This,color)	\
    ( (This)->lpVtbl -> get_ColorIndex(This,color) ) 

#define IAcadAcCmColor_put_ColorIndex(This,color)	\
    ( (This)->lpVtbl -> put_ColorIndex(This,color) ) 

#define IAcadAcCmColor_SetColorBookColor(This,bookName,colorName)	\
    ( (This)->lpVtbl -> SetColorBookColor(This,bookName,colorName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadAcCmColor_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadAcCmColor,0x2D909319,0x0322,0x4EE7,0xB5,0x3E,0xEF,0x48,0xD3,0xB1,0x83,0x3E);

#ifdef __cplusplus

class DECLSPEC_UUID("2D909319-0322-4EE7-B53E-EF48D3B1833E")
AcadAcCmColor;
#endif

#ifndef __IAcadObjectEvents_INTERFACE_DEFINED__
#define __IAcadObjectEvents_INTERFACE_DEFINED__

/* interface IAcadObjectEvents */
/* [unique][helpstringcontext][uuid][oleautomation][object] */ 


DEFINE_GUID(IID_IAcadObjectEvents,0x1F7BF7B4,0xBCC8,0x4670,0x84,0x0E,0x60,0x3F,0x58,0x52,0x57,0xE9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1F7BF7B4-BCC8-4670-840E-603F585257E9")
    IAcadObjectEvents : public IUnknown
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Modified( 
            /* [in] */ IAcadObject *pObject) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadObjectEventsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadObjectEvents * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadObjectEvents * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadObjectEvents * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Modified )( 
            IAcadObjectEvents * This,
            /* [in] */ IAcadObject *pObject);
        
        END_INTERFACE
    } IAcadObjectEventsVtbl;

    interface IAcadObjectEvents
    {
        CONST_VTBL struct IAcadObjectEventsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadObjectEvents_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadObjectEvents_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadObjectEvents_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadObjectEvents_Modified(This,pObject)	\
    ( (This)->lpVtbl -> Modified(This,pObject) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadObjectEvents_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadObject,0x5832D854,0xC5A5,0x4A63,0x8D,0xCE,0xB1,0x50,0xBB,0xF7,0x18,0x34);

#ifdef __cplusplus

class DECLSPEC_UUID("5832D854-C5A5-4A63-8DCE-B150BBF71834")
AcadObject;
#endif

#ifndef __IAcadXRecord_INTERFACE_DEFINED__
#define __IAcadXRecord_INTERFACE_DEFINED__

/* interface IAcadXRecord */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadXRecord,0x4E82F823,0x9F02,0x4EA9,0xA9,0x9B,0xDD,0xAC,0x18,0x18,0x7F,0x0E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4E82F823-9F02-4EA9-A99B-DDAC18187F0E")
    IAcadXRecord : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetXRecordData( 
            /* [out] */ VARIANT *XRecordDataType,
            /* [out] */ VARIANT *XRecordDataValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetXRecordData( 
            /* [in] */ VARIANT XRecordDataType,
            /* [in] */ VARIANT XRecordDataValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TranslateIDs( 
            /* [retval][out] */ VARIANT_BOOL *xlateIds) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TranslateIDs( 
            /* [in] */ VARIANT_BOOL xlateIds) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadXRecordVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadXRecord * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadXRecord * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadXRecord * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadXRecord * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadXRecord * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadXRecord * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadXRecord * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadXRecord * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadXRecord * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadXRecord * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadXRecord * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadXRecord * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadXRecord * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadXRecord * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadXRecord * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadXRecord * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadXRecord * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadXRecord * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadXRecord * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadXRecord * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadXRecord * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadXRecord * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadXRecord * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadXRecord * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXRecordData )( 
            IAcadXRecord * This,
            /* [out] */ VARIANT *XRecordDataType,
            /* [out] */ VARIANT *XRecordDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXRecordData )( 
            IAcadXRecord * This,
            /* [in] */ VARIANT XRecordDataType,
            /* [in] */ VARIANT XRecordDataValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TranslateIDs )( 
            IAcadXRecord * This,
            /* [retval][out] */ VARIANT_BOOL *xlateIds);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TranslateIDs )( 
            IAcadXRecord * This,
            /* [in] */ VARIANT_BOOL xlateIds);
        
        END_INTERFACE
    } IAcadXRecordVtbl;

    interface IAcadXRecord
    {
        CONST_VTBL struct IAcadXRecordVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadXRecord_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadXRecord_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadXRecord_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadXRecord_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadXRecord_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadXRecord_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadXRecord_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadXRecord_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadXRecord_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadXRecord_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadXRecord_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadXRecord_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadXRecord_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadXRecord_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadXRecord_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadXRecord_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadXRecord_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadXRecord_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadXRecord_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadXRecord_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadXRecord_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadXRecord_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadXRecord_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadXRecord_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadXRecord_GetXRecordData(This,XRecordDataType,XRecordDataValue)	\
    ( (This)->lpVtbl -> GetXRecordData(This,XRecordDataType,XRecordDataValue) ) 

#define IAcadXRecord_SetXRecordData(This,XRecordDataType,XRecordDataValue)	\
    ( (This)->lpVtbl -> SetXRecordData(This,XRecordDataType,XRecordDataValue) ) 

#define IAcadXRecord_get_TranslateIDs(This,xlateIds)	\
    ( (This)->lpVtbl -> get_TranslateIDs(This,xlateIds) ) 

#define IAcadXRecord_put_TranslateIDs(This,xlateIds)	\
    ( (This)->lpVtbl -> put_TranslateIDs(This,xlateIds) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadXRecord_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadXRecord,0x310DEC40,0xB5A5,0x4CA7,0xA1,0x41,0xD6,0x36,0x93,0x0A,0x72,0xDC);

#ifdef __cplusplus

class DECLSPEC_UUID("310DEC40-B5A5-4CA7-A141-D636930A72DC")
AcadXRecord;
#endif

#ifndef __IAcadSortentsTable_INTERFACE_DEFINED__
#define __IAcadSortentsTable_INTERFACE_DEFINED__

/* interface IAcadSortentsTable */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSortentsTable,0xF740BA86,0xEAF8,0x4EE3,0x8F,0xCF,0x28,0xB6,0x35,0x63,0xA8,0xC3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F740BA86-EAF8-4EE3-8FCF-28B63563A8C3")
    IAcadSortentsTable : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE MoveToBottom( 
            /* [in] */ VARIANT Objects) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE MoveToTop( 
            /* [in] */ VARIANT Objects) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE MoveBelow( 
            /* [in] */ VARIANT Objects,
            /* [in] */ IAcadEntity *Target) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE MoveAbove( 
            /* [in] */ VARIANT Objects,
            /* [in] */ IAcadEntity *Target) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SwapOrder( 
            /* [in] */ IAcadEntity *Object1,
            /* [in] */ IAcadEntity *Object2) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Block( 
            /* [retval][out] */ IAcadBlock **pBlock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFullDrawOrder( 
            /* [out] */ VARIANT *Objects,
            /* [in] */ VARIANT_BOOL honorSortentsSysvar) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetRelativeDrawOrder( 
            /* [out] */ VARIANT *Objects,
            /* [in] */ VARIANT_BOOL honorSortentsSysvar) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetRelativeDrawOrder( 
            /* [in] */ VARIANT Objects) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSortentsTableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSortentsTable * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSortentsTable * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSortentsTable * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSortentsTable * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSortentsTable * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSortentsTable * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSortentsTable * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSortentsTable * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSortentsTable * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSortentsTable * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSortentsTable * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *MoveToBottom )( 
            IAcadSortentsTable * This,
            /* [in] */ VARIANT Objects);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *MoveToTop )( 
            IAcadSortentsTable * This,
            /* [in] */ VARIANT Objects);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *MoveBelow )( 
            IAcadSortentsTable * This,
            /* [in] */ VARIANT Objects,
            /* [in] */ IAcadEntity *Target);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *MoveAbove )( 
            IAcadSortentsTable * This,
            /* [in] */ VARIANT Objects,
            /* [in] */ IAcadEntity *Target);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SwapOrder )( 
            IAcadSortentsTable * This,
            /* [in] */ IAcadEntity *Object1,
            /* [in] */ IAcadEntity *Object2);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Block )( 
            IAcadSortentsTable * This,
            /* [retval][out] */ IAcadBlock **pBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFullDrawOrder )( 
            IAcadSortentsTable * This,
            /* [out] */ VARIANT *Objects,
            /* [in] */ VARIANT_BOOL honorSortentsSysvar);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetRelativeDrawOrder )( 
            IAcadSortentsTable * This,
            /* [out] */ VARIANT *Objects,
            /* [in] */ VARIANT_BOOL honorSortentsSysvar);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetRelativeDrawOrder )( 
            IAcadSortentsTable * This,
            /* [in] */ VARIANT Objects);
        
        END_INTERFACE
    } IAcadSortentsTableVtbl;

    interface IAcadSortentsTable
    {
        CONST_VTBL struct IAcadSortentsTableVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSortentsTable_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSortentsTable_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSortentsTable_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSortentsTable_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSortentsTable_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSortentsTable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSortentsTable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSortentsTable_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSortentsTable_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSortentsTable_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSortentsTable_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSortentsTable_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSortentsTable_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSortentsTable_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSortentsTable_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSortentsTable_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSortentsTable_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSortentsTable_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSortentsTable_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSortentsTable_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSortentsTable_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSortentsTable_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSortentsTable_MoveToBottom(This,Objects)	\
    ( (This)->lpVtbl -> MoveToBottom(This,Objects) ) 

#define IAcadSortentsTable_MoveToTop(This,Objects)	\
    ( (This)->lpVtbl -> MoveToTop(This,Objects) ) 

#define IAcadSortentsTable_MoveBelow(This,Objects,Target)	\
    ( (This)->lpVtbl -> MoveBelow(This,Objects,Target) ) 

#define IAcadSortentsTable_MoveAbove(This,Objects,Target)	\
    ( (This)->lpVtbl -> MoveAbove(This,Objects,Target) ) 

#define IAcadSortentsTable_SwapOrder(This,Object1,Object2)	\
    ( (This)->lpVtbl -> SwapOrder(This,Object1,Object2) ) 

#define IAcadSortentsTable_Block(This,pBlock)	\
    ( (This)->lpVtbl -> Block(This,pBlock) ) 

#define IAcadSortentsTable_GetFullDrawOrder(This,Objects,honorSortentsSysvar)	\
    ( (This)->lpVtbl -> GetFullDrawOrder(This,Objects,honorSortentsSysvar) ) 

#define IAcadSortentsTable_GetRelativeDrawOrder(This,Objects,honorSortentsSysvar)	\
    ( (This)->lpVtbl -> GetRelativeDrawOrder(This,Objects,honorSortentsSysvar) ) 

#define IAcadSortentsTable_SetRelativeDrawOrder(This,Objects)	\
    ( (This)->lpVtbl -> SetRelativeDrawOrder(This,Objects) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSortentsTable_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSortentsTable,0xA89FFC20,0xCAE1,0x4FFF,0x96,0xA4,0x24,0x22,0xB3,0x05,0xB5,0x7B);

#ifdef __cplusplus

class DECLSPEC_UUID("A89FFC20-CAE1-4FFF-96A4-2422B305B57B")
AcadSortentsTable;
#endif

#ifndef __IAcadDimStyle_INTERFACE_DEFINED__
#define __IAcadDimStyle_INTERFACE_DEFINED__

/* interface IAcadDimStyle */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimStyle,0xAAF15482,0x7287,0x4766,0xA3,0x33,0xB2,0x34,0x58,0xDC,0xC6,0x5A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AAF15482-7287-4766-A333-B23458DCC65A")
    IAcadDimStyle : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CopyFrom( 
            /* [in] */ IDispatch *StyleSource) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimStyle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimStyle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimStyle * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimStyle * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimStyle * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimStyle * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimStyle * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimStyle * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimStyle * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimStyle * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimStyle * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimStyle * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimStyle * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimStyle * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimStyle * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimStyle * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimStyle * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimStyle * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimStyle * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimStyle * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadDimStyle * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadDimStyle * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CopyFrom )( 
            IAcadDimStyle * This,
            /* [in] */ IDispatch *StyleSource);
        
        END_INTERFACE
    } IAcadDimStyleVtbl;

    interface IAcadDimStyle
    {
        CONST_VTBL struct IAcadDimStyleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimStyle_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimStyle_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimStyle_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimStyle_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimStyle_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimStyle_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimStyle_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimStyle_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimStyle_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimStyle_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimStyle_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimStyle_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimStyle_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimStyle_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimStyle_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimStyle_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimStyle_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimStyle_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimStyle_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimStyle_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadDimStyle_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadDimStyle_CopyFrom(This,StyleSource)	\
    ( (This)->lpVtbl -> CopyFrom(This,StyleSource) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDimStyle_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimStyle,0x28078C83,0x8E39,0x4840,0x9D,0x8C,0x96,0x99,0x38,0xED,0x2C,0xD6);

#ifdef __cplusplus

class DECLSPEC_UUID("28078C83-8E39-4840-9D8C-969938ED2CD6")
AcadDimStyle;
#endif

#ifndef __IAcadLayer_INTERFACE_DEFINED__
#define __IAcadLayer_INTERFACE_DEFINED__

/* interface IAcadLayer */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLayer,0xEF7F5376,0x1943,0x4235,0x90,0x53,0x32,0xBA,0xEA,0xCC,0xCB,0x49);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EF7F5376-1943-4235-9053-32BAEACCCB49")
    IAcadLayer : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ AcColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ AcColor color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrueColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TrueColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Freeze( 
            /* [retval][out] */ VARIANT_BOOL *bFreeze) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Freeze( 
            /* [in] */ VARIANT_BOOL bFreeze) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerOn( 
            /* [retval][out] */ VARIANT_BOOL *bOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayerOn( 
            /* [in] */ VARIANT_BOOL bOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Linetype( 
            /* [retval][out] */ BSTR *lineType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Linetype( 
            /* [in] */ BSTR lineType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lock( 
            /* [retval][out] */ VARIANT_BOOL *bLock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Lock( 
            /* [in] */ VARIANT_BOOL bLock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Plottable( 
            /* [retval][out] */ VARIANT_BOOL *bPlottable) = 0;
        
        virtual /* [helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Plottable( 
            /* [in] */ VARIANT_BOOL bPlottable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewportDefault( 
            /* [retval][out] */ VARIANT_BOOL *bDefault) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ViewportDefault( 
            /* [in] */ VARIANT_BOOL bDefault) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_PlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_PlotStyleName( 
            /* [in] */ BSTR plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Lineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Lineweight( 
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Used( 
            /* [retval][out] */ VARIANT_BOOL *bUsed) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Material( 
            /* [retval][out] */ BSTR *Material) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Material( 
            /* [in] */ BSTR Material) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLayerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLayer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLayer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLayer * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLayer * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLayer * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLayer * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLayer * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLayer * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLayer * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLayer * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLayer * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLayer * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLayer * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLayer * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLayer * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLayer * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLayer * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLayer * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLayer * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadLayer * This,
            /* [retval][out] */ AcColor *color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadLayer * This,
            /* [in] */ AcColor color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadLayer * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadLayer * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Freeze )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bFreeze);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Freeze )( 
            IAcadLayer * This,
            /* [in] */ VARIANT_BOOL bFreeze);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LayerOn )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bOn);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LayerOn )( 
            IAcadLayer * This,
            /* [in] */ VARIANT_BOOL bOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *lineType);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadLayer * This,
            /* [in] */ BSTR lineType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Lock )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bLock);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Lock )( 
            IAcadLayer * This,
            /* [in] */ VARIANT_BOOL bLock);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadLayer * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Plottable )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bPlottable);
        
        /* [helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Plottable )( 
            IAcadLayer * This,
            /* [in] */ VARIANT_BOOL bPlottable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ViewportDefault )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bDefault);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ViewportDefault )( 
            IAcadLayer * This,
            /* [in] */ VARIANT_BOOL bDefault);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadLayer * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadLayer * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadLayer * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *description);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IAcadLayer * This,
            /* [in] */ BSTR description);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Used )( 
            IAcadLayer * This,
            /* [retval][out] */ VARIANT_BOOL *bUsed);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadLayer * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadLayer * This,
            /* [in] */ BSTR Material);
        
        END_INTERFACE
    } IAcadLayerVtbl;

    interface IAcadLayer
    {
        CONST_VTBL struct IAcadLayerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLayer_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLayer_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLayer_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLayer_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLayer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLayer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLayer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLayer_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLayer_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLayer_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLayer_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLayer_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLayer_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLayer_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLayer_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLayer_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLayer_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLayer_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLayer_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLayer_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLayer_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLayer_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLayer_get_Color(This,color)	\
    ( (This)->lpVtbl -> get_Color(This,color) ) 

#define IAcadLayer_put_Color(This,color)	\
    ( (This)->lpVtbl -> put_Color(This,color) ) 

#define IAcadLayer_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadLayer_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadLayer_get_Freeze(This,bFreeze)	\
    ( (This)->lpVtbl -> get_Freeze(This,bFreeze) ) 

#define IAcadLayer_put_Freeze(This,bFreeze)	\
    ( (This)->lpVtbl -> put_Freeze(This,bFreeze) ) 

#define IAcadLayer_get_LayerOn(This,bOn)	\
    ( (This)->lpVtbl -> get_LayerOn(This,bOn) ) 

#define IAcadLayer_put_LayerOn(This,bOn)	\
    ( (This)->lpVtbl -> put_LayerOn(This,bOn) ) 

#define IAcadLayer_get_Linetype(This,lineType)	\
    ( (This)->lpVtbl -> get_Linetype(This,lineType) ) 

#define IAcadLayer_put_Linetype(This,lineType)	\
    ( (This)->lpVtbl -> put_Linetype(This,lineType) ) 

#define IAcadLayer_get_Lock(This,bLock)	\
    ( (This)->lpVtbl -> get_Lock(This,bLock) ) 

#define IAcadLayer_put_Lock(This,bLock)	\
    ( (This)->lpVtbl -> put_Lock(This,bLock) ) 

#define IAcadLayer_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadLayer_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadLayer_get_Plottable(This,bPlottable)	\
    ( (This)->lpVtbl -> get_Plottable(This,bPlottable) ) 

#define IAcadLayer_put_Plottable(This,bPlottable)	\
    ( (This)->lpVtbl -> put_Plottable(This,bPlottable) ) 

#define IAcadLayer_get_ViewportDefault(This,bDefault)	\
    ( (This)->lpVtbl -> get_ViewportDefault(This,bDefault) ) 

#define IAcadLayer_put_ViewportDefault(This,bDefault)	\
    ( (This)->lpVtbl -> put_ViewportDefault(This,bDefault) ) 

#define IAcadLayer_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadLayer_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadLayer_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadLayer_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadLayer_get_Description(This,description)	\
    ( (This)->lpVtbl -> get_Description(This,description) ) 

#define IAcadLayer_put_Description(This,description)	\
    ( (This)->lpVtbl -> put_Description(This,description) ) 

#define IAcadLayer_get_Used(This,bUsed)	\
    ( (This)->lpVtbl -> get_Used(This,bUsed) ) 

#define IAcadLayer_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadLayer_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLayer_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLayer,0x616686F6,0xF1A8,0x45C1,0x8F,0x2E,0x95,0xD1,0x56,0xA7,0xC6,0xD0);

#ifdef __cplusplus

class DECLSPEC_UUID("616686F6-F1A8-45C1-8F2E-95D156A7C6D0")
AcadLayer;
#endif

#ifndef __IAcadLineType_INTERFACE_DEFINED__
#define __IAcadLineType_INTERFACE_DEFINED__

/* interface IAcadLineType */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLineType,0xCC498941,0xDF18,0x40D6,0xA0,0x59,0x9B,0x4B,0xCF,0x55,0x6F,0xAE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CC498941-DF18-40D6-A059-9B4BCF556FAE")
    IAcadLineType : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *bstrDes) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR bstrDes) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLineTypeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLineType * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLineType * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLineType * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLineType * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLineType * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLineType * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLineType * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLineType * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLineType * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLineType * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLineType * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLineType * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLineType * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLineType * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLineType * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLineType * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLineType * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLineType * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLineType * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLineType * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLineType * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLineType * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IAcadLineType * This,
            /* [retval][out] */ BSTR *bstrDes);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IAcadLineType * This,
            /* [in] */ BSTR bstrDes);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadLineType * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadLineType * This,
            /* [in] */ BSTR bstrName);
        
        END_INTERFACE
    } IAcadLineTypeVtbl;

    interface IAcadLineType
    {
        CONST_VTBL struct IAcadLineTypeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLineType_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLineType_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLineType_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLineType_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLineType_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLineType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLineType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLineType_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLineType_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLineType_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLineType_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLineType_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLineType_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLineType_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLineType_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLineType_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLineType_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLineType_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLineType_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLineType_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLineType_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLineType_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLineType_get_Description(This,bstrDes)	\
    ( (This)->lpVtbl -> get_Description(This,bstrDes) ) 

#define IAcadLineType_put_Description(This,bstrDes)	\
    ( (This)->lpVtbl -> put_Description(This,bstrDes) ) 

#define IAcadLineType_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadLineType_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLineType_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLineType,0x46ECCA31,0x075F,0x4252,0x86,0x90,0xF9,0x87,0xEA,0xA8,0x3A,0x75);

#ifdef __cplusplus

class DECLSPEC_UUID("46ECCA31-075F-4252-8690-F987EAA83A75")
AcadLineType;
#endif

#ifndef __IAcadMaterial_INTERFACE_DEFINED__
#define __IAcadMaterial_INTERFACE_DEFINED__

/* interface IAcadMaterial */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMaterial,0x00EBEC55,0xC445,0x4AED,0xA8,0x18,0xEF,0xE7,0xCB,0x75,0x22,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("00EBEC55-C445-4AED-A818-EFE7CB752213")
    IAcadMaterial : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *bstrDes) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR bstrDes) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMaterialVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMaterial * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMaterial * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMaterial * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMaterial * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMaterial * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMaterial * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMaterial * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMaterial * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMaterial * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMaterial * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMaterial * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMaterial * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMaterial * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMaterial * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMaterial * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMaterial * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMaterial * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMaterial * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMaterial * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMaterial * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMaterial * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMaterial * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IAcadMaterial * This,
            /* [retval][out] */ BSTR *bstrDes);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IAcadMaterial * This,
            /* [in] */ BSTR bstrDes);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadMaterial * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadMaterial * This,
            /* [in] */ BSTR bstrName);
        
        END_INTERFACE
    } IAcadMaterialVtbl;

    interface IAcadMaterial
    {
        CONST_VTBL struct IAcadMaterialVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMaterial_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMaterial_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMaterial_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMaterial_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMaterial_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMaterial_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMaterial_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMaterial_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMaterial_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMaterial_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMaterial_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMaterial_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMaterial_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMaterial_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMaterial_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMaterial_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMaterial_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMaterial_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMaterial_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMaterial_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMaterial_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMaterial_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMaterial_get_Description(This,bstrDes)	\
    ( (This)->lpVtbl -> get_Description(This,bstrDes) ) 

#define IAcadMaterial_put_Description(This,bstrDes)	\
    ( (This)->lpVtbl -> put_Description(This,bstrDes) ) 

#define IAcadMaterial_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadMaterial_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMaterial_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMaterial,0x79D75C1D,0x5BB5,0x4A6E,0x85,0x53,0x60,0xF1,0x83,0x93,0xE0,0xC7);

#ifdef __cplusplus

class DECLSPEC_UUID("79D75C1D-5BB5-4A6E-8553-60F18393E0C7")
AcadMaterial;
#endif

#ifndef __IAcadRegisteredApplication_INTERFACE_DEFINED__
#define __IAcadRegisteredApplication_INTERFACE_DEFINED__

/* interface IAcadRegisteredApplication */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadRegisteredApplication,0xE428059C,0x69D4,0x4978,0x92,0xCF,0x67,0x0B,0xB5,0x15,0xB7,0xBF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E428059C-69D4-4978-92CF-670BB515B7BF")
    IAcadRegisteredApplication : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadRegisteredApplicationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadRegisteredApplication * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadRegisteredApplication * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadRegisteredApplication * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadRegisteredApplication * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadRegisteredApplication * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadRegisteredApplication * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadRegisteredApplication * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadRegisteredApplication * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadRegisteredApplication * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadRegisteredApplication * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadRegisteredApplication * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadRegisteredApplication * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadRegisteredApplication * This,
            /* [in] */ BSTR bstrName);
        
        END_INTERFACE
    } IAcadRegisteredApplicationVtbl;

    interface IAcadRegisteredApplication
    {
        CONST_VTBL struct IAcadRegisteredApplicationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadRegisteredApplication_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadRegisteredApplication_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadRegisteredApplication_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadRegisteredApplication_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadRegisteredApplication_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadRegisteredApplication_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadRegisteredApplication_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadRegisteredApplication_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadRegisteredApplication_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadRegisteredApplication_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadRegisteredApplication_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadRegisteredApplication_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadRegisteredApplication_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadRegisteredApplication_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadRegisteredApplication_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadRegisteredApplication_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadRegisteredApplication_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadRegisteredApplication_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadRegisteredApplication_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadRegisteredApplication_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadRegisteredApplication_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadRegisteredApplication_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadRegisteredApplication_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadRegisteredApplication_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadRegisteredApplication_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadRegisteredApplication,0xC6809E20,0x46BF,0x4934,0x87,0x62,0xF8,0x80,0x7C,0x57,0x88,0xFF);

#ifdef __cplusplus

class DECLSPEC_UUID("C6809E20-46BF-4934-8762-F8807C5788FF")
AcadRegisteredApplication;
#endif

#ifndef __IAcadTextStyle_INTERFACE_DEFINED__
#define __IAcadTextStyle_INTERFACE_DEFINED__

/* interface IAcadTextStyle */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadTextStyle,0xC62D0CA8,0xC3C5,0x42DF,0xAF,0xB9,0x3C,0x43,0x9A,0x0E,0xF4,0xCB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C62D0CA8-C3C5-42DF-AFB9-3C439A0EF4CB")
    IAcadTextStyle : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BigFontFile( 
            /* [retval][out] */ BSTR *fontFile) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BigFontFile( 
            /* [in] */ BSTR fontFile) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FontFile( 
            /* [retval][out] */ BSTR *fontFile) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FontFile( 
            /* [in] */ BSTR fontFile) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastHeight( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LastHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObliqueAngle( 
            /* [retval][out] */ ACAD_ANGLE *obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObliqueAngle( 
            /* [in] */ ACAD_ANGLE obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextGenerationFlag( 
            /* [retval][out] */ long *textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextGenerationFlag( 
            /* [in] */ long textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFont( 
            /* [out] */ BSTR *TypeFace,
            /* [out] */ VARIANT_BOOL *Bold,
            /* [out] */ VARIANT_BOOL *Italic,
            /* [out] */ long *Charset,
            /* [out] */ long *PitchAndFamily) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE SetFont( 
            /* [in] */ BSTR TypeFace,
            /* [in] */ VARIANT_BOOL Bold,
            /* [in] */ VARIANT_BOOL Italic,
            /* [in] */ long Charset,
            /* [in] */ long PitchAndFamily) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadTextStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadTextStyle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadTextStyle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadTextStyle * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadTextStyle * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadTextStyle * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadTextStyle * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadTextStyle * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadTextStyle * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadTextStyle * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadTextStyle * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadTextStyle * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadTextStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadTextStyle * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadTextStyle * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadTextStyle * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadTextStyle * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadTextStyle * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadTextStyle * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadTextStyle * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadTextStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadTextStyle * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadTextStyle * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BigFontFile )( 
            IAcadTextStyle * This,
            /* [retval][out] */ BSTR *fontFile);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BigFontFile )( 
            IAcadTextStyle * This,
            /* [in] */ BSTR fontFile);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FontFile )( 
            IAcadTextStyle * This,
            /* [retval][out] */ BSTR *fontFile);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FontFile )( 
            IAcadTextStyle * This,
            /* [in] */ BSTR fontFile);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadTextStyle * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadTextStyle * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastHeight )( 
            IAcadTextStyle * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LastHeight )( 
            IAcadTextStyle * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadTextStyle * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObliqueAngle )( 
            IAcadTextStyle * This,
            /* [retval][out] */ ACAD_ANGLE *obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObliqueAngle )( 
            IAcadTextStyle * This,
            /* [in] */ ACAD_ANGLE obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGenerationFlag )( 
            IAcadTextStyle * This,
            /* [retval][out] */ long *textGenFlag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGenerationFlag )( 
            IAcadTextStyle * This,
            /* [in] */ long textGenFlag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadTextStyle * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadTextStyle * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFont )( 
            IAcadTextStyle * This,
            /* [out] */ BSTR *TypeFace,
            /* [out] */ VARIANT_BOOL *Bold,
            /* [out] */ VARIANT_BOOL *Italic,
            /* [out] */ long *Charset,
            /* [out] */ long *PitchAndFamily);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFont )( 
            IAcadTextStyle * This,
            /* [in] */ BSTR TypeFace,
            /* [in] */ VARIANT_BOOL Bold,
            /* [in] */ VARIANT_BOOL Italic,
            /* [in] */ long Charset,
            /* [in] */ long PitchAndFamily);
        
        END_INTERFACE
    } IAcadTextStyleVtbl;

    interface IAcadTextStyle
    {
        CONST_VTBL struct IAcadTextStyleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadTextStyle_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadTextStyle_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadTextStyle_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadTextStyle_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadTextStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadTextStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadTextStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadTextStyle_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadTextStyle_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadTextStyle_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadTextStyle_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadTextStyle_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadTextStyle_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadTextStyle_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadTextStyle_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadTextStyle_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadTextStyle_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadTextStyle_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadTextStyle_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadTextStyle_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadTextStyle_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadTextStyle_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadTextStyle_get_BigFontFile(This,fontFile)	\
    ( (This)->lpVtbl -> get_BigFontFile(This,fontFile) ) 

#define IAcadTextStyle_put_BigFontFile(This,fontFile)	\
    ( (This)->lpVtbl -> put_BigFontFile(This,fontFile) ) 

#define IAcadTextStyle_get_FontFile(This,fontFile)	\
    ( (This)->lpVtbl -> get_FontFile(This,fontFile) ) 

#define IAcadTextStyle_put_FontFile(This,fontFile)	\
    ( (This)->lpVtbl -> put_FontFile(This,fontFile) ) 

#define IAcadTextStyle_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadTextStyle_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadTextStyle_get_LastHeight(This,height)	\
    ( (This)->lpVtbl -> get_LastHeight(This,height) ) 

#define IAcadTextStyle_put_LastHeight(This,height)	\
    ( (This)->lpVtbl -> put_LastHeight(This,height) ) 

#define IAcadTextStyle_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadTextStyle_get_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> get_ObliqueAngle(This,obliAngle) ) 

#define IAcadTextStyle_put_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> put_ObliqueAngle(This,obliAngle) ) 

#define IAcadTextStyle_get_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> get_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadTextStyle_put_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> put_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadTextStyle_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadTextStyle_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadTextStyle_GetFont(This,TypeFace,Bold,Italic,Charset,PitchAndFamily)	\
    ( (This)->lpVtbl -> GetFont(This,TypeFace,Bold,Italic,Charset,PitchAndFamily) ) 

#define IAcadTextStyle_SetFont(This,TypeFace,Bold,Italic,Charset,PitchAndFamily)	\
    ( (This)->lpVtbl -> SetFont(This,TypeFace,Bold,Italic,Charset,PitchAndFamily) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadTextStyle_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadTextStyle,0x9EEC21FD,0x3161,0x49ED,0x87,0x68,0x34,0x76,0x5D,0xAD,0x77,0x5F);

#ifdef __cplusplus

class DECLSPEC_UUID("9EEC21FD-3161-49ED-8768-34765DAD775F")
AcadTextStyle;
#endif

#ifndef __IAcadUCS_INTERFACE_DEFINED__
#define __IAcadUCS_INTERFACE_DEFINED__

/* interface IAcadUCS */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadUCS,0x81538710,0xAE65,0x441C,0xAB,0x55,0x73,0xAF,0x68,0x18,0xAE,0xEB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("81538710-AE65-441C-AB55-73AF6818AEEB")
    IAcadUCS : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Origin( 
            /* [retval][out] */ VARIANT *origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Origin( 
            /* [in] */ VARIANT origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_XVector( 
            /* [retval][out] */ VARIANT *xVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_XVector( 
            /* [in] */ VARIANT xVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_YVector( 
            /* [retval][out] */ VARIANT *yVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_YVector( 
            /* [in] */ VARIANT yVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetUCSMatrix( 
            /* [retval][out] */ VARIANT *transMatrix) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadUCSVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadUCS * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadUCS * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadUCS * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadUCS * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadUCS * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadUCS * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadUCS * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadUCS * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadUCS * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadUCS * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadUCS * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadUCS * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadUCS * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadUCS * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadUCS * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadUCS * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadUCS * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadUCS * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadUCS * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadUCS * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadUCS * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadUCS * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadUCS * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadUCS * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadUCS * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadUCS * This,
            /* [in] */ VARIANT origin);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XVector )( 
            IAcadUCS * This,
            /* [retval][out] */ VARIANT *xVector);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XVector )( 
            IAcadUCS * This,
            /* [in] */ VARIANT xVector);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YVector )( 
            IAcadUCS * This,
            /* [retval][out] */ VARIANT *yVector);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YVector )( 
            IAcadUCS * This,
            /* [in] */ VARIANT yVector);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetUCSMatrix )( 
            IAcadUCS * This,
            /* [retval][out] */ VARIANT *transMatrix);
        
        END_INTERFACE
    } IAcadUCSVtbl;

    interface IAcadUCS
    {
        CONST_VTBL struct IAcadUCSVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadUCS_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadUCS_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadUCS_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadUCS_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadUCS_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadUCS_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadUCS_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadUCS_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadUCS_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadUCS_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadUCS_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadUCS_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadUCS_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadUCS_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadUCS_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadUCS_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadUCS_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadUCS_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadUCS_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadUCS_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadUCS_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadUCS_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadUCS_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadUCS_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadUCS_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadUCS_put_Origin(This,origin)	\
    ( (This)->lpVtbl -> put_Origin(This,origin) ) 

#define IAcadUCS_get_XVector(This,xVector)	\
    ( (This)->lpVtbl -> get_XVector(This,xVector) ) 

#define IAcadUCS_put_XVector(This,xVector)	\
    ( (This)->lpVtbl -> put_XVector(This,xVector) ) 

#define IAcadUCS_get_YVector(This,yVector)	\
    ( (This)->lpVtbl -> get_YVector(This,yVector) ) 

#define IAcadUCS_put_YVector(This,yVector)	\
    ( (This)->lpVtbl -> put_YVector(This,yVector) ) 

#define IAcadUCS_GetUCSMatrix(This,transMatrix)	\
    ( (This)->lpVtbl -> GetUCSMatrix(This,transMatrix) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadUCS_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadUCS,0x9F42DFA2,0xF628,0x45E7,0x90,0x93,0x5A,0x93,0x70,0x21,0x5B,0x4E);

#ifdef __cplusplus

class DECLSPEC_UUID("9F42DFA2-F628-45E7-9093-5A9370215B4E")
AcadUCS;
#endif

#ifndef __IAcadView_INTERFACE_DEFINED__
#define __IAcadView_INTERFACE_DEFINED__

/* interface IAcadView */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadView,0x942FFF4B,0xFCFF,0x4BDB,0xAE,0xE1,0xBC,0x2B,0xB1,0x6C,0x9E,0x14);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("942FFF4B-FCFF-4BDB-AEE1-BC2BB16C9E14")
    IAcadView : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *center) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT center) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Target( 
            /* [retval][out] */ VARIANT *targetPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Target( 
            /* [in] */ VARIANT targetPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT *dirVec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT dirVec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CategoryName( 
            /* [retval][out] */ BSTR *category) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CategoryName( 
            /* [in] */ BSTR category) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutId( 
            /* [retval][out] */ LONG_PTR *ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayoutId( 
            /* [in] */ LONG_PTR ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerState( 
            /* [retval][out] */ BSTR *layerState) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayerState( 
            /* [in] */ BSTR layerState) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasVpAssociation( 
            /* [retval][out] */ VARIANT_BOOL *bVpAssoc) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HasVpAssociation( 
            /* [in] */ VARIANT_BOOL bVpAssoc) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutId32( 
            /* [retval][out] */ LONG *ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayoutId32( 
            /* [in] */ LONG ObjectID) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadViewVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadView * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadView * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadView * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadView * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadView * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadView * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadView * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadView * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadView * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadView * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadView * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadView * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadView * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadView * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadView * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadView * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadView * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadView * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadView * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadView * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadView * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadView * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadView * This,
            /* [retval][out] */ VARIANT *center);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadView * This,
            /* [in] */ VARIANT center);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadView * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadView * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadView * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadView * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Target )( 
            IAcadView * This,
            /* [retval][out] */ VARIANT *targetPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Target )( 
            IAcadView * This,
            /* [in] */ VARIANT targetPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
            IAcadView * This,
            /* [retval][out] */ VARIANT *dirVec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Direction )( 
            IAcadView * This,
            /* [in] */ VARIANT dirVec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadView * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadView * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CategoryName )( 
            IAcadView * This,
            /* [retval][out] */ BSTR *category);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CategoryName )( 
            IAcadView * This,
            /* [in] */ BSTR category);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LayoutId )( 
            IAcadView * This,
            /* [retval][out] */ LONG_PTR *ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LayoutId )( 
            IAcadView * This,
            /* [in] */ LONG_PTR ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LayerState )( 
            IAcadView * This,
            /* [retval][out] */ BSTR *layerState);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LayerState )( 
            IAcadView * This,
            /* [in] */ BSTR layerState);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasVpAssociation )( 
            IAcadView * This,
            /* [retval][out] */ VARIANT_BOOL *bVpAssoc);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HasVpAssociation )( 
            IAcadView * This,
            /* [in] */ VARIANT_BOOL bVpAssoc);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LayoutId32 )( 
            IAcadView * This,
            /* [retval][out] */ LONG *ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LayoutId32 )( 
            IAcadView * This,
            /* [in] */ LONG ObjectID);
        
        END_INTERFACE
    } IAcadViewVtbl;

    interface IAcadView
    {
        CONST_VTBL struct IAcadViewVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadView_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadView_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadView_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadView_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadView_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadView_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadView_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadView_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadView_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadView_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadView_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadView_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadView_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadView_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadView_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadView_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadView_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadView_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadView_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadView_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadView_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadView_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadView_get_Center(This,center)	\
    ( (This)->lpVtbl -> get_Center(This,center) ) 

#define IAcadView_put_Center(This,center)	\
    ( (This)->lpVtbl -> put_Center(This,center) ) 

#define IAcadView_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadView_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadView_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadView_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadView_get_Target(This,targetPoint)	\
    ( (This)->lpVtbl -> get_Target(This,targetPoint) ) 

#define IAcadView_put_Target(This,targetPoint)	\
    ( (This)->lpVtbl -> put_Target(This,targetPoint) ) 

#define IAcadView_get_Direction(This,dirVec)	\
    ( (This)->lpVtbl -> get_Direction(This,dirVec) ) 

#define IAcadView_put_Direction(This,dirVec)	\
    ( (This)->lpVtbl -> put_Direction(This,dirVec) ) 

#define IAcadView_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadView_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadView_get_CategoryName(This,category)	\
    ( (This)->lpVtbl -> get_CategoryName(This,category) ) 

#define IAcadView_put_CategoryName(This,category)	\
    ( (This)->lpVtbl -> put_CategoryName(This,category) ) 

#define IAcadView_get_LayoutId(This,ObjectID)	\
    ( (This)->lpVtbl -> get_LayoutId(This,ObjectID) ) 

#define IAcadView_put_LayoutId(This,ObjectID)	\
    ( (This)->lpVtbl -> put_LayoutId(This,ObjectID) ) 

#define IAcadView_get_LayerState(This,layerState)	\
    ( (This)->lpVtbl -> get_LayerState(This,layerState) ) 

#define IAcadView_put_LayerState(This,layerState)	\
    ( (This)->lpVtbl -> put_LayerState(This,layerState) ) 

#define IAcadView_get_HasVpAssociation(This,bVpAssoc)	\
    ( (This)->lpVtbl -> get_HasVpAssociation(This,bVpAssoc) ) 

#define IAcadView_put_HasVpAssociation(This,bVpAssoc)	\
    ( (This)->lpVtbl -> put_HasVpAssociation(This,bVpAssoc) ) 

#define IAcadView_get_LayoutId32(This,ObjectID)	\
    ( (This)->lpVtbl -> get_LayoutId32(This,ObjectID) ) 

#define IAcadView_put_LayoutId32(This,ObjectID)	\
    ( (This)->lpVtbl -> put_LayoutId32(This,ObjectID) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadView_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadView,0x8EB8EA30,0x71B6,0x486F,0x85,0x13,0x21,0xF4,0xA0,0xF5,0x5E,0xE8);

#ifdef __cplusplus

class DECLSPEC_UUID("8EB8EA30-71B6-486F-8513-21F4A0F55EE8")
AcadView;
#endif

#ifndef __IAcadViewport_INTERFACE_DEFINED__
#define __IAcadViewport_INTERFACE_DEFINED__

/* interface IAcadViewport */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadViewport,0x841E1C09,0x27EE,0x47A9,0xA8,0x64,0xEF,0x11,0x45,0xDE,0x58,0x49);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("841E1C09-27EE-47A9-A864-EF1145DE5849")
    IAcadViewport : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *center) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT center) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Target( 
            /* [retval][out] */ VARIANT *targetPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Target( 
            /* [in] */ VARIANT targetPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT *dirVec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT dirVec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GridOn( 
            /* [retval][out] */ VARIANT_BOOL *bGridOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GridOn( 
            /* [in] */ VARIANT_BOOL bGridOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OrthoOn( 
            /* [retval][out] */ VARIANT_BOOL *bOrthoOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_OrthoOn( 
            /* [in] */ VARIANT_BOOL bOrthoOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SnapBasePoint( 
            /* [retval][out] */ VARIANT *lowLeft) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SnapBasePoint( 
            /* [in] */ VARIANT lowLeft) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SnapOn( 
            /* [retval][out] */ VARIANT_BOOL *bSnapOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SnapOn( 
            /* [in] */ VARIANT_BOOL bSnapOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SnapRotationAngle( 
            /* [retval][out] */ ACAD_ANGLE *angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SnapRotationAngle( 
            /* [in] */ ACAD_ANGLE angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UCSIconOn( 
            /* [retval][out] */ VARIANT_BOOL *bIconOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UCSIconOn( 
            /* [in] */ VARIANT_BOOL bIconOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UCSIconAtOrigin( 
            /* [retval][out] */ VARIANT_BOOL *bIconAtOrigin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UCSIconAtOrigin( 
            /* [in] */ VARIANT_BOOL bIconAtOrigin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LowerLeftCorner( 
            /* [retval][out] */ VARIANT *lowLeft) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UpperRightCorner( 
            /* [retval][out] */ VARIANT *upperRight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Split( 
            /* [in] */ AcViewportSplitType NumWins) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridSpacing( 
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridSpacing( 
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetSnapSpacing( 
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetSnapSpacing( 
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetView( 
            /* [in] */ IAcadView *View) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcSmoothness( 
            /* [retval][out] */ long *arcSmooth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArcSmoothness( 
            /* [in] */ long arcSmooth) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadViewportVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadViewport * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadViewport * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadViewport * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadViewport * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadViewport * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadViewport * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadViewport * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadViewport * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadViewport * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadViewport * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadViewport * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadViewport * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadViewport * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadViewport * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadViewport * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadViewport * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadViewport * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadViewport * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadViewport * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadViewport * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadViewport * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT *center);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadViewport * This,
            /* [in] */ VARIANT center);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadViewport * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadViewport * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadViewport * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadViewport * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Target )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT *targetPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Target )( 
            IAcadViewport * This,
            /* [in] */ VARIANT targetPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT *dirVec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Direction )( 
            IAcadViewport * This,
            /* [in] */ VARIANT dirVec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadViewport * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadViewport * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GridOn )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bGridOn);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GridOn )( 
            IAcadViewport * This,
            /* [in] */ VARIANT_BOOL bGridOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OrthoOn )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bOrthoOn);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OrthoOn )( 
            IAcadViewport * This,
            /* [in] */ VARIANT_BOOL bOrthoOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapBasePoint )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT *lowLeft);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapBasePoint )( 
            IAcadViewport * This,
            /* [in] */ VARIANT lowLeft);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapOn )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bSnapOn);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapOn )( 
            IAcadViewport * This,
            /* [in] */ VARIANT_BOOL bSnapOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapRotationAngle )( 
            IAcadViewport * This,
            /* [retval][out] */ ACAD_ANGLE *angle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapRotationAngle )( 
            IAcadViewport * This,
            /* [in] */ ACAD_ANGLE angle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UCSIconOn )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bIconOn);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UCSIconOn )( 
            IAcadViewport * This,
            /* [in] */ VARIANT_BOOL bIconOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UCSIconAtOrigin )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bIconAtOrigin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UCSIconAtOrigin )( 
            IAcadViewport * This,
            /* [in] */ VARIANT_BOOL bIconAtOrigin);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LowerLeftCorner )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT *lowLeft);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UpperRightCorner )( 
            IAcadViewport * This,
            /* [retval][out] */ VARIANT *upperRight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Split )( 
            IAcadViewport * This,
            /* [in] */ AcViewportSplitType NumWins);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridSpacing )( 
            IAcadViewport * This,
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridSpacing )( 
            IAcadViewport * This,
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetSnapSpacing )( 
            IAcadViewport * This,
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetSnapSpacing )( 
            IAcadViewport * This,
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetView )( 
            IAcadViewport * This,
            /* [in] */ IAcadView *View);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArcSmoothness )( 
            IAcadViewport * This,
            /* [retval][out] */ long *arcSmooth);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArcSmoothness )( 
            IAcadViewport * This,
            /* [in] */ long arcSmooth);
        
        END_INTERFACE
    } IAcadViewportVtbl;

    interface IAcadViewport
    {
        CONST_VTBL struct IAcadViewportVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadViewport_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadViewport_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadViewport_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadViewport_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadViewport_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadViewport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadViewport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadViewport_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadViewport_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadViewport_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadViewport_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadViewport_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadViewport_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadViewport_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadViewport_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadViewport_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadViewport_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadViewport_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadViewport_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadViewport_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadViewport_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadViewport_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadViewport_get_Center(This,center)	\
    ( (This)->lpVtbl -> get_Center(This,center) ) 

#define IAcadViewport_put_Center(This,center)	\
    ( (This)->lpVtbl -> put_Center(This,center) ) 

#define IAcadViewport_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadViewport_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadViewport_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadViewport_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadViewport_get_Target(This,targetPoint)	\
    ( (This)->lpVtbl -> get_Target(This,targetPoint) ) 

#define IAcadViewport_put_Target(This,targetPoint)	\
    ( (This)->lpVtbl -> put_Target(This,targetPoint) ) 

#define IAcadViewport_get_Direction(This,dirVec)	\
    ( (This)->lpVtbl -> get_Direction(This,dirVec) ) 

#define IAcadViewport_put_Direction(This,dirVec)	\
    ( (This)->lpVtbl -> put_Direction(This,dirVec) ) 

#define IAcadViewport_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadViewport_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadViewport_get_GridOn(This,bGridOn)	\
    ( (This)->lpVtbl -> get_GridOn(This,bGridOn) ) 

#define IAcadViewport_put_GridOn(This,bGridOn)	\
    ( (This)->lpVtbl -> put_GridOn(This,bGridOn) ) 

#define IAcadViewport_get_OrthoOn(This,bOrthoOn)	\
    ( (This)->lpVtbl -> get_OrthoOn(This,bOrthoOn) ) 

#define IAcadViewport_put_OrthoOn(This,bOrthoOn)	\
    ( (This)->lpVtbl -> put_OrthoOn(This,bOrthoOn) ) 

#define IAcadViewport_get_SnapBasePoint(This,lowLeft)	\
    ( (This)->lpVtbl -> get_SnapBasePoint(This,lowLeft) ) 

#define IAcadViewport_put_SnapBasePoint(This,lowLeft)	\
    ( (This)->lpVtbl -> put_SnapBasePoint(This,lowLeft) ) 

#define IAcadViewport_get_SnapOn(This,bSnapOn)	\
    ( (This)->lpVtbl -> get_SnapOn(This,bSnapOn) ) 

#define IAcadViewport_put_SnapOn(This,bSnapOn)	\
    ( (This)->lpVtbl -> put_SnapOn(This,bSnapOn) ) 

#define IAcadViewport_get_SnapRotationAngle(This,angle)	\
    ( (This)->lpVtbl -> get_SnapRotationAngle(This,angle) ) 

#define IAcadViewport_put_SnapRotationAngle(This,angle)	\
    ( (This)->lpVtbl -> put_SnapRotationAngle(This,angle) ) 

#define IAcadViewport_get_UCSIconOn(This,bIconOn)	\
    ( (This)->lpVtbl -> get_UCSIconOn(This,bIconOn) ) 

#define IAcadViewport_put_UCSIconOn(This,bIconOn)	\
    ( (This)->lpVtbl -> put_UCSIconOn(This,bIconOn) ) 

#define IAcadViewport_get_UCSIconAtOrigin(This,bIconAtOrigin)	\
    ( (This)->lpVtbl -> get_UCSIconAtOrigin(This,bIconAtOrigin) ) 

#define IAcadViewport_put_UCSIconAtOrigin(This,bIconAtOrigin)	\
    ( (This)->lpVtbl -> put_UCSIconAtOrigin(This,bIconAtOrigin) ) 

#define IAcadViewport_get_LowerLeftCorner(This,lowLeft)	\
    ( (This)->lpVtbl -> get_LowerLeftCorner(This,lowLeft) ) 

#define IAcadViewport_get_UpperRightCorner(This,upperRight)	\
    ( (This)->lpVtbl -> get_UpperRightCorner(This,upperRight) ) 

#define IAcadViewport_Split(This,NumWins)	\
    ( (This)->lpVtbl -> Split(This,NumWins) ) 

#define IAcadViewport_GetGridSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> GetGridSpacing(This,XSpacing,YSpacing) ) 

#define IAcadViewport_SetGridSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> SetGridSpacing(This,XSpacing,YSpacing) ) 

#define IAcadViewport_GetSnapSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> GetSnapSpacing(This,XSpacing,YSpacing) ) 

#define IAcadViewport_SetSnapSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> SetSnapSpacing(This,XSpacing,YSpacing) ) 

#define IAcadViewport_SetView(This,View)	\
    ( (This)->lpVtbl -> SetView(This,View) ) 

#define IAcadViewport_get_ArcSmoothness(This,arcSmooth)	\
    ( (This)->lpVtbl -> get_ArcSmoothness(This,arcSmooth) ) 

#define IAcadViewport_put_ArcSmoothness(This,arcSmooth)	\
    ( (This)->lpVtbl -> put_ArcSmoothness(This,arcSmooth) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadViewport_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadViewport,0x2D68B2C0,0xAAAD,0x4547,0x94,0x55,0x7F,0x47,0xBA,0x2F,0xBE,0x90);

#ifdef __cplusplus

class DECLSPEC_UUID("2D68B2C0-AAAD-4547-9455-7F47BA2FBE90")
AcadViewport;
#endif

#ifndef __IAcadGroup_INTERFACE_DEFINED__
#define __IAcadGroup_INTERFACE_DEFINED__

/* interface IAcadGroup */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadGroup,0x30A5C0D7,0x0157,0x40E0,0x8A,0x25,0x1B,0x17,0xCE,0x14,0xF7,0xEC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("30A5C0D7-0157-40E0-8A25-1B17CE14F7EC")
    IAcadGroup : public IAcadObject
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadEntity **ppEntity) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TrueColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Layer( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Linetype( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinetypeScale( 
            /* [in] */ ACAD_NOUNITS newVal) = 0;
        
        virtual /* [nonbrowsable][helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Highlight( 
            /* [in] */ VARIANT_BOOL HighlightFlag) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotStyleName( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineWeight( 
            /* [in] */ ACAD_LWEIGHT newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE AppendItems( 
            /* [in] */ VARIANT Objects) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveItems( 
            /* [in] */ VARIANT Objects) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Update( void) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Material( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ AcColor newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadGroupVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadGroup * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadGroup * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadGroup * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadGroup * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadGroup * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadGroup * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadGroup * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadGroup * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadGroup * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadGroup * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadGroup * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadGroup * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadGroup * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadGroup * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadGroup * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadGroup * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadGroup * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadGroup * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadGroup * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadGroup * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadGroup * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadGroup * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadGroup * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadEntity **ppEntity);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadGroup * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadGroup * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadGroup * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadGroup * This,
            /* [in] */ BSTR newVal);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadGroup * This,
            /* [in] */ BSTR newVal);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadGroup * This,
            /* [in] */ ACAD_NOUNITS newVal);
        
        /* [nonbrowsable][helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadGroup * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadGroup * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadGroup * This,
            /* [in] */ BSTR newVal);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineWeight )( 
            IAcadGroup * This,
            /* [in] */ ACAD_LWEIGHT newVal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadGroup * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadGroup * This,
            /* [in] */ BSTR newVal);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendItems )( 
            IAcadGroup * This,
            /* [in] */ VARIANT Objects);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveItems )( 
            IAcadGroup * This,
            /* [in] */ VARIANT Objects);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadGroup * This);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadGroup * This,
            /* [in] */ BSTR newVal);
        
        /* [helpcontext][helpstringcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadGroup * This,
            /* [in] */ AcColor newVal);
        
        END_INTERFACE
    } IAcadGroupVtbl;

    interface IAcadGroup
    {
        CONST_VTBL struct IAcadGroupVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadGroup_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadGroup_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadGroup_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadGroup_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadGroup_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadGroup_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadGroup_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadGroup_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadGroup_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadGroup_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadGroup_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadGroup_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadGroup_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadGroup_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadGroup_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadGroup_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadGroup_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadGroup_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadGroup_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadGroup_Item(This,Index,ppEntity)	\
    ( (This)->lpVtbl -> Item(This,Index,ppEntity) ) 

#define IAcadGroup_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadGroup_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadGroup_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadGroup_put_Layer(This,newVal)	\
    ( (This)->lpVtbl -> put_Layer(This,newVal) ) 

#define IAcadGroup_put_Linetype(This,newVal)	\
    ( (This)->lpVtbl -> put_Linetype(This,newVal) ) 

#define IAcadGroup_put_LinetypeScale(This,newVal)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,newVal) ) 

#define IAcadGroup_put_Visible(This,newVal)	\
    ( (This)->lpVtbl -> put_Visible(This,newVal) ) 

#define IAcadGroup_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadGroup_put_PlotStyleName(This,newVal)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,newVal) ) 

#define IAcadGroup_put_LineWeight(This,newVal)	\
    ( (This)->lpVtbl -> put_LineWeight(This,newVal) ) 

#define IAcadGroup_get_Name(This,pVal)	\
    ( (This)->lpVtbl -> get_Name(This,pVal) ) 

#define IAcadGroup_put_Name(This,newVal)	\
    ( (This)->lpVtbl -> put_Name(This,newVal) ) 

#define IAcadGroup_AppendItems(This,Objects)	\
    ( (This)->lpVtbl -> AppendItems(This,Objects) ) 

#define IAcadGroup_RemoveItems(This,Objects)	\
    ( (This)->lpVtbl -> RemoveItems(This,Objects) ) 

#define IAcadGroup_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadGroup_put_Material(This,newVal)	\
    ( (This)->lpVtbl -> put_Material(This,newVal) ) 

#define IAcadGroup_put_Color(This,newVal)	\
    ( (This)->lpVtbl -> put_Color(This,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadGroup_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadGroup,0x98BC2557,0x3596,0x4E80,0x8A,0x77,0xDA,0x5E,0xE6,0xE1,0x3D,0x05);

#ifdef __cplusplus

class DECLSPEC_UUID("98BC2557-3596-4E80-8A77-DA5EE6E13D05")
AcadGroup;
#endif

#ifndef __IAcadPlotConfiguration_INTERFACE_DEFINED__
#define __IAcadPlotConfiguration_INTERFACE_DEFINED__

/* interface IAcadPlotConfiguration */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPlotConfiguration,0xC0FFEC74,0xADD8,0x46C7,0xA6,0xD6,0xE2,0xB1,0xD3,0xFA,0x12,0xAC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C0FFEC74-ADD8-46C7-A6D6-E2B1D3FA12AC")
    IAcadPlotConfiguration : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConfigName( 
            /* [retval][out] */ BSTR *pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ConfigName( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CanonicalMediaName( 
            /* [retval][out] */ BSTR *pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CanonicalMediaName( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PaperUnits( 
            /* [retval][out] */ AcPlotPaperUnits *pPaperUnits) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PaperUnits( 
            /* [in] */ AcPlotPaperUnits PaperUnits) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotViewportBorders( 
            /* [retval][out] */ VARIANT_BOOL *pViewportBorders) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotViewportBorders( 
            /* [in] */ VARIANT_BOOL ViewportBorders) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowPlotStyles( 
            /* [retval][out] */ VARIANT_BOOL *pStyles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowPlotStyles( 
            /* [in] */ VARIANT_BOOL Styles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotRotation( 
            /* [retval][out] */ AcPlotRotation *pRotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotRotation( 
            /* [in] */ AcPlotRotation Rotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterPlot( 
            /* [retval][out] */ VARIANT_BOOL *pCentered) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterPlot( 
            /* [in] */ VARIANT_BOOL Centered) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotHidden( 
            /* [retval][out] */ VARIANT_BOOL *pHidden) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotHidden( 
            /* [in] */ VARIANT_BOOL Hidden) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotType( 
            /* [retval][out] */ AcPlotType *pType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotType( 
            /* [in] */ AcPlotType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewToPlot( 
            /* [retval][out] */ BSTR *pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ViewToPlot( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseStandardScale( 
            /* [retval][out] */ VARIANT_BOOL *pUseStdScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseStandardScale( 
            /* [in] */ VARIANT_BOOL UseStdScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StandardScale( 
            /* [retval][out] */ AcPlotScale *pStdScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StandardScale( 
            /* [in] */ AcPlotScale StdScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCustomScale( 
            /* [out] */ double *Numerator,
            /* [out] */ double *Denominator) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCustomScale( 
            /* [in] */ double Numerator,
            /* [in] */ double Denominator) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleLineweights( 
            /* [retval][out] */ VARIANT_BOOL *pScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleLineweights( 
            /* [in] */ VARIANT_BOOL scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotWithLineweights( 
            /* [retval][out] */ VARIANT_BOOL *pPlot) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotWithLineweights( 
            /* [in] */ VARIANT_BOOL plot) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotViewportsFirst( 
            /* [retval][out] */ VARIANT_BOOL *pViewportsFirst) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotViewportsFirst( 
            /* [in] */ VARIANT_BOOL ViewportsFirst) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleSheet( 
            /* [retval][out] */ BSTR *pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleSheet( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetPaperMargins( 
            /* [out] */ VARIANT *LowerLeft,
            /* [out] */ VARIANT *UpperRight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetPaperSize( 
            /* [out] */ double *Width,
            /* [out] */ double *Height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotOrigin( 
            /* [retval][out] */ VARIANT *pOrigin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotOrigin( 
            /* [in] */ VARIANT Origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetWindowToPlot( 
            /* [out] */ VARIANT *LowerLeft,
            /* [out] */ VARIANT *UpperRight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetWindowToPlot( 
            /* [in] */ VARIANT LowerLeft,
            /* [in] */ VARIANT UpperRight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotWithPlotStyles( 
            /* [retval][out] */ VARIANT_BOOL *pStyles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotWithPlotStyles( 
            /* [in] */ VARIANT_BOOL Styles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelType( 
            /* [retval][out] */ VARIANT_BOOL *pType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CopyFrom( 
            /* [in] */ IAcadPlotConfiguration *pPlotConfig) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCanonicalMediaNames( 
            /* [retval][out] */ VARIANT *pNames) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetPlotDeviceNames( 
            /* [retval][out] */ VARIANT *pNames) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetPlotStyleTableNames( 
            /* [retval][out] */ VARIANT *pNames) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RefreshPlotDeviceInfo( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetLocaleMediaName( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ BSTR *pLocalName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPlotConfigurationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPlotConfiguration * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPlotConfiguration * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPlotConfiguration * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPlotConfiguration * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPlotConfiguration * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPlotConfiguration * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPlotConfiguration * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPlotConfiguration * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPlotConfiguration * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConfigName )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ConfigName )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CanonicalMediaName )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CanonicalMediaName )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PaperUnits )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ AcPlotPaperUnits *pPaperUnits);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PaperUnits )( 
            IAcadPlotConfiguration * This,
            /* [in] */ AcPlotPaperUnits PaperUnits);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotViewportBorders )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pViewportBorders);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotViewportBorders )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL ViewportBorders);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowPlotStyles )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pStyles);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShowPlotStyles )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL Styles);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotRotation )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ AcPlotRotation *pRotation);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotRotation )( 
            IAcadPlotConfiguration * This,
            /* [in] */ AcPlotRotation Rotation);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterPlot )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pCentered);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterPlot )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL Centered);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotHidden )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pHidden);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotHidden )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL Hidden);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotType )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ AcPlotType *pType);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotType )( 
            IAcadPlotConfiguration * This,
            /* [in] */ AcPlotType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ViewToPlot )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ViewToPlot )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UseStandardScale )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pUseStdScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UseStandardScale )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL UseStdScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StandardScale )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ AcPlotScale *pStdScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StandardScale )( 
            IAcadPlotConfiguration * This,
            /* [in] */ AcPlotScale StdScale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCustomScale )( 
            IAcadPlotConfiguration * This,
            /* [out] */ double *Numerator,
            /* [out] */ double *Denominator);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCustomScale )( 
            IAcadPlotConfiguration * This,
            /* [in] */ double Numerator,
            /* [in] */ double Denominator);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleLineweights )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleLineweights )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotWithLineweights )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pPlot);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotWithLineweights )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL plot);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotViewportsFirst )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pViewportsFirst);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotViewportsFirst )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL ViewportsFirst);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleSheet )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleSheet )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPaperMargins )( 
            IAcadPlotConfiguration * This,
            /* [out] */ VARIANT *LowerLeft,
            /* [out] */ VARIANT *UpperRight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPaperSize )( 
            IAcadPlotConfiguration * This,
            /* [out] */ double *Width,
            /* [out] */ double *Height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotOrigin )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT *pOrigin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotOrigin )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT Origin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetWindowToPlot )( 
            IAcadPlotConfiguration * This,
            /* [out] */ VARIANT *LowerLeft,
            /* [out] */ VARIANT *UpperRight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetWindowToPlot )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT LowerLeft,
            /* [in] */ VARIANT UpperRight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotWithPlotStyles )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pStyles);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotWithPlotStyles )( 
            IAcadPlotConfiguration * This,
            /* [in] */ VARIANT_BOOL Styles);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModelType )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT_BOOL *pType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CopyFrom )( 
            IAcadPlotConfiguration * This,
            /* [in] */ IAcadPlotConfiguration *pPlotConfig);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCanonicalMediaNames )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT *pNames);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPlotDeviceNames )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT *pNames);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPlotStyleTableNames )( 
            IAcadPlotConfiguration * This,
            /* [retval][out] */ VARIANT *pNames);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RefreshPlotDeviceInfo )( 
            IAcadPlotConfiguration * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLocaleMediaName )( 
            IAcadPlotConfiguration * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ BSTR *pLocalName);
        
        END_INTERFACE
    } IAcadPlotConfigurationVtbl;

    interface IAcadPlotConfiguration
    {
        CONST_VTBL struct IAcadPlotConfigurationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPlotConfiguration_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPlotConfiguration_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPlotConfiguration_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPlotConfiguration_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPlotConfiguration_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPlotConfiguration_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPlotConfiguration_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPlotConfiguration_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPlotConfiguration_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPlotConfiguration_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPlotConfiguration_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPlotConfiguration_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPlotConfiguration_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPlotConfiguration_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPlotConfiguration_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPlotConfiguration_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPlotConfiguration_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPlotConfiguration_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPlotConfiguration_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPlotConfiguration_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPlotConfiguration_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPlotConfiguration_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPlotConfiguration_get_Name(This,pName)	\
    ( (This)->lpVtbl -> get_Name(This,pName) ) 

#define IAcadPlotConfiguration_put_Name(This,Name)	\
    ( (This)->lpVtbl -> put_Name(This,Name) ) 

#define IAcadPlotConfiguration_get_ConfigName(This,pName)	\
    ( (This)->lpVtbl -> get_ConfigName(This,pName) ) 

#define IAcadPlotConfiguration_put_ConfigName(This,Name)	\
    ( (This)->lpVtbl -> put_ConfigName(This,Name) ) 

#define IAcadPlotConfiguration_get_CanonicalMediaName(This,pName)	\
    ( (This)->lpVtbl -> get_CanonicalMediaName(This,pName) ) 

#define IAcadPlotConfiguration_put_CanonicalMediaName(This,Name)	\
    ( (This)->lpVtbl -> put_CanonicalMediaName(This,Name) ) 

#define IAcadPlotConfiguration_get_PaperUnits(This,pPaperUnits)	\
    ( (This)->lpVtbl -> get_PaperUnits(This,pPaperUnits) ) 

#define IAcadPlotConfiguration_put_PaperUnits(This,PaperUnits)	\
    ( (This)->lpVtbl -> put_PaperUnits(This,PaperUnits) ) 

#define IAcadPlotConfiguration_get_PlotViewportBorders(This,pViewportBorders)	\
    ( (This)->lpVtbl -> get_PlotViewportBorders(This,pViewportBorders) ) 

#define IAcadPlotConfiguration_put_PlotViewportBorders(This,ViewportBorders)	\
    ( (This)->lpVtbl -> put_PlotViewportBorders(This,ViewportBorders) ) 

#define IAcadPlotConfiguration_get_ShowPlotStyles(This,pStyles)	\
    ( (This)->lpVtbl -> get_ShowPlotStyles(This,pStyles) ) 

#define IAcadPlotConfiguration_put_ShowPlotStyles(This,Styles)	\
    ( (This)->lpVtbl -> put_ShowPlotStyles(This,Styles) ) 

#define IAcadPlotConfiguration_get_PlotRotation(This,pRotation)	\
    ( (This)->lpVtbl -> get_PlotRotation(This,pRotation) ) 

#define IAcadPlotConfiguration_put_PlotRotation(This,Rotation)	\
    ( (This)->lpVtbl -> put_PlotRotation(This,Rotation) ) 

#define IAcadPlotConfiguration_get_CenterPlot(This,pCentered)	\
    ( (This)->lpVtbl -> get_CenterPlot(This,pCentered) ) 

#define IAcadPlotConfiguration_put_CenterPlot(This,Centered)	\
    ( (This)->lpVtbl -> put_CenterPlot(This,Centered) ) 

#define IAcadPlotConfiguration_get_PlotHidden(This,pHidden)	\
    ( (This)->lpVtbl -> get_PlotHidden(This,pHidden) ) 

#define IAcadPlotConfiguration_put_PlotHidden(This,Hidden)	\
    ( (This)->lpVtbl -> put_PlotHidden(This,Hidden) ) 

#define IAcadPlotConfiguration_get_PlotType(This,pType)	\
    ( (This)->lpVtbl -> get_PlotType(This,pType) ) 

#define IAcadPlotConfiguration_put_PlotType(This,Type)	\
    ( (This)->lpVtbl -> put_PlotType(This,Type) ) 

#define IAcadPlotConfiguration_get_ViewToPlot(This,pName)	\
    ( (This)->lpVtbl -> get_ViewToPlot(This,pName) ) 

#define IAcadPlotConfiguration_put_ViewToPlot(This,Name)	\
    ( (This)->lpVtbl -> put_ViewToPlot(This,Name) ) 

#define IAcadPlotConfiguration_get_UseStandardScale(This,pUseStdScale)	\
    ( (This)->lpVtbl -> get_UseStandardScale(This,pUseStdScale) ) 

#define IAcadPlotConfiguration_put_UseStandardScale(This,UseStdScale)	\
    ( (This)->lpVtbl -> put_UseStandardScale(This,UseStdScale) ) 

#define IAcadPlotConfiguration_get_StandardScale(This,pStdScale)	\
    ( (This)->lpVtbl -> get_StandardScale(This,pStdScale) ) 

#define IAcadPlotConfiguration_put_StandardScale(This,StdScale)	\
    ( (This)->lpVtbl -> put_StandardScale(This,StdScale) ) 

#define IAcadPlotConfiguration_GetCustomScale(This,Numerator,Denominator)	\
    ( (This)->lpVtbl -> GetCustomScale(This,Numerator,Denominator) ) 

#define IAcadPlotConfiguration_SetCustomScale(This,Numerator,Denominator)	\
    ( (This)->lpVtbl -> SetCustomScale(This,Numerator,Denominator) ) 

#define IAcadPlotConfiguration_get_ScaleLineweights(This,pScale)	\
    ( (This)->lpVtbl -> get_ScaleLineweights(This,pScale) ) 

#define IAcadPlotConfiguration_put_ScaleLineweights(This,scale)	\
    ( (This)->lpVtbl -> put_ScaleLineweights(This,scale) ) 

#define IAcadPlotConfiguration_get_PlotWithLineweights(This,pPlot)	\
    ( (This)->lpVtbl -> get_PlotWithLineweights(This,pPlot) ) 

#define IAcadPlotConfiguration_put_PlotWithLineweights(This,plot)	\
    ( (This)->lpVtbl -> put_PlotWithLineweights(This,plot) ) 

#define IAcadPlotConfiguration_get_PlotViewportsFirst(This,pViewportsFirst)	\
    ( (This)->lpVtbl -> get_PlotViewportsFirst(This,pViewportsFirst) ) 

#define IAcadPlotConfiguration_put_PlotViewportsFirst(This,ViewportsFirst)	\
    ( (This)->lpVtbl -> put_PlotViewportsFirst(This,ViewportsFirst) ) 

#define IAcadPlotConfiguration_get_StyleSheet(This,pName)	\
    ( (This)->lpVtbl -> get_StyleSheet(This,pName) ) 

#define IAcadPlotConfiguration_put_StyleSheet(This,Name)	\
    ( (This)->lpVtbl -> put_StyleSheet(This,Name) ) 

#define IAcadPlotConfiguration_GetPaperMargins(This,LowerLeft,UpperRight)	\
    ( (This)->lpVtbl -> GetPaperMargins(This,LowerLeft,UpperRight) ) 

#define IAcadPlotConfiguration_GetPaperSize(This,Width,Height)	\
    ( (This)->lpVtbl -> GetPaperSize(This,Width,Height) ) 

#define IAcadPlotConfiguration_get_PlotOrigin(This,pOrigin)	\
    ( (This)->lpVtbl -> get_PlotOrigin(This,pOrigin) ) 

#define IAcadPlotConfiguration_put_PlotOrigin(This,Origin)	\
    ( (This)->lpVtbl -> put_PlotOrigin(This,Origin) ) 

#define IAcadPlotConfiguration_GetWindowToPlot(This,LowerLeft,UpperRight)	\
    ( (This)->lpVtbl -> GetWindowToPlot(This,LowerLeft,UpperRight) ) 

#define IAcadPlotConfiguration_SetWindowToPlot(This,LowerLeft,UpperRight)	\
    ( (This)->lpVtbl -> SetWindowToPlot(This,LowerLeft,UpperRight) ) 

#define IAcadPlotConfiguration_get_PlotWithPlotStyles(This,pStyles)	\
    ( (This)->lpVtbl -> get_PlotWithPlotStyles(This,pStyles) ) 

#define IAcadPlotConfiguration_put_PlotWithPlotStyles(This,Styles)	\
    ( (This)->lpVtbl -> put_PlotWithPlotStyles(This,Styles) ) 

#define IAcadPlotConfiguration_get_ModelType(This,pType)	\
    ( (This)->lpVtbl -> get_ModelType(This,pType) ) 

#define IAcadPlotConfiguration_CopyFrom(This,pPlotConfig)	\
    ( (This)->lpVtbl -> CopyFrom(This,pPlotConfig) ) 

#define IAcadPlotConfiguration_GetCanonicalMediaNames(This,pNames)	\
    ( (This)->lpVtbl -> GetCanonicalMediaNames(This,pNames) ) 

#define IAcadPlotConfiguration_GetPlotDeviceNames(This,pNames)	\
    ( (This)->lpVtbl -> GetPlotDeviceNames(This,pNames) ) 

#define IAcadPlotConfiguration_GetPlotStyleTableNames(This,pNames)	\
    ( (This)->lpVtbl -> GetPlotStyleTableNames(This,pNames) ) 

#define IAcadPlotConfiguration_RefreshPlotDeviceInfo(This)	\
    ( (This)->lpVtbl -> RefreshPlotDeviceInfo(This) ) 

#define IAcadPlotConfiguration_GetLocaleMediaName(This,Name,pLocalName)	\
    ( (This)->lpVtbl -> GetLocaleMediaName(This,Name,pLocalName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPlotConfiguration_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPlotConfiguration,0xEF5B641C,0xFC36,0x4936,0xBB,0x03,0x9D,0x48,0x09,0xBA,0xA4,0x5B);

#ifdef __cplusplus

class DECLSPEC_UUID("EF5B641C-FC36-4936-BB03-9D4809BAA45B")
AcadPlotConfiguration;
#endif

#ifndef __IAcadLayout_INTERFACE_DEFINED__
#define __IAcadLayout_INTERFACE_DEFINED__

/* interface IAcadLayout */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLayout,0xC6F55F5A,0x33AF,0x4B5F,0x99,0x49,0x86,0xC6,0xAE,0xEF,0x18,0x34);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C6F55F5A-33AF-4B5F-9949-86C6AEEF1834")
    IAcadLayout : public IAcadPlotConfiguration
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Block( 
            /* [retval][out] */ IAcadBlock **pBlock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TabOrder( 
            /* [retval][out] */ long *pOrder) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TabOrder( 
            /* [in] */ long Order) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLayoutVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLayout * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLayout * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLayout * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLayout * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLayout * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLayout * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLayout * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLayout * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLayout * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLayout * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLayout * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLayout * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLayout * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLayout * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLayout * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLayout * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLayout * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLayout * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLayout * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadLayout * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConfigName )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ConfigName )( 
            IAcadLayout * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CanonicalMediaName )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CanonicalMediaName )( 
            IAcadLayout * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PaperUnits )( 
            IAcadLayout * This,
            /* [retval][out] */ AcPlotPaperUnits *pPaperUnits);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PaperUnits )( 
            IAcadLayout * This,
            /* [in] */ AcPlotPaperUnits PaperUnits);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotViewportBorders )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pViewportBorders);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotViewportBorders )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL ViewportBorders);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowPlotStyles )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pStyles);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShowPlotStyles )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL Styles);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotRotation )( 
            IAcadLayout * This,
            /* [retval][out] */ AcPlotRotation *pRotation);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotRotation )( 
            IAcadLayout * This,
            /* [in] */ AcPlotRotation Rotation);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterPlot )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pCentered);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterPlot )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL Centered);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotHidden )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pHidden);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotHidden )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL Hidden);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotType )( 
            IAcadLayout * This,
            /* [retval][out] */ AcPlotType *pType);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotType )( 
            IAcadLayout * This,
            /* [in] */ AcPlotType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ViewToPlot )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ViewToPlot )( 
            IAcadLayout * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UseStandardScale )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pUseStdScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UseStandardScale )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL UseStdScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StandardScale )( 
            IAcadLayout * This,
            /* [retval][out] */ AcPlotScale *pStdScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StandardScale )( 
            IAcadLayout * This,
            /* [in] */ AcPlotScale StdScale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCustomScale )( 
            IAcadLayout * This,
            /* [out] */ double *Numerator,
            /* [out] */ double *Denominator);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCustomScale )( 
            IAcadLayout * This,
            /* [in] */ double Numerator,
            /* [in] */ double Denominator);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleLineweights )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleLineweights )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotWithLineweights )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pPlot);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotWithLineweights )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL plot);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotViewportsFirst )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pViewportsFirst);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotViewportsFirst )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL ViewportsFirst);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleSheet )( 
            IAcadLayout * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleSheet )( 
            IAcadLayout * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPaperMargins )( 
            IAcadLayout * This,
            /* [out] */ VARIANT *LowerLeft,
            /* [out] */ VARIANT *UpperRight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPaperSize )( 
            IAcadLayout * This,
            /* [out] */ double *Width,
            /* [out] */ double *Height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotOrigin )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT *pOrigin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotOrigin )( 
            IAcadLayout * This,
            /* [in] */ VARIANT Origin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetWindowToPlot )( 
            IAcadLayout * This,
            /* [out] */ VARIANT *LowerLeft,
            /* [out] */ VARIANT *UpperRight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetWindowToPlot )( 
            IAcadLayout * This,
            /* [in] */ VARIANT LowerLeft,
            /* [in] */ VARIANT UpperRight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlotWithPlotStyles )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pStyles);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PlotWithPlotStyles )( 
            IAcadLayout * This,
            /* [in] */ VARIANT_BOOL Styles);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModelType )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT_BOOL *pType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CopyFrom )( 
            IAcadLayout * This,
            /* [in] */ IAcadPlotConfiguration *pPlotConfig);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCanonicalMediaNames )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT *pNames);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPlotDeviceNames )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT *pNames);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetPlotStyleTableNames )( 
            IAcadLayout * This,
            /* [retval][out] */ VARIANT *pNames);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RefreshPlotDeviceInfo )( 
            IAcadLayout * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLocaleMediaName )( 
            IAcadLayout * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ BSTR *pLocalName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Block )( 
            IAcadLayout * This,
            /* [retval][out] */ IAcadBlock **pBlock);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TabOrder )( 
            IAcadLayout * This,
            /* [retval][out] */ long *pOrder);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TabOrder )( 
            IAcadLayout * This,
            /* [in] */ long Order);
        
        END_INTERFACE
    } IAcadLayoutVtbl;

    interface IAcadLayout
    {
        CONST_VTBL struct IAcadLayoutVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLayout_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLayout_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLayout_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLayout_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLayout_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLayout_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLayout_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLayout_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLayout_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLayout_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLayout_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLayout_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLayout_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLayout_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLayout_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLayout_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLayout_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLayout_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLayout_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLayout_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLayout_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLayout_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLayout_get_Name(This,pName)	\
    ( (This)->lpVtbl -> get_Name(This,pName) ) 

#define IAcadLayout_put_Name(This,Name)	\
    ( (This)->lpVtbl -> put_Name(This,Name) ) 

#define IAcadLayout_get_ConfigName(This,pName)	\
    ( (This)->lpVtbl -> get_ConfigName(This,pName) ) 

#define IAcadLayout_put_ConfigName(This,Name)	\
    ( (This)->lpVtbl -> put_ConfigName(This,Name) ) 

#define IAcadLayout_get_CanonicalMediaName(This,pName)	\
    ( (This)->lpVtbl -> get_CanonicalMediaName(This,pName) ) 

#define IAcadLayout_put_CanonicalMediaName(This,Name)	\
    ( (This)->lpVtbl -> put_CanonicalMediaName(This,Name) ) 

#define IAcadLayout_get_PaperUnits(This,pPaperUnits)	\
    ( (This)->lpVtbl -> get_PaperUnits(This,pPaperUnits) ) 

#define IAcadLayout_put_PaperUnits(This,PaperUnits)	\
    ( (This)->lpVtbl -> put_PaperUnits(This,PaperUnits) ) 

#define IAcadLayout_get_PlotViewportBorders(This,pViewportBorders)	\
    ( (This)->lpVtbl -> get_PlotViewportBorders(This,pViewportBorders) ) 

#define IAcadLayout_put_PlotViewportBorders(This,ViewportBorders)	\
    ( (This)->lpVtbl -> put_PlotViewportBorders(This,ViewportBorders) ) 

#define IAcadLayout_get_ShowPlotStyles(This,pStyles)	\
    ( (This)->lpVtbl -> get_ShowPlotStyles(This,pStyles) ) 

#define IAcadLayout_put_ShowPlotStyles(This,Styles)	\
    ( (This)->lpVtbl -> put_ShowPlotStyles(This,Styles) ) 

#define IAcadLayout_get_PlotRotation(This,pRotation)	\
    ( (This)->lpVtbl -> get_PlotRotation(This,pRotation) ) 

#define IAcadLayout_put_PlotRotation(This,Rotation)	\
    ( (This)->lpVtbl -> put_PlotRotation(This,Rotation) ) 

#define IAcadLayout_get_CenterPlot(This,pCentered)	\
    ( (This)->lpVtbl -> get_CenterPlot(This,pCentered) ) 

#define IAcadLayout_put_CenterPlot(This,Centered)	\
    ( (This)->lpVtbl -> put_CenterPlot(This,Centered) ) 

#define IAcadLayout_get_PlotHidden(This,pHidden)	\
    ( (This)->lpVtbl -> get_PlotHidden(This,pHidden) ) 

#define IAcadLayout_put_PlotHidden(This,Hidden)	\
    ( (This)->lpVtbl -> put_PlotHidden(This,Hidden) ) 

#define IAcadLayout_get_PlotType(This,pType)	\
    ( (This)->lpVtbl -> get_PlotType(This,pType) ) 

#define IAcadLayout_put_PlotType(This,Type)	\
    ( (This)->lpVtbl -> put_PlotType(This,Type) ) 

#define IAcadLayout_get_ViewToPlot(This,pName)	\
    ( (This)->lpVtbl -> get_ViewToPlot(This,pName) ) 

#define IAcadLayout_put_ViewToPlot(This,Name)	\
    ( (This)->lpVtbl -> put_ViewToPlot(This,Name) ) 

#define IAcadLayout_get_UseStandardScale(This,pUseStdScale)	\
    ( (This)->lpVtbl -> get_UseStandardScale(This,pUseStdScale) ) 

#define IAcadLayout_put_UseStandardScale(This,UseStdScale)	\
    ( (This)->lpVtbl -> put_UseStandardScale(This,UseStdScale) ) 

#define IAcadLayout_get_StandardScale(This,pStdScale)	\
    ( (This)->lpVtbl -> get_StandardScale(This,pStdScale) ) 

#define IAcadLayout_put_StandardScale(This,StdScale)	\
    ( (This)->lpVtbl -> put_StandardScale(This,StdScale) ) 

#define IAcadLayout_GetCustomScale(This,Numerator,Denominator)	\
    ( (This)->lpVtbl -> GetCustomScale(This,Numerator,Denominator) ) 

#define IAcadLayout_SetCustomScale(This,Numerator,Denominator)	\
    ( (This)->lpVtbl -> SetCustomScale(This,Numerator,Denominator) ) 

#define IAcadLayout_get_ScaleLineweights(This,pScale)	\
    ( (This)->lpVtbl -> get_ScaleLineweights(This,pScale) ) 

#define IAcadLayout_put_ScaleLineweights(This,scale)	\
    ( (This)->lpVtbl -> put_ScaleLineweights(This,scale) ) 

#define IAcadLayout_get_PlotWithLineweights(This,pPlot)	\
    ( (This)->lpVtbl -> get_PlotWithLineweights(This,pPlot) ) 

#define IAcadLayout_put_PlotWithLineweights(This,plot)	\
    ( (This)->lpVtbl -> put_PlotWithLineweights(This,plot) ) 

#define IAcadLayout_get_PlotViewportsFirst(This,pViewportsFirst)	\
    ( (This)->lpVtbl -> get_PlotViewportsFirst(This,pViewportsFirst) ) 

#define IAcadLayout_put_PlotViewportsFirst(This,ViewportsFirst)	\
    ( (This)->lpVtbl -> put_PlotViewportsFirst(This,ViewportsFirst) ) 

#define IAcadLayout_get_StyleSheet(This,pName)	\
    ( (This)->lpVtbl -> get_StyleSheet(This,pName) ) 

#define IAcadLayout_put_StyleSheet(This,Name)	\
    ( (This)->lpVtbl -> put_StyleSheet(This,Name) ) 

#define IAcadLayout_GetPaperMargins(This,LowerLeft,UpperRight)	\
    ( (This)->lpVtbl -> GetPaperMargins(This,LowerLeft,UpperRight) ) 

#define IAcadLayout_GetPaperSize(This,Width,Height)	\
    ( (This)->lpVtbl -> GetPaperSize(This,Width,Height) ) 

#define IAcadLayout_get_PlotOrigin(This,pOrigin)	\
    ( (This)->lpVtbl -> get_PlotOrigin(This,pOrigin) ) 

#define IAcadLayout_put_PlotOrigin(This,Origin)	\
    ( (This)->lpVtbl -> put_PlotOrigin(This,Origin) ) 

#define IAcadLayout_GetWindowToPlot(This,LowerLeft,UpperRight)	\
    ( (This)->lpVtbl -> GetWindowToPlot(This,LowerLeft,UpperRight) ) 

#define IAcadLayout_SetWindowToPlot(This,LowerLeft,UpperRight)	\
    ( (This)->lpVtbl -> SetWindowToPlot(This,LowerLeft,UpperRight) ) 

#define IAcadLayout_get_PlotWithPlotStyles(This,pStyles)	\
    ( (This)->lpVtbl -> get_PlotWithPlotStyles(This,pStyles) ) 

#define IAcadLayout_put_PlotWithPlotStyles(This,Styles)	\
    ( (This)->lpVtbl -> put_PlotWithPlotStyles(This,Styles) ) 

#define IAcadLayout_get_ModelType(This,pType)	\
    ( (This)->lpVtbl -> get_ModelType(This,pType) ) 

#define IAcadLayout_CopyFrom(This,pPlotConfig)	\
    ( (This)->lpVtbl -> CopyFrom(This,pPlotConfig) ) 

#define IAcadLayout_GetCanonicalMediaNames(This,pNames)	\
    ( (This)->lpVtbl -> GetCanonicalMediaNames(This,pNames) ) 

#define IAcadLayout_GetPlotDeviceNames(This,pNames)	\
    ( (This)->lpVtbl -> GetPlotDeviceNames(This,pNames) ) 

#define IAcadLayout_GetPlotStyleTableNames(This,pNames)	\
    ( (This)->lpVtbl -> GetPlotStyleTableNames(This,pNames) ) 

#define IAcadLayout_RefreshPlotDeviceInfo(This)	\
    ( (This)->lpVtbl -> RefreshPlotDeviceInfo(This) ) 

#define IAcadLayout_GetLocaleMediaName(This,Name,pLocalName)	\
    ( (This)->lpVtbl -> GetLocaleMediaName(This,Name,pLocalName) ) 


#define IAcadLayout_get_Block(This,pBlock)	\
    ( (This)->lpVtbl -> get_Block(This,pBlock) ) 

#define IAcadLayout_get_TabOrder(This,pOrder)	\
    ( (This)->lpVtbl -> get_TabOrder(This,pOrder) ) 

#define IAcadLayout_put_TabOrder(This,Order)	\
    ( (This)->lpVtbl -> put_TabOrder(This,Order) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLayout_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLayout,0x28E5B54D,0xD4DE,0x4BD6,0x87,0xDC,0xB7,0x95,0xBD,0xF9,0xF0,0xB2);

#ifdef __cplusplus

class DECLSPEC_UUID("28E5B54D-D4DE-4BD6-87DC-B795BDF9F0B2")
AcadLayout;
#endif

#ifndef __IAcadIdPair_INTERFACE_DEFINED__
#define __IAcadIdPair_INTERFACE_DEFINED__

/* interface IAcadIdPair */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadIdPair,0x557263C6,0x4FB1,0x4576,0xAE,0x87,0x25,0xDC,0x9F,0x6C,0x45,0xE7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("557263C6-4FB1-4576-AE87-25DC9F6C45E7")
    IAcadIdPair : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsCloned( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsOwnerXlated( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsPrimary( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Key( 
            /* [retval][out] */ LONG_PTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ LONG_PTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *ApplicationObject) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Key32( 
            /* [retval][out] */ LONG *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value32( 
            /* [retval][out] */ LONG *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadIdPairVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadIdPair * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadIdPair * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadIdPair * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadIdPair * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadIdPair * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadIdPair * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadIdPair * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsCloned )( 
            IAcadIdPair * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsOwnerXlated )( 
            IAcadIdPair * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsPrimary )( 
            IAcadIdPair * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Key )( 
            IAcadIdPair * This,
            /* [retval][out] */ LONG_PTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            IAcadIdPair * This,
            /* [retval][out] */ LONG_PTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadIdPair * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Key32 )( 
            IAcadIdPair * This,
            /* [retval][out] */ LONG *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value32 )( 
            IAcadIdPair * This,
            /* [retval][out] */ LONG *pVal);
        
        END_INTERFACE
    } IAcadIdPairVtbl;

    interface IAcadIdPair
    {
        CONST_VTBL struct IAcadIdPairVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadIdPair_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadIdPair_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadIdPair_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadIdPair_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadIdPair_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadIdPair_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadIdPair_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadIdPair_get_IsCloned(This,pVal)	\
    ( (This)->lpVtbl -> get_IsCloned(This,pVal) ) 

#define IAcadIdPair_get_IsOwnerXlated(This,pVal)	\
    ( (This)->lpVtbl -> get_IsOwnerXlated(This,pVal) ) 

#define IAcadIdPair_get_IsPrimary(This,pVal)	\
    ( (This)->lpVtbl -> get_IsPrimary(This,pVal) ) 

#define IAcadIdPair_get_Key(This,pVal)	\
    ( (This)->lpVtbl -> get_Key(This,pVal) ) 

#define IAcadIdPair_get_Value(This,pVal)	\
    ( (This)->lpVtbl -> get_Value(This,pVal) ) 

#define IAcadIdPair_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadIdPair_get_Key32(This,pVal)	\
    ( (This)->lpVtbl -> get_Key32(This,pVal) ) 

#define IAcadIdPair_get_Value32(This,pVal)	\
    ( (This)->lpVtbl -> get_Value32(This,pVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadIdPair_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadIdPair,0x8997D4FE,0x827F,0x46E9,0xB0,0x78,0x00,0xA8,0x96,0x97,0x94,0x00);

#ifdef __cplusplus

class DECLSPEC_UUID("8997D4FE-827F-46E9-B078-00A896979400")
AcadIdPair;
#endif

#ifndef __IAcadTableStyle_INTERFACE_DEFINED__
#define __IAcadTableStyle_INTERFACE_DEFINED__

/* interface IAcadTableStyle */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadTableStyle,0xF3506556,0x7B84,0x4D4A,0xAE,0xB9,0x5F,0xA4,0xA5,0x26,0x8C,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F3506556-7B84-4D4A-AEB9-5FA4A5268C56")
    IAcadTableStyle : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *bstr) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BitFlags( 
            /* [retval][out] */ long *bitFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BitFlags( 
            /* [in] */ long bitFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FlowDirection( 
            /* [retval][out] */ AcTableDirection *pFlow) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FlowDirection( 
            /* [in] */ AcTableDirection flow) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorzCellMargin( 
            /* [retval][out] */ double *dHorzCellMargin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorzCellMargin( 
            /* [in] */ double dHorzCellMargin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertCellMargin( 
            /* [retval][out] */ double *dVertCellMargin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertCellMargin( 
            /* [in] */ double dVertCellmargin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TitleSuppressed( 
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TitleSuppressed( 
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HeaderSuppressed( 
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HeaderSuppressed( 
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextStyle( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextStyle( 
            /* [in] */ int rowTypes,
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextHeight( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ double *pTextHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextHeight( 
            /* [in] */ int rowTypes,
            /* [in] */ double textHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAlignment( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ AcCellAlignment *pCellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetAlignment( 
            /* [in] */ int rowTypes,
            /* [in] */ AcCellAlignment cellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetColor( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetColor( 
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBackgroundColor( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBackgroundColor( 
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBackgroundColorNone( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBackgroundColorNone( 
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLineWeight( 
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLineWeight( 
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridColor( 
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridColor( 
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridVisibility( 
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridVisibility( 
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDataType( 
            /* [in] */ AcRowType rowType,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetDataType( 
            /* [in] */ int rowTypes,
            /* [in] */ AcValueDataType nDataType,
            /* [in] */ AcValueUnitType nUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFormat( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFormat( 
            /* [in] */ int rowTypes,
            /* [in] */ BSTR val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreateCellStyle( 
            /* [in] */ BSTR bstrCellStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreateCellStyleFromStyle( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ BSTR bstrSourceCellStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RenameCellStyle( 
            /* [in] */ BSTR bstrOldName,
            /* [in] */ BSTR bstrNewName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteCellStyle( 
            /* [in] */ BSTR bstrCellStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetUniqueCellStyleName( 
            /* [in] */ BSTR pszBaseName,
            /* [retval][out] */ BSTR *pbstrUniqueName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetIsCellStyleInUse( 
            /* [in] */ BSTR pszCellStyle,
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumCellStyles( 
            /* [retval][out] */ long *numCellStyles) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellStyles( 
            /* [in] */ VARIANT *cellStylesArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextStyleId( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ LONG_PTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextStyleId( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ LONG_PTR val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextHeight2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextHeight2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAlignment2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ AcCellAlignment *pCellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetAlignment2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcCellAlignment cellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetColor2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ IAcadAcCmColor **color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetColor2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ IAcadAcCmColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBackgroundColor2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ IAcadAcCmColor **color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBackgroundColor2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ IAcadAcCmColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDataType2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetDataType2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcValueDataType nDataType,
            /* [in] */ AcValueUnitType nUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFormat2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [out] */ BSTR *pbstrFormat) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFormat2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ BSTR bstrFormat) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetCellClass( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ int *cellClass) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCellClass( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ int cellClass) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetRotation( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ double *rotation) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetRotation( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ double rotation) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetIsMergeAllEnabled( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ VARIANT_BOOL *bEnable) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableMergeAll( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ VARIANT_BOOL bEnable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLineWeight2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineType,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLineWeight2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineTypes,
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridColor2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridColor2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridVisibility2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineType,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridVisibility2( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineTypes,
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TemplateId( 
            /* [retval][out] */ LONG_PTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TemplateId( 
            /* [in] */ LONG_PTR val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTemplateId( 
            /* [in] */ LONG_PTR val,
            AcMergeCellStyleOption option) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextStyleId32( 
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ LONG *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextStyleId32( 
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ LONG val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TemplateId32( 
            /* [retval][out] */ LONG *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TemplateId32( 
            /* [in] */ LONG val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTemplateId32( 
            /* [in] */ LONG val,
            AcMergeCellStyleOption option) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadTableStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadTableStyle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadTableStyle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadTableStyle * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadTableStyle * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadTableStyle * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadTableStyle * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadTableStyle * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadTableStyle * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadTableStyle * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadTableStyle * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadTableStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadTableStyle * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadTableStyle * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadTableStyle * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadTableStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadTableStyle * This,
            /* [retval][out] */ BSTR *bstrValue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IAcadTableStyle * This,
            /* [retval][out] */ BSTR *bstr);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitFlags )( 
            IAcadTableStyle * This,
            /* [retval][out] */ long *bitFlag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BitFlags )( 
            IAcadTableStyle * This,
            /* [in] */ long bitFlag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FlowDirection )( 
            IAcadTableStyle * This,
            /* [retval][out] */ AcTableDirection *pFlow);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FlowDirection )( 
            IAcadTableStyle * This,
            /* [in] */ AcTableDirection flow);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorzCellMargin )( 
            IAcadTableStyle * This,
            /* [retval][out] */ double *dHorzCellMargin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorzCellMargin )( 
            IAcadTableStyle * This,
            /* [in] */ double dHorzCellMargin);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VertCellMargin )( 
            IAcadTableStyle * This,
            /* [retval][out] */ double *dVertCellMargin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VertCellMargin )( 
            IAcadTableStyle * This,
            /* [in] */ double dVertCellmargin);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TitleSuppressed )( 
            IAcadTableStyle * This,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TitleSuppressed )( 
            IAcadTableStyle * This,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HeaderSuppressed )( 
            IAcadTableStyle * This,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HeaderSuppressed )( 
            IAcadTableStyle * This,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextStyle )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextStyle )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextHeight )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ double *pTextHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextHeight )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ double textHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAlignment )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ AcCellAlignment *pCellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetAlignment )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ AcCellAlignment cellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetColor )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetColor )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBackgroundColor )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBackgroundColor )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBackgroundColorNone )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBackgroundColorNone )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLineWeight )( 
            IAcadTableStyle * This,
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLineWeight )( 
            IAcadTableStyle * This,
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridColor )( 
            IAcadTableStyle * This,
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridColor )( 
            IAcadTableStyle * This,
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridVisibility )( 
            IAcadTableStyle * This,
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridVisibility )( 
            IAcadTableStyle * This,
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDataType )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetDataType )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ AcValueDataType nDataType,
            /* [in] */ AcValueUnitType nUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormat )( 
            IAcadTableStyle * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFormat )( 
            IAcadTableStyle * This,
            /* [in] */ int rowTypes,
            /* [in] */ BSTR val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreateCellStyle )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreateCellStyleFromStyle )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ BSTR bstrSourceCellStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RenameCellStyle )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrOldName,
            /* [in] */ BSTR bstrNewName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteCellStyle )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetUniqueCellStyleName )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR pszBaseName,
            /* [retval][out] */ BSTR *pbstrUniqueName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetIsCellStyleInUse )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR pszCellStyle,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumCellStyles )( 
            IAcadTableStyle * This,
            /* [retval][out] */ long *numCellStyles);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellStyles )( 
            IAcadTableStyle * This,
            /* [in] */ VARIANT *cellStylesArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextStyleId )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ LONG_PTR *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextStyleId )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ LONG_PTR val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextHeight2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextHeight2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAlignment2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ AcCellAlignment *pCellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetAlignment2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcCellAlignment cellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetColor2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ IAcadAcCmColor **color);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetColor2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ IAcadAcCmColor *color);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBackgroundColor2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ IAcadAcCmColor **color);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBackgroundColor2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ IAcadAcCmColor *color);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDataType2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetDataType2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcValueDataType nDataType,
            /* [in] */ AcValueUnitType nUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormat2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [out] */ BSTR *pbstrFormat);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFormat2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ BSTR bstrFormat);
        
        HRESULT ( STDMETHODCALLTYPE *GetCellClass )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ int *cellClass);
        
        HRESULT ( STDMETHODCALLTYPE *SetCellClass )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ int cellClass);
        
        HRESULT ( STDMETHODCALLTYPE *GetRotation )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ double *rotation);
        
        HRESULT ( STDMETHODCALLTYPE *SetRotation )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ double rotation);
        
        HRESULT ( STDMETHODCALLTYPE *GetIsMergeAllEnabled )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ VARIANT_BOOL *bEnable);
        
        HRESULT ( STDMETHODCALLTYPE *EnableMergeAll )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ VARIANT_BOOL bEnable);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLineWeight2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineType,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLineWeight2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineTypes,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridColor2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridColor2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridVisibility2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineType,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridVisibility2 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ AcGridLineType gridLineTypes,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TemplateId )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LONG_PTR *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TemplateId )( 
            IAcadTableStyle * This,
            /* [in] */ LONG_PTR val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTemplateId )( 
            IAcadTableStyle * This,
            /* [in] */ LONG_PTR val,
            AcMergeCellStyleOption option);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextStyleId32 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [retval][out] */ LONG *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextStyleId32 )( 
            IAcadTableStyle * This,
            /* [in] */ BSTR bstrCellStyle,
            /* [in] */ LONG val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TemplateId32 )( 
            IAcadTableStyle * This,
            /* [retval][out] */ LONG *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TemplateId32 )( 
            IAcadTableStyle * This,
            /* [in] */ LONG val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTemplateId32 )( 
            IAcadTableStyle * This,
            /* [in] */ LONG val,
            AcMergeCellStyleOption option);
        
        END_INTERFACE
    } IAcadTableStyleVtbl;

    interface IAcadTableStyle
    {
        CONST_VTBL struct IAcadTableStyleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadTableStyle_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadTableStyle_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadTableStyle_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadTableStyle_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadTableStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadTableStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadTableStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadTableStyle_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadTableStyle_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadTableStyle_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadTableStyle_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadTableStyle_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadTableStyle_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadTableStyle_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadTableStyle_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadTableStyle_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadTableStyle_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadTableStyle_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadTableStyle_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadTableStyle_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadTableStyle_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadTableStyle_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadTableStyle_get_Name(This,bstrValue)	\
    ( (This)->lpVtbl -> get_Name(This,bstrValue) ) 

#define IAcadTableStyle_put_Name(This,bstrValue)	\
    ( (This)->lpVtbl -> put_Name(This,bstrValue) ) 

#define IAcadTableStyle_get_Description(This,bstr)	\
    ( (This)->lpVtbl -> get_Description(This,bstr) ) 

#define IAcadTableStyle_put_Description(This,bstrValue)	\
    ( (This)->lpVtbl -> put_Description(This,bstrValue) ) 

#define IAcadTableStyle_get_BitFlags(This,bitFlag)	\
    ( (This)->lpVtbl -> get_BitFlags(This,bitFlag) ) 

#define IAcadTableStyle_put_BitFlags(This,bitFlag)	\
    ( (This)->lpVtbl -> put_BitFlags(This,bitFlag) ) 

#define IAcadTableStyle_get_FlowDirection(This,pFlow)	\
    ( (This)->lpVtbl -> get_FlowDirection(This,pFlow) ) 

#define IAcadTableStyle_put_FlowDirection(This,flow)	\
    ( (This)->lpVtbl -> put_FlowDirection(This,flow) ) 

#define IAcadTableStyle_get_HorzCellMargin(This,dHorzCellMargin)	\
    ( (This)->lpVtbl -> get_HorzCellMargin(This,dHorzCellMargin) ) 

#define IAcadTableStyle_put_HorzCellMargin(This,dHorzCellMargin)	\
    ( (This)->lpVtbl -> put_HorzCellMargin(This,dHorzCellMargin) ) 

#define IAcadTableStyle_get_VertCellMargin(This,dVertCellMargin)	\
    ( (This)->lpVtbl -> get_VertCellMargin(This,dVertCellMargin) ) 

#define IAcadTableStyle_put_VertCellMargin(This,dVertCellmargin)	\
    ( (This)->lpVtbl -> put_VertCellMargin(This,dVertCellmargin) ) 

#define IAcadTableStyle_get_TitleSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> get_TitleSuppressed(This,bValue) ) 

#define IAcadTableStyle_put_TitleSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> put_TitleSuppressed(This,bValue) ) 

#define IAcadTableStyle_get_HeaderSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> get_HeaderSuppressed(This,bValue) ) 

#define IAcadTableStyle_put_HeaderSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> put_HeaderSuppressed(This,bValue) ) 

#define IAcadTableStyle_GetTextStyle(This,rowType,bstrName)	\
    ( (This)->lpVtbl -> GetTextStyle(This,rowType,bstrName) ) 

#define IAcadTableStyle_SetTextStyle(This,rowTypes,bstrName)	\
    ( (This)->lpVtbl -> SetTextStyle(This,rowTypes,bstrName) ) 

#define IAcadTableStyle_GetTextHeight(This,rowType,pTextHeight)	\
    ( (This)->lpVtbl -> GetTextHeight(This,rowType,pTextHeight) ) 

#define IAcadTableStyle_SetTextHeight(This,rowTypes,textHeight)	\
    ( (This)->lpVtbl -> SetTextHeight(This,rowTypes,textHeight) ) 

#define IAcadTableStyle_GetAlignment(This,rowType,pCellAlignment)	\
    ( (This)->lpVtbl -> GetAlignment(This,rowType,pCellAlignment) ) 

#define IAcadTableStyle_SetAlignment(This,rowTypes,cellAlignment)	\
    ( (This)->lpVtbl -> SetAlignment(This,rowTypes,cellAlignment) ) 

#define IAcadTableStyle_GetColor(This,rowType,pColor)	\
    ( (This)->lpVtbl -> GetColor(This,rowType,pColor) ) 

#define IAcadTableStyle_SetColor(This,rowTypes,pColor)	\
    ( (This)->lpVtbl -> SetColor(This,rowTypes,pColor) ) 

#define IAcadTableStyle_GetBackgroundColor(This,rowType,pColor)	\
    ( (This)->lpVtbl -> GetBackgroundColor(This,rowType,pColor) ) 

#define IAcadTableStyle_SetBackgroundColor(This,rowTypes,pColor)	\
    ( (This)->lpVtbl -> SetBackgroundColor(This,rowTypes,pColor) ) 

#define IAcadTableStyle_GetBackgroundColorNone(This,rowType,bValue)	\
    ( (This)->lpVtbl -> GetBackgroundColorNone(This,rowType,bValue) ) 

#define IAcadTableStyle_SetBackgroundColorNone(This,rowTypes,bValue)	\
    ( (This)->lpVtbl -> SetBackgroundColorNone(This,rowTypes,bValue) ) 

#define IAcadTableStyle_GetGridLineWeight(This,gridLineType,rowType,lineweight)	\
    ( (This)->lpVtbl -> GetGridLineWeight(This,gridLineType,rowType,lineweight) ) 

#define IAcadTableStyle_SetGridLineWeight(This,gridLineTypes,rowTypes,lineweight)	\
    ( (This)->lpVtbl -> SetGridLineWeight(This,gridLineTypes,rowTypes,lineweight) ) 

#define IAcadTableStyle_GetGridColor(This,gridLineType,rowType,pColor)	\
    ( (This)->lpVtbl -> GetGridColor(This,gridLineType,rowType,pColor) ) 

#define IAcadTableStyle_SetGridColor(This,gridLineTypes,rowTypes,pColor)	\
    ( (This)->lpVtbl -> SetGridColor(This,gridLineTypes,rowTypes,pColor) ) 

#define IAcadTableStyle_GetGridVisibility(This,gridLineType,rowType,bValue)	\
    ( (This)->lpVtbl -> GetGridVisibility(This,gridLineType,rowType,bValue) ) 

#define IAcadTableStyle_SetGridVisibility(This,gridLineTypes,rowTypes,bValue)	\
    ( (This)->lpVtbl -> SetGridVisibility(This,gridLineTypes,rowTypes,bValue) ) 

#define IAcadTableStyle_GetDataType(This,rowType,pDataType,pUnitType)	\
    ( (This)->lpVtbl -> GetDataType(This,rowType,pDataType,pUnitType) ) 

#define IAcadTableStyle_SetDataType(This,rowTypes,nDataType,nUnitType)	\
    ( (This)->lpVtbl -> SetDataType(This,rowTypes,nDataType,nUnitType) ) 

#define IAcadTableStyle_GetFormat(This,rowType,pVal)	\
    ( (This)->lpVtbl -> GetFormat(This,rowType,pVal) ) 

#define IAcadTableStyle_SetFormat(This,rowTypes,val)	\
    ( (This)->lpVtbl -> SetFormat(This,rowTypes,val) ) 

#define IAcadTableStyle_CreateCellStyle(This,bstrCellStyle)	\
    ( (This)->lpVtbl -> CreateCellStyle(This,bstrCellStyle) ) 

#define IAcadTableStyle_CreateCellStyleFromStyle(This,bstrCellStyle,bstrSourceCellStyle)	\
    ( (This)->lpVtbl -> CreateCellStyleFromStyle(This,bstrCellStyle,bstrSourceCellStyle) ) 

#define IAcadTableStyle_RenameCellStyle(This,bstrOldName,bstrNewName)	\
    ( (This)->lpVtbl -> RenameCellStyle(This,bstrOldName,bstrNewName) ) 

#define IAcadTableStyle_DeleteCellStyle(This,bstrCellStyle)	\
    ( (This)->lpVtbl -> DeleteCellStyle(This,bstrCellStyle) ) 

#define IAcadTableStyle_GetUniqueCellStyleName(This,pszBaseName,pbstrUniqueName)	\
    ( (This)->lpVtbl -> GetUniqueCellStyleName(This,pszBaseName,pbstrUniqueName) ) 

#define IAcadTableStyle_GetIsCellStyleInUse(This,pszCellStyle,pVal)	\
    ( (This)->lpVtbl -> GetIsCellStyleInUse(This,pszCellStyle,pVal) ) 

#define IAcadTableStyle_get_NumCellStyles(This,numCellStyles)	\
    ( (This)->lpVtbl -> get_NumCellStyles(This,numCellStyles) ) 

#define IAcadTableStyle_GetCellStyles(This,cellStylesArray)	\
    ( (This)->lpVtbl -> GetCellStyles(This,cellStylesArray) ) 

#define IAcadTableStyle_GetTextStyleId(This,bstrCellStyle,pVal)	\
    ( (This)->lpVtbl -> GetTextStyleId(This,bstrCellStyle,pVal) ) 

#define IAcadTableStyle_SetTextStyleId(This,bstrCellStyle,val)	\
    ( (This)->lpVtbl -> SetTextStyleId(This,bstrCellStyle,val) ) 

#define IAcadTableStyle_GetTextHeight2(This,bstrCellStyle,pHeight)	\
    ( (This)->lpVtbl -> GetTextHeight2(This,bstrCellStyle,pHeight) ) 

#define IAcadTableStyle_SetTextHeight2(This,bstrCellStyle,height)	\
    ( (This)->lpVtbl -> SetTextHeight2(This,bstrCellStyle,height) ) 

#define IAcadTableStyle_GetAlignment2(This,bstrCellStyle,pCellAlignment)	\
    ( (This)->lpVtbl -> GetAlignment2(This,bstrCellStyle,pCellAlignment) ) 

#define IAcadTableStyle_SetAlignment2(This,bstrCellStyle,cellAlignment)	\
    ( (This)->lpVtbl -> SetAlignment2(This,bstrCellStyle,cellAlignment) ) 

#define IAcadTableStyle_GetColor2(This,bstrCellStyle,color)	\
    ( (This)->lpVtbl -> GetColor2(This,bstrCellStyle,color) ) 

#define IAcadTableStyle_SetColor2(This,bstrCellStyle,color)	\
    ( (This)->lpVtbl -> SetColor2(This,bstrCellStyle,color) ) 

#define IAcadTableStyle_GetBackgroundColor2(This,bstrCellStyle,color)	\
    ( (This)->lpVtbl -> GetBackgroundColor2(This,bstrCellStyle,color) ) 

#define IAcadTableStyle_SetBackgroundColor2(This,bstrCellStyle,color)	\
    ( (This)->lpVtbl -> SetBackgroundColor2(This,bstrCellStyle,color) ) 

#define IAcadTableStyle_GetDataType2(This,bstrCellStyle,pDataType,pUnitType)	\
    ( (This)->lpVtbl -> GetDataType2(This,bstrCellStyle,pDataType,pUnitType) ) 

#define IAcadTableStyle_SetDataType2(This,bstrCellStyle,nDataType,nUnitType)	\
    ( (This)->lpVtbl -> SetDataType2(This,bstrCellStyle,nDataType,nUnitType) ) 

#define IAcadTableStyle_GetFormat2(This,bstrCellStyle,pbstrFormat)	\
    ( (This)->lpVtbl -> GetFormat2(This,bstrCellStyle,pbstrFormat) ) 

#define IAcadTableStyle_SetFormat2(This,bstrCellStyle,bstrFormat)	\
    ( (This)->lpVtbl -> SetFormat2(This,bstrCellStyle,bstrFormat) ) 

#define IAcadTableStyle_GetCellClass(This,bstrCellStyle,cellClass)	\
    ( (This)->lpVtbl -> GetCellClass(This,bstrCellStyle,cellClass) ) 

#define IAcadTableStyle_SetCellClass(This,bstrCellStyle,cellClass)	\
    ( (This)->lpVtbl -> SetCellClass(This,bstrCellStyle,cellClass) ) 

#define IAcadTableStyle_GetRotation(This,bstrCellStyle,rotation)	\
    ( (This)->lpVtbl -> GetRotation(This,bstrCellStyle,rotation) ) 

#define IAcadTableStyle_SetRotation(This,bstrCellStyle,rotation)	\
    ( (This)->lpVtbl -> SetRotation(This,bstrCellStyle,rotation) ) 

#define IAcadTableStyle_GetIsMergeAllEnabled(This,bstrCellStyle,bEnable)	\
    ( (This)->lpVtbl -> GetIsMergeAllEnabled(This,bstrCellStyle,bEnable) ) 

#define IAcadTableStyle_EnableMergeAll(This,bstrCellStyle,bEnable)	\
    ( (This)->lpVtbl -> EnableMergeAll(This,bstrCellStyle,bEnable) ) 

#define IAcadTableStyle_GetGridLineWeight2(This,bstrCellStyle,gridLineType,lineweight)	\
    ( (This)->lpVtbl -> GetGridLineWeight2(This,bstrCellStyle,gridLineType,lineweight) ) 

#define IAcadTableStyle_SetGridLineWeight2(This,bstrCellStyle,gridLineTypes,lineweight)	\
    ( (This)->lpVtbl -> SetGridLineWeight2(This,bstrCellStyle,gridLineTypes,lineweight) ) 

#define IAcadTableStyle_GetGridColor2(This,bstrCellStyle,gridLineType,pColor)	\
    ( (This)->lpVtbl -> GetGridColor2(This,bstrCellStyle,gridLineType,pColor) ) 

#define IAcadTableStyle_SetGridColor2(This,bstrCellStyle,gridLineTypes,pColor)	\
    ( (This)->lpVtbl -> SetGridColor2(This,bstrCellStyle,gridLineTypes,pColor) ) 

#define IAcadTableStyle_GetGridVisibility2(This,bstrCellStyle,gridLineType,bValue)	\
    ( (This)->lpVtbl -> GetGridVisibility2(This,bstrCellStyle,gridLineType,bValue) ) 

#define IAcadTableStyle_SetGridVisibility2(This,bstrCellStyle,gridLineTypes,bValue)	\
    ( (This)->lpVtbl -> SetGridVisibility2(This,bstrCellStyle,gridLineTypes,bValue) ) 

#define IAcadTableStyle_get_TemplateId(This,pVal)	\
    ( (This)->lpVtbl -> get_TemplateId(This,pVal) ) 

#define IAcadTableStyle_put_TemplateId(This,val)	\
    ( (This)->lpVtbl -> put_TemplateId(This,val) ) 

#define IAcadTableStyle_SetTemplateId(This,val,option)	\
    ( (This)->lpVtbl -> SetTemplateId(This,val,option) ) 

#define IAcadTableStyle_GetTextStyleId32(This,bstrCellStyle,pVal)	\
    ( (This)->lpVtbl -> GetTextStyleId32(This,bstrCellStyle,pVal) ) 

#define IAcadTableStyle_SetTextStyleId32(This,bstrCellStyle,val)	\
    ( (This)->lpVtbl -> SetTextStyleId32(This,bstrCellStyle,val) ) 

#define IAcadTableStyle_get_TemplateId32(This,pVal)	\
    ( (This)->lpVtbl -> get_TemplateId32(This,pVal) ) 

#define IAcadTableStyle_put_TemplateId32(This,val)	\
    ( (This)->lpVtbl -> put_TemplateId32(This,val) ) 

#define IAcadTableStyle_SetTemplateId32(This,val,option)	\
    ( (This)->lpVtbl -> SetTemplateId32(This,val,option) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadTableStyle_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadTableStyle,0xF4C9A261,0xDD69,0x45E5,0xBA,0x9C,0xB7,0x0B,0xD8,0xB9,0xE7,0x70);

#ifdef __cplusplus

class DECLSPEC_UUID("F4C9A261-DD69-45E5-BA9C-B70BD8B9E770")
AcadTableStyle;
#endif

#ifndef __IAcadSectionSettings_INTERFACE_DEFINED__
#define __IAcadSectionSettings_INTERFACE_DEFINED__

/* interface IAcadSectionSettings */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSectionSettings,0x7D35B280,0x745B,0x419B,0x84,0x5F,0x24,0x4F,0x6C,0x78,0x4D,0x77);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7D35B280-745B-419B-845F-244F6C784D77")
    IAcadSectionSettings : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentSectionType( 
            /* [retval][out] */ AcSectionType *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentSectionType( 
            /* [in] */ AcSectionType val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetSectionTypeSettings( 
            /* [in] */ AcSectionType secType,
            /* [retval][out] */ IAcadSectionTypeSettings **pUnk) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSectionSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSectionSettings * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSectionSettings * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSectionSettings * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSectionSettings * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSectionSettings * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSectionSettings * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSectionSettings * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSectionSettings * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSectionSettings * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSectionSettings * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSectionSettings * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentSectionType )( 
            IAcadSectionSettings * This,
            /* [retval][out] */ AcSectionType *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurrentSectionType )( 
            IAcadSectionSettings * This,
            /* [in] */ AcSectionType val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetSectionTypeSettings )( 
            IAcadSectionSettings * This,
            /* [in] */ AcSectionType secType,
            /* [retval][out] */ IAcadSectionTypeSettings **pUnk);
        
        END_INTERFACE
    } IAcadSectionSettingsVtbl;

    interface IAcadSectionSettings
    {
        CONST_VTBL struct IAcadSectionSettingsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSectionSettings_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSectionSettings_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSectionSettings_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSectionSettings_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSectionSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSectionSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSectionSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSectionSettings_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSectionSettings_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSectionSettings_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSectionSettings_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSectionSettings_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSectionSettings_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSectionSettings_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSectionSettings_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSectionSettings_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSectionSettings_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSectionSettings_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSectionSettings_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSectionSettings_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSectionSettings_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSectionSettings_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSectionSettings_get_CurrentSectionType(This,pVal)	\
    ( (This)->lpVtbl -> get_CurrentSectionType(This,pVal) ) 

#define IAcadSectionSettings_put_CurrentSectionType(This,val)	\
    ( (This)->lpVtbl -> put_CurrentSectionType(This,val) ) 

#define IAcadSectionSettings_GetSectionTypeSettings(This,secType,pUnk)	\
    ( (This)->lpVtbl -> GetSectionTypeSettings(This,secType,pUnk) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSectionSettings_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSectionSettings,0x3818E0CC,0xF69C,0x4FE6,0x9A,0xEA,0x15,0x29,0xE6,0x81,0xF3,0x57);

#ifdef __cplusplus

class DECLSPEC_UUID("3818E0CC-F69C-4FE6-9AEA-1529E681F357")
AcadSectionSettings;
#endif

DEFINE_GUID(CLSID_AcadSectionTypeSettings,0x9AAC1B61,0x6489,0x4646,0x9D,0xEA,0xAF,0x5B,0xA2,0x3E,0xC2,0x96);

#ifdef __cplusplus

class DECLSPEC_UUID("9AAC1B61-6489-4646-9DEA-AF5BA23EC296")
AcadSectionTypeSettings;
#endif

#ifndef __IAcadMLeaderStyle_INTERFACE_DEFINED__
#define __IAcadMLeaderStyle_INTERFACE_DEFINED__

/* interface IAcadMLeaderStyle */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMLeaderStyle,0x367A1F18,0x25AE,0x4CDE,0xBB,0x13,0x4A,0xDA,0x1E,0xDA,0x06,0x6A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("367A1F18-25AE-4CDE-BB13-4ADA1EDA066A")
    IAcadMLeaderStyle : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR description) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BitFlags( 
            /* [retval][out] */ long *bitFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BitFlags( 
            /* [in] */ long bitFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ContentType( 
            /* [retval][out] */ AcMLeaderContentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ContentType( 
            /* [in] */ AcMLeaderContentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawMLeaderOrderType( 
            /* [retval][out] */ AcDrawMLeaderOrderType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawMLeaderOrderType( 
            /* [in] */ AcDrawMLeaderOrderType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawLeaderOrderType( 
            /* [retval][out] */ AcDrawLeaderOrderType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawLeaderOrderType( 
            /* [in] */ AcDrawLeaderOrderType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxLeaderSegmentsPoints( 
            /* [retval][out] */ int *number) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MaxLeaderSegmentsPoints( 
            /* [in] */ int number) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FirstSegmentAngleConstraint( 
            /* [retval][out] */ AcSegmentAngleType *constraint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FirstSegmentAngleConstraint( 
            /* [in] */ AcSegmentAngleType constraint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SecondSegmentAngleConstraint( 
            /* [retval][out] */ AcSegmentAngleType *constraint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SecondSegmentAngleConstraint( 
            /* [in] */ AcSegmentAngleType constraint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineType( 
            /* [retval][out] */ AcMLeaderType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineType( 
            /* [in] */ AcMLeaderType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineColor( 
            /* [retval][out] */ IAcadAcCmColor **color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineColor( 
            /* [in] */ IAcadAcCmColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineTypeId( 
            /* [retval][out] */ ACAD_LTYPE *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineTypeId( 
            /* [in] */ ACAD_LTYPE type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineWeight( 
            /* [retval][out] */ AcLineWeight *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineWeight( 
            /* [in] */ AcLineWeight weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableLanding( 
            /* [retval][out] */ VARIANT_BOOL *enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableLanding( 
            /* [in] */ VARIANT_BOOL enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LandingGap( 
            /* [retval][out] */ double *landingGap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LandingGap( 
            /* [in] */ double landingGap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableDogleg( 
            /* [retval][out] */ VARIANT_BOOL *enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableDogleg( 
            /* [in] */ VARIANT_BOOL enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoglegLength( 
            /* [retval][out] */ double *doglegLength) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoglegLength( 
            /* [in] */ double doglegLength) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowSymbol( 
            /* [retval][out] */ BSTR *name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowSymbol( 
            /* [in] */ BSTR name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextStyle( 
            /* [retval][out] */ BSTR *name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextStyle( 
            /* [in] */ BSTR name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAttachmentDirection( 
            /* [retval][out] */ AcTextAttachmentDirection *dir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAttachmentDirection( 
            /* [in] */ AcTextAttachmentDirection dir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLeftAttachmentType( 
            /* [retval][out] */ AcTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextLeftAttachmentType( 
            /* [in] */ AcTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextRightAttachmentType( 
            /* [retval][out] */ AcTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextRightAttachmentType( 
            /* [in] */ AcTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextTopAttachmentType( 
            /* [retval][out] */ AcVerticalTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextTopAttachmentType( 
            /* [in] */ AcVerticalTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextBottomAttachmentType( 
            /* [retval][out] */ AcVerticalTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextBottomAttachmentType( 
            /* [in] */ AcVerticalTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextColor( 
            /* [retval][out] */ IAcadAcCmColor **color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextColor( 
            /* [in] */ IAcadAcCmColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextHeight( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableFrameText( 
            /* [retval][out] */ VARIANT_BOOL *enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableFrameText( 
            /* [in] */ VARIANT_BOOL enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AlignSpace( 
            /* [retval][out] */ double *alignSpace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AlignSpace( 
            /* [in] */ double alignSpace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Block( 
            /* [retval][out] */ BSTR *name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Block( 
            /* [in] */ BSTR name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockColor( 
            /* [retval][out] */ IAcadAcCmColor **color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockColor( 
            /* [in] */ IAcadAcCmColor *color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableBlockScale( 
            /* [retval][out] */ VARIANT_BOOL *enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableBlockScale( 
            /* [in] */ VARIANT_BOOL enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockScale( 
            /* [retval][out] */ double *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockScale( 
            /* [in] */ double scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableBlockRotation( 
            /* [retval][out] */ VARIANT_BOOL *enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableBlockRotation( 
            /* [in] */ VARIANT_BOOL enabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockRotation( 
            /* [retval][out] */ double *rotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockRotation( 
            /* [in] */ double rotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockConnectionType( 
            /* [retval][out] */ AcBlockConnectionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockConnectionType( 
            /* [in] */ AcBlockConnectionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ double *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ double Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OverwritePropChanged( 
            /* [retval][out] */ VARIANT_BOOL *changed) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Annotative( 
            /* [retval][out] */ VARIANT_BOOL *annotative) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Annotative( 
            /* [in] */ VARIANT_BOOL annotative) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *text) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR text) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAngleType( 
            /* [retval][out] */ AcTextAngleType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAngleType( 
            /* [in] */ AcTextAngleType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAlignmentType( 
            /* [retval][out] */ AcTextAlignmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAlignmentType( 
            /* [in] */ AcTextAlignmentType type) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMLeaderStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMLeaderStyle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMLeaderStyle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMLeaderStyle * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMLeaderStyle * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMLeaderStyle * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMLeaderStyle * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMLeaderStyle * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMLeaderStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMLeaderStyle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *description);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR description);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitFlags )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ long *bitFlag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BitFlags )( 
            IAcadMLeaderStyle * This,
            /* [in] */ long bitFlag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ContentType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcMLeaderContentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ContentType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcMLeaderContentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DrawMLeaderOrderType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcDrawMLeaderOrderType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DrawMLeaderOrderType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcDrawMLeaderOrderType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DrawLeaderOrderType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcDrawLeaderOrderType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DrawLeaderOrderType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcDrawLeaderOrderType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxLeaderSegmentsPoints )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ int *number);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaxLeaderSegmentsPoints )( 
            IAcadMLeaderStyle * This,
            /* [in] */ int number);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FirstSegmentAngleConstraint )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcSegmentAngleType *constraint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FirstSegmentAngleConstraint )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcSegmentAngleType constraint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SecondSegmentAngleConstraint )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcSegmentAngleType *constraint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SecondSegmentAngleConstraint )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcSegmentAngleType constraint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcMLeaderType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcMLeaderType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineColor )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ IAcadAcCmColor **color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineColor )( 
            IAcadMLeaderStyle * This,
            /* [in] */ IAcadAcCmColor *color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineTypeId )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ ACAD_LTYPE *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineTypeId )( 
            IAcadMLeaderStyle * This,
            /* [in] */ ACAD_LTYPE type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineWeight )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcLineWeight *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineWeight )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcLineWeight weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnableLanding )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *enabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnableLanding )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT_BOOL enabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LandingGap )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *landingGap);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LandingGap )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double landingGap);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnableDogleg )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *enabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnableDogleg )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT_BOOL enabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DoglegLength )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *doglegLength);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DoglegLength )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double doglegLength);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowSymbol )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowSymbol )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowSize )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowSize )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAttachmentDirection )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcTextAttachmentDirection *dir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAttachmentDirection )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcTextAttachmentDirection dir);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextLeftAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextLeftAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRightAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRightAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextTopAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcVerticalTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextTopAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcVerticalTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextBottomAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcVerticalTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextBottomAttachmentType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcVerticalTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ IAcadAcCmColor **color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadMLeaderStyle * This,
            /* [in] */ IAcadAcCmColor *color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnableFrameText )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *enabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnableFrameText )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT_BOOL enabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AlignSpace )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *alignSpace);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AlignSpace )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double alignSpace);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Block )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Block )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockColor )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ IAcadAcCmColor **color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockColor )( 
            IAcadMLeaderStyle * This,
            /* [in] */ IAcadAcCmColor *color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnableBlockScale )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *enabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnableBlockScale )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT_BOOL enabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockScale )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockScale )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnableBlockRotation )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *enabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnableBlockRotation )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT_BOOL enabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockRotation )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *rotation);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockRotation )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double rotation);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockConnectionType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcBlockConnectionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockConnectionType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcBlockConnectionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OverwritePropChanged )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *changed);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Annotative )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ VARIANT_BOOL *annotative);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Annotative )( 
            IAcadMLeaderStyle * This,
            /* [in] */ VARIANT_BOOL annotative);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BreakSize )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BreakSize )( 
            IAcadMLeaderStyle * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ BSTR *text);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadMLeaderStyle * This,
            /* [in] */ BSTR text);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAngleType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcTextAngleType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAngleType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcTextAngleType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAlignmentType )( 
            IAcadMLeaderStyle * This,
            /* [retval][out] */ AcTextAlignmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAlignmentType )( 
            IAcadMLeaderStyle * This,
            /* [in] */ AcTextAlignmentType type);
        
        END_INTERFACE
    } IAcadMLeaderStyleVtbl;

    interface IAcadMLeaderStyle
    {
        CONST_VTBL struct IAcadMLeaderStyleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMLeaderStyle_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMLeaderStyle_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMLeaderStyle_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMLeaderStyle_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMLeaderStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMLeaderStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMLeaderStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMLeaderStyle_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMLeaderStyle_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMLeaderStyle_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMLeaderStyle_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMLeaderStyle_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMLeaderStyle_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMLeaderStyle_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMLeaderStyle_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMLeaderStyle_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMLeaderStyle_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMLeaderStyle_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMLeaderStyle_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMLeaderStyle_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMLeaderStyle_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMLeaderStyle_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMLeaderStyle_get_Name(This,name)	\
    ( (This)->lpVtbl -> get_Name(This,name) ) 

#define IAcadMLeaderStyle_put_Name(This,name)	\
    ( (This)->lpVtbl -> put_Name(This,name) ) 

#define IAcadMLeaderStyle_get_Description(This,description)	\
    ( (This)->lpVtbl -> get_Description(This,description) ) 

#define IAcadMLeaderStyle_put_Description(This,description)	\
    ( (This)->lpVtbl -> put_Description(This,description) ) 

#define IAcadMLeaderStyle_get_BitFlags(This,bitFlag)	\
    ( (This)->lpVtbl -> get_BitFlags(This,bitFlag) ) 

#define IAcadMLeaderStyle_put_BitFlags(This,bitFlag)	\
    ( (This)->lpVtbl -> put_BitFlags(This,bitFlag) ) 

#define IAcadMLeaderStyle_get_ContentType(This,type)	\
    ( (This)->lpVtbl -> get_ContentType(This,type) ) 

#define IAcadMLeaderStyle_put_ContentType(This,type)	\
    ( (This)->lpVtbl -> put_ContentType(This,type) ) 

#define IAcadMLeaderStyle_get_DrawMLeaderOrderType(This,type)	\
    ( (This)->lpVtbl -> get_DrawMLeaderOrderType(This,type) ) 

#define IAcadMLeaderStyle_put_DrawMLeaderOrderType(This,type)	\
    ( (This)->lpVtbl -> put_DrawMLeaderOrderType(This,type) ) 

#define IAcadMLeaderStyle_get_DrawLeaderOrderType(This,type)	\
    ( (This)->lpVtbl -> get_DrawLeaderOrderType(This,type) ) 

#define IAcadMLeaderStyle_put_DrawLeaderOrderType(This,type)	\
    ( (This)->lpVtbl -> put_DrawLeaderOrderType(This,type) ) 

#define IAcadMLeaderStyle_get_MaxLeaderSegmentsPoints(This,number)	\
    ( (This)->lpVtbl -> get_MaxLeaderSegmentsPoints(This,number) ) 

#define IAcadMLeaderStyle_put_MaxLeaderSegmentsPoints(This,number)	\
    ( (This)->lpVtbl -> put_MaxLeaderSegmentsPoints(This,number) ) 

#define IAcadMLeaderStyle_get_FirstSegmentAngleConstraint(This,constraint)	\
    ( (This)->lpVtbl -> get_FirstSegmentAngleConstraint(This,constraint) ) 

#define IAcadMLeaderStyle_put_FirstSegmentAngleConstraint(This,constraint)	\
    ( (This)->lpVtbl -> put_FirstSegmentAngleConstraint(This,constraint) ) 

#define IAcadMLeaderStyle_get_SecondSegmentAngleConstraint(This,constraint)	\
    ( (This)->lpVtbl -> get_SecondSegmentAngleConstraint(This,constraint) ) 

#define IAcadMLeaderStyle_put_SecondSegmentAngleConstraint(This,constraint)	\
    ( (This)->lpVtbl -> put_SecondSegmentAngleConstraint(This,constraint) ) 

#define IAcadMLeaderStyle_get_LeaderLineType(This,type)	\
    ( (This)->lpVtbl -> get_LeaderLineType(This,type) ) 

#define IAcadMLeaderStyle_put_LeaderLineType(This,type)	\
    ( (This)->lpVtbl -> put_LeaderLineType(This,type) ) 

#define IAcadMLeaderStyle_get_LeaderLineColor(This,color)	\
    ( (This)->lpVtbl -> get_LeaderLineColor(This,color) ) 

#define IAcadMLeaderStyle_put_LeaderLineColor(This,color)	\
    ( (This)->lpVtbl -> put_LeaderLineColor(This,color) ) 

#define IAcadMLeaderStyle_get_LeaderLineTypeId(This,type)	\
    ( (This)->lpVtbl -> get_LeaderLineTypeId(This,type) ) 

#define IAcadMLeaderStyle_put_LeaderLineTypeId(This,type)	\
    ( (This)->lpVtbl -> put_LeaderLineTypeId(This,type) ) 

#define IAcadMLeaderStyle_get_LeaderLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_LeaderLineWeight(This,weight) ) 

#define IAcadMLeaderStyle_put_LeaderLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_LeaderLineWeight(This,weight) ) 

#define IAcadMLeaderStyle_get_EnableLanding(This,enabled)	\
    ( (This)->lpVtbl -> get_EnableLanding(This,enabled) ) 

#define IAcadMLeaderStyle_put_EnableLanding(This,enabled)	\
    ( (This)->lpVtbl -> put_EnableLanding(This,enabled) ) 

#define IAcadMLeaderStyle_get_LandingGap(This,landingGap)	\
    ( (This)->lpVtbl -> get_LandingGap(This,landingGap) ) 

#define IAcadMLeaderStyle_put_LandingGap(This,landingGap)	\
    ( (This)->lpVtbl -> put_LandingGap(This,landingGap) ) 

#define IAcadMLeaderStyle_get_EnableDogleg(This,enabled)	\
    ( (This)->lpVtbl -> get_EnableDogleg(This,enabled) ) 

#define IAcadMLeaderStyle_put_EnableDogleg(This,enabled)	\
    ( (This)->lpVtbl -> put_EnableDogleg(This,enabled) ) 

#define IAcadMLeaderStyle_get_DoglegLength(This,doglegLength)	\
    ( (This)->lpVtbl -> get_DoglegLength(This,doglegLength) ) 

#define IAcadMLeaderStyle_put_DoglegLength(This,doglegLength)	\
    ( (This)->lpVtbl -> put_DoglegLength(This,doglegLength) ) 

#define IAcadMLeaderStyle_get_ArrowSymbol(This,name)	\
    ( (This)->lpVtbl -> get_ArrowSymbol(This,name) ) 

#define IAcadMLeaderStyle_put_ArrowSymbol(This,name)	\
    ( (This)->lpVtbl -> put_ArrowSymbol(This,name) ) 

#define IAcadMLeaderStyle_get_ArrowSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowSize(This,size) ) 

#define IAcadMLeaderStyle_put_ArrowSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowSize(This,size) ) 

#define IAcadMLeaderStyle_get_TextStyle(This,name)	\
    ( (This)->lpVtbl -> get_TextStyle(This,name) ) 

#define IAcadMLeaderStyle_put_TextStyle(This,name)	\
    ( (This)->lpVtbl -> put_TextStyle(This,name) ) 

#define IAcadMLeaderStyle_get_TextAttachmentDirection(This,dir)	\
    ( (This)->lpVtbl -> get_TextAttachmentDirection(This,dir) ) 

#define IAcadMLeaderStyle_put_TextAttachmentDirection(This,dir)	\
    ( (This)->lpVtbl -> put_TextAttachmentDirection(This,dir) ) 

#define IAcadMLeaderStyle_get_TextLeftAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextLeftAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_put_TextLeftAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextLeftAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_get_TextRightAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextRightAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_put_TextRightAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextRightAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_get_TextTopAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextTopAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_put_TextTopAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextTopAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_get_TextBottomAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextBottomAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_put_TextBottomAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextBottomAttachmentType(This,type) ) 

#define IAcadMLeaderStyle_get_TextColor(This,color)	\
    ( (This)->lpVtbl -> get_TextColor(This,color) ) 

#define IAcadMLeaderStyle_put_TextColor(This,color)	\
    ( (This)->lpVtbl -> put_TextColor(This,color) ) 

#define IAcadMLeaderStyle_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadMLeaderStyle_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadMLeaderStyle_get_EnableFrameText(This,enabled)	\
    ( (This)->lpVtbl -> get_EnableFrameText(This,enabled) ) 

#define IAcadMLeaderStyle_put_EnableFrameText(This,enabled)	\
    ( (This)->lpVtbl -> put_EnableFrameText(This,enabled) ) 

#define IAcadMLeaderStyle_get_AlignSpace(This,alignSpace)	\
    ( (This)->lpVtbl -> get_AlignSpace(This,alignSpace) ) 

#define IAcadMLeaderStyle_put_AlignSpace(This,alignSpace)	\
    ( (This)->lpVtbl -> put_AlignSpace(This,alignSpace) ) 

#define IAcadMLeaderStyle_get_Block(This,name)	\
    ( (This)->lpVtbl -> get_Block(This,name) ) 

#define IAcadMLeaderStyle_put_Block(This,name)	\
    ( (This)->lpVtbl -> put_Block(This,name) ) 

#define IAcadMLeaderStyle_get_BlockColor(This,color)	\
    ( (This)->lpVtbl -> get_BlockColor(This,color) ) 

#define IAcadMLeaderStyle_put_BlockColor(This,color)	\
    ( (This)->lpVtbl -> put_BlockColor(This,color) ) 

#define IAcadMLeaderStyle_get_EnableBlockScale(This,enabled)	\
    ( (This)->lpVtbl -> get_EnableBlockScale(This,enabled) ) 

#define IAcadMLeaderStyle_put_EnableBlockScale(This,enabled)	\
    ( (This)->lpVtbl -> put_EnableBlockScale(This,enabled) ) 

#define IAcadMLeaderStyle_get_BlockScale(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_BlockScale(This,scaleFactor) ) 

#define IAcadMLeaderStyle_put_BlockScale(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_BlockScale(This,scaleFactor) ) 

#define IAcadMLeaderStyle_get_EnableBlockRotation(This,enabled)	\
    ( (This)->lpVtbl -> get_EnableBlockRotation(This,enabled) ) 

#define IAcadMLeaderStyle_put_EnableBlockRotation(This,enabled)	\
    ( (This)->lpVtbl -> put_EnableBlockRotation(This,enabled) ) 

#define IAcadMLeaderStyle_get_BlockRotation(This,rotation)	\
    ( (This)->lpVtbl -> get_BlockRotation(This,rotation) ) 

#define IAcadMLeaderStyle_put_BlockRotation(This,rotation)	\
    ( (This)->lpVtbl -> put_BlockRotation(This,rotation) ) 

#define IAcadMLeaderStyle_get_BlockConnectionType(This,type)	\
    ( (This)->lpVtbl -> get_BlockConnectionType(This,type) ) 

#define IAcadMLeaderStyle_put_BlockConnectionType(This,type)	\
    ( (This)->lpVtbl -> put_BlockConnectionType(This,type) ) 

#define IAcadMLeaderStyle_get_ScaleFactor(This,Scale)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,Scale) ) 

#define IAcadMLeaderStyle_put_ScaleFactor(This,Scale)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,Scale) ) 

#define IAcadMLeaderStyle_get_OverwritePropChanged(This,changed)	\
    ( (This)->lpVtbl -> get_OverwritePropChanged(This,changed) ) 

#define IAcadMLeaderStyle_get_Annotative(This,annotative)	\
    ( (This)->lpVtbl -> get_Annotative(This,annotative) ) 

#define IAcadMLeaderStyle_put_Annotative(This,annotative)	\
    ( (This)->lpVtbl -> put_Annotative(This,annotative) ) 

#define IAcadMLeaderStyle_get_BreakSize(This,size)	\
    ( (This)->lpVtbl -> get_BreakSize(This,size) ) 

#define IAcadMLeaderStyle_put_BreakSize(This,size)	\
    ( (This)->lpVtbl -> put_BreakSize(This,size) ) 

#define IAcadMLeaderStyle_get_TextString(This,text)	\
    ( (This)->lpVtbl -> get_TextString(This,text) ) 

#define IAcadMLeaderStyle_put_TextString(This,text)	\
    ( (This)->lpVtbl -> put_TextString(This,text) ) 

#define IAcadMLeaderStyle_get_TextAngleType(This,type)	\
    ( (This)->lpVtbl -> get_TextAngleType(This,type) ) 

#define IAcadMLeaderStyle_put_TextAngleType(This,type)	\
    ( (This)->lpVtbl -> put_TextAngleType(This,type) ) 

#define IAcadMLeaderStyle_get_TextAlignmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextAlignmentType(This,type) ) 

#define IAcadMLeaderStyle_put_TextAlignmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextAlignmentType(This,type) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMLeaderStyle_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMLeaderStyle,0x99211C95,0x3862,0x4E7C,0x87,0x70,0x35,0xC6,0x8C,0xA1,0x94,0x4B);

#ifdef __cplusplus

class DECLSPEC_UUID("99211C95-3862-4E7C-8770-35C68CA1944B")
AcadMLeaderStyle;
#endif

#ifndef __IAcadHyperlinks_INTERFACE_DEFINED__
#define __IAcadHyperlinks_INTERFACE_DEFINED__

/* interface IAcadHyperlinks */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadHyperlinks,0xAD0379AD,0x1D0F,0x43A8,0x8B,0xF7,0xCA,0x8E,0x73,0xED,0x39,0x43);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AD0379AD-1D0F-43A8-8BF7-CA8E73ED3943")
    IAcadHyperlinks : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ long Index,
            /* [retval][out] */ IAcadHyperlink **pItem) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *ApplicationObject) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [optional][in] */ VARIANT Description,
            /* [optional][in] */ VARIANT NamedLocation,
            /* [retval][out] */ IAcadHyperlink **pHyperlink) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadHyperlinksVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadHyperlinks * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadHyperlinks * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadHyperlinks * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadHyperlinks * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadHyperlinks * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadHyperlinks * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadHyperlinks * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadHyperlinks * This,
            /* [in] */ long Index,
            /* [retval][out] */ IAcadHyperlink **pItem);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadHyperlinks * This,
            /* [retval][out] */ long *pVal);
        
        /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadHyperlinks * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadHyperlinks * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadHyperlinks * This,
            /* [in] */ BSTR Name,
            /* [optional][in] */ VARIANT Description,
            /* [optional][in] */ VARIANT NamedLocation,
            /* [retval][out] */ IAcadHyperlink **pHyperlink);
        
        END_INTERFACE
    } IAcadHyperlinksVtbl;

    interface IAcadHyperlinks
    {
        CONST_VTBL struct IAcadHyperlinksVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadHyperlinks_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadHyperlinks_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadHyperlinks_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadHyperlinks_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadHyperlinks_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadHyperlinks_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadHyperlinks_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadHyperlinks_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadHyperlinks_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadHyperlinks_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadHyperlinks_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadHyperlinks_Add(This,Name,Description,NamedLocation,pHyperlink)	\
    ( (This)->lpVtbl -> Add(This,Name,Description,NamedLocation,pHyperlink) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadHyperlinks_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadHyperlinks,0xD929AFA9,0xA6A0,0x474B,0x9F,0x26,0xF1,0x63,0x58,0xFA,0x30,0xB5);

#ifdef __cplusplus

class DECLSPEC_UUID("D929AFA9-A6A0-474B-9F26-F16358FA30B5")
AcadHyperlinks;
#endif

DEFINE_GUID(CLSID_AcadDictionary,0x3CC77F29,0x1CFD,0x4754,0x84,0x08,0xF3,0xE9,0x47,0x39,0x12,0x38);

#ifdef __cplusplus

class DECLSPEC_UUID("3CC77F29-1CFD-4754-8408-F3E947391238")
AcadDictionary;
#endif

#ifndef __IAcadLayers_INTERFACE_DEFINED__
#define __IAcadLayers_INTERFACE_DEFINED__

/* interface IAcadLayers */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLayers,0x66E080D9,0xAD12,0x4280,0xB5,0xA7,0x2E,0xBF,0xA8,0x9D,0xCA,0xE6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("66E080D9-AD12-4280-B5A7-2EBFA89DCAE6")
    IAcadLayers : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadLayer **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadLayer **pLayer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GenerateUsageData( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLayersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLayers * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLayers * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLayers * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLayers * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLayers * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLayers * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLayers * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLayers * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLayers * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLayers * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLayers * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLayers * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLayers * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLayers * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLayers * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLayers * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLayers * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLayers * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLayers * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLayers * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLayers * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLayers * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadLayers * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadLayer **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadLayers * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadLayers * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadLayers * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadLayer **pLayer);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GenerateUsageData )( 
            IAcadLayers * This);
        
        END_INTERFACE
    } IAcadLayersVtbl;

    interface IAcadLayers
    {
        CONST_VTBL struct IAcadLayersVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLayers_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLayers_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLayers_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLayers_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLayers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLayers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLayers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLayers_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLayers_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLayers_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLayers_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLayers_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLayers_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLayers_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLayers_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLayers_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLayers_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLayers_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLayers_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLayers_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLayers_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLayers_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLayers_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadLayers_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadLayers_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadLayers_Add(This,Name,pLayer)	\
    ( (This)->lpVtbl -> Add(This,Name,pLayer) ) 

#define IAcadLayers_GenerateUsageData(This)	\
    ( (This)->lpVtbl -> GenerateUsageData(This) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLayers_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLayers,0xB95A3E6E,0x5D0A,0x4080,0xA3,0x53,0x23,0xF8,0x6C,0x4A,0xDE,0xC8);

#ifdef __cplusplus

class DECLSPEC_UUID("B95A3E6E-5D0A-4080-A353-23F86C4ADEC8")
AcadLayers;
#endif

#ifndef __IAcadDimStyles_INTERFACE_DEFINED__
#define __IAcadDimStyles_INTERFACE_DEFINED__

/* interface IAcadDimStyles */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimStyles,0x0C284A1C,0xEAF2,0x425A,0x8D,0x21,0xA1,0xB8,0x17,0x3D,0xE1,0x96);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0C284A1C-EAF2-425A-8D21-A1B8173DE196")
    IAcadDimStyles : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadDimStyle **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadDimStyle **pDimStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimStylesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimStyles * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimStyles * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimStyles * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimStyles * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimStyles * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimStyles * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimStyles * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimStyles * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimStyles * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimStyles * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimStyles * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimStyles * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimStyles * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimStyles * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimStyles * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimStyles * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadDimStyles * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadDimStyle **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadDimStyles * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadDimStyles * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadDimStyles * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadDimStyle **pDimStyle);
        
        END_INTERFACE
    } IAcadDimStylesVtbl;

    interface IAcadDimStyles
    {
        CONST_VTBL struct IAcadDimStylesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimStyles_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimStyles_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimStyles_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimStyles_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimStyles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimStyles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimStyles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimStyles_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimStyles_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimStyles_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimStyles_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimStyles_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimStyles_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimStyles_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimStyles_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimStyles_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimStyles_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimStyles_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimStyles_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimStyles_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimStyles_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimStyles_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimStyles_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadDimStyles_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadDimStyles_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadDimStyles_Add(This,Name,pDimStyle)	\
    ( (This)->lpVtbl -> Add(This,Name,pDimStyle) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDimStyles_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimStyles,0x41A5BBED,0x65C9,0x4E4A,0xAB,0xFF,0xB5,0x01,0x83,0xFE,0x49,0x2E);

#ifdef __cplusplus

class DECLSPEC_UUID("41A5BBED-65C9-4E4A-ABFF-B50183FE492E")
AcadDimStyles;
#endif

#ifndef __IAcadDictionaries_INTERFACE_DEFINED__
#define __IAcadDictionaries_INTERFACE_DEFINED__

/* interface IAcadDictionaries */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDictionaries,0x2FD39045,0xF33A,0x4FE0,0xAB,0xE0,0xEA,0x3C,0x63,0x88,0x67,0xF5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2FD39045-F33A-4FE0-ABE0-EA3C638867F5")
    IAcadDictionaries : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadObject **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadDictionary **pDimStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDictionariesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDictionaries * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDictionaries * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDictionaries * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDictionaries * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDictionaries * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDictionaries * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDictionaries * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDictionaries * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDictionaries * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDictionaries * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDictionaries * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDictionaries * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDictionaries * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDictionaries * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDictionaries * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDictionaries * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadDictionaries * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadObject **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadDictionaries * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadDictionaries * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadDictionaries * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadDictionary **pDimStyle);
        
        END_INTERFACE
    } IAcadDictionariesVtbl;

    interface IAcadDictionaries
    {
        CONST_VTBL struct IAcadDictionariesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDictionaries_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDictionaries_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDictionaries_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDictionaries_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDictionaries_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDictionaries_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDictionaries_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDictionaries_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDictionaries_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDictionaries_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDictionaries_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDictionaries_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDictionaries_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDictionaries_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDictionaries_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDictionaries_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDictionaries_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDictionaries_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDictionaries_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDictionaries_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDictionaries_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDictionaries_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDictionaries_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadDictionaries_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadDictionaries_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadDictionaries_Add(This,Name,pDimStyle)	\
    ( (This)->lpVtbl -> Add(This,Name,pDimStyle) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDictionaries_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDictionaries,0x93665D2F,0xB163,0x4168,0x97,0x4D,0x1B,0xE7,0xD7,0x25,0xCA,0x6A);

#ifdef __cplusplus

class DECLSPEC_UUID("93665D2F-B163-4168-974D-1BE7D725CA6A")
AcadDictionaries;
#endif

#ifndef __IAcadLineTypes_INTERFACE_DEFINED__
#define __IAcadLineTypes_INTERFACE_DEFINED__

/* interface IAcadLineTypes */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLineTypes,0x81758580,0x5621,0x4985,0x9A,0x84,0xA6,0xA4,0xA5,0xE7,0xAD,0x94);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("81758580-5621-4985-9A84-A6A4A5E7AD94")
    IAcadLineTypes : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadLineType **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadLineType **pLinetype) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Load( 
            /* [in] */ BSTR Name,
            /* [in] */ BSTR FileName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLineTypesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLineTypes * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLineTypes * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLineTypes * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLineTypes * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLineTypes * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLineTypes * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLineTypes * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLineTypes * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLineTypes * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLineTypes * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLineTypes * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLineTypes * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLineTypes * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLineTypes * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLineTypes * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLineTypes * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadLineTypes * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadLineType **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadLineTypes * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadLineTypes * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadLineTypes * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadLineType **pLinetype);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Load )( 
            IAcadLineTypes * This,
            /* [in] */ BSTR Name,
            /* [in] */ BSTR FileName);
        
        END_INTERFACE
    } IAcadLineTypesVtbl;

    interface IAcadLineTypes
    {
        CONST_VTBL struct IAcadLineTypesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLineTypes_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLineTypes_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLineTypes_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLineTypes_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLineTypes_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLineTypes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLineTypes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLineTypes_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLineTypes_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLineTypes_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLineTypes_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLineTypes_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLineTypes_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLineTypes_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLineTypes_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLineTypes_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLineTypes_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLineTypes_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLineTypes_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLineTypes_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLineTypes_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLineTypes_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLineTypes_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadLineTypes_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadLineTypes_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadLineTypes_Add(This,Name,pLinetype)	\
    ( (This)->lpVtbl -> Add(This,Name,pLinetype) ) 

#define IAcadLineTypes_Load(This,Name,FileName)	\
    ( (This)->lpVtbl -> Load(This,Name,FileName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLineTypes_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLineTypes,0x86BFEA05,0xD473,0x4882,0x86,0x1B,0x2E,0x71,0xE3,0x00,0x4D,0xA5);

#ifdef __cplusplus

class DECLSPEC_UUID("86BFEA05-D473-4882-861B-2E71E3004DA5")
AcadLineTypes;
#endif

#ifndef __IAcadMaterials_INTERFACE_DEFINED__
#define __IAcadMaterials_INTERFACE_DEFINED__

/* interface IAcadMaterials */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMaterials,0x4ED31F1B,0x468B,0x4D1B,0x9A,0xAA,0xF5,0x2E,0xD5,0x57,0x52,0xD5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4ED31F1B-468B-4D1B-9AAA-F52ED55752D5")
    IAcadMaterials : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadMaterial **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadMaterial **pDimStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMaterialsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMaterials * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMaterials * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMaterials * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMaterials * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMaterials * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMaterials * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMaterials * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMaterials * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMaterials * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMaterials * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMaterials * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMaterials * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMaterials * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMaterials * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMaterials * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMaterials * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMaterials * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMaterials * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMaterials * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMaterials * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMaterials * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMaterials * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadMaterials * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadMaterial **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadMaterials * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadMaterials * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadMaterials * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadMaterial **pDimStyle);
        
        END_INTERFACE
    } IAcadMaterialsVtbl;

    interface IAcadMaterials
    {
        CONST_VTBL struct IAcadMaterialsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMaterials_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMaterials_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMaterials_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMaterials_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMaterials_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMaterials_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMaterials_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMaterials_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMaterials_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMaterials_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMaterials_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMaterials_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMaterials_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMaterials_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMaterials_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMaterials_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMaterials_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMaterials_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMaterials_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMaterials_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMaterials_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMaterials_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMaterials_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadMaterials_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadMaterials_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadMaterials_Add(This,Name,pDimStyle)	\
    ( (This)->lpVtbl -> Add(This,Name,pDimStyle) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMaterials_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMaterials,0xB54A1EB0,0x28A6,0x43AE,0xA4,0x5B,0xBE,0x3D,0xFB,0x94,0xE9,0x1B);

#ifdef __cplusplus

class DECLSPEC_UUID("B54A1EB0-28A6-43AE-A45B-BE3DFB94E91B")
AcadMaterials;
#endif

#ifndef __IAcadTextStyles_INTERFACE_DEFINED__
#define __IAcadTextStyles_INTERFACE_DEFINED__

/* interface IAcadTextStyles */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadTextStyles,0xEA00BFB5,0x4299,0x45FC,0x9A,0xBB,0x8A,0x56,0xE7,0x37,0x79,0xEB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EA00BFB5-4299-45FC-9ABB-8A56E73779EB")
    IAcadTextStyles : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadTextStyle **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadTextStyle **pTextStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadTextStylesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadTextStyles * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadTextStyles * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadTextStyles * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadTextStyles * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadTextStyles * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadTextStyles * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadTextStyles * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadTextStyles * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadTextStyles * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadTextStyles * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadTextStyles * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadTextStyles * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadTextStyles * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadTextStyles * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadTextStyles * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadTextStyles * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadTextStyles * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadTextStyle **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadTextStyles * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadTextStyles * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadTextStyles * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadTextStyle **pTextStyle);
        
        END_INTERFACE
    } IAcadTextStylesVtbl;

    interface IAcadTextStyles
    {
        CONST_VTBL struct IAcadTextStylesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadTextStyles_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadTextStyles_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadTextStyles_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadTextStyles_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadTextStyles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadTextStyles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadTextStyles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadTextStyles_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadTextStyles_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadTextStyles_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadTextStyles_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadTextStyles_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadTextStyles_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadTextStyles_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadTextStyles_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadTextStyles_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadTextStyles_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadTextStyles_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadTextStyles_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadTextStyles_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadTextStyles_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadTextStyles_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadTextStyles_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadTextStyles_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadTextStyles_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadTextStyles_Add(This,Name,pTextStyle)	\
    ( (This)->lpVtbl -> Add(This,Name,pTextStyle) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadTextStyles_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadTextStyles,0xDDDFA318,0x7B86,0x4721,0x85,0x72,0x65,0x9B,0x0D,0x32,0xC3,0x14);

#ifdef __cplusplus

class DECLSPEC_UUID("DDDFA318-7B86-4721-8572-659B0D32C314")
AcadTextStyles;
#endif

#ifndef __IAcadUCSs_INTERFACE_DEFINED__
#define __IAcadUCSs_INTERFACE_DEFINED__

/* interface IAcadUCSs */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadUCSs,0x60C5E080,0x2F24,0x40B4,0x88,0xF4,0x21,0xB7,0x55,0xA5,0xC1,0x8D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("60C5E080-2F24-40B4-88F4-21B755A5C18D")
    IAcadUCSs : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadUCS **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT Origin,
            /* [in] */ VARIANT XAxisPoint,
            /* [in] */ VARIANT YAxisPoint,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadUCS **pUCS) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadUCSsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadUCSs * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadUCSs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadUCSs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadUCSs * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadUCSs * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadUCSs * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadUCSs * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadUCSs * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadUCSs * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadUCSs * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadUCSs * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadUCSs * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadUCSs * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadUCSs * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadUCSs * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadUCSs * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadUCSs * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadUCSs * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadUCSs * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadUCSs * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadUCSs * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadUCSs * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadUCSs * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadUCS **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadUCSs * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadUCSs * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadUCSs * This,
            /* [in] */ VARIANT Origin,
            /* [in] */ VARIANT XAxisPoint,
            /* [in] */ VARIANT YAxisPoint,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadUCS **pUCS);
        
        END_INTERFACE
    } IAcadUCSsVtbl;

    interface IAcadUCSs
    {
        CONST_VTBL struct IAcadUCSsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadUCSs_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadUCSs_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadUCSs_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadUCSs_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadUCSs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadUCSs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadUCSs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadUCSs_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadUCSs_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadUCSs_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadUCSs_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadUCSs_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadUCSs_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadUCSs_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadUCSs_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadUCSs_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadUCSs_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadUCSs_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadUCSs_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadUCSs_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadUCSs_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadUCSs_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadUCSs_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadUCSs_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadUCSs_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadUCSs_Add(This,Origin,XAxisPoint,YAxisPoint,Name,pUCS)	\
    ( (This)->lpVtbl -> Add(This,Origin,XAxisPoint,YAxisPoint,Name,pUCS) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadUCSs_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadUCSs,0x1D20EF5D,0x1DE2,0x4167,0x9E,0x12,0xCE,0xB6,0x7E,0xB8,0x72,0x37);

#ifdef __cplusplus

class DECLSPEC_UUID("1D20EF5D-1DE2-4167-9E12-CEB67EB87237")
AcadUCSs;
#endif

#ifndef __IAcadRegisteredApplications_INTERFACE_DEFINED__
#define __IAcadRegisteredApplications_INTERFACE_DEFINED__

/* interface IAcadRegisteredApplications */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadRegisteredApplications,0x5E9A1BA0,0x23FE,0x4F32,0xB8,0x02,0xEB,0xAA,0xDC,0xF9,0x04,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5E9A1BA0-23FE-4F32-B802-EBAADCF90456")
    IAcadRegisteredApplications : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadRegisteredApplication **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadRegisteredApplication **pRegApp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadRegisteredApplicationsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadRegisteredApplications * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadRegisteredApplications * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadRegisteredApplications * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadRegisteredApplications * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadRegisteredApplications * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadRegisteredApplications * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadRegisteredApplications * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadRegisteredApplications * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadRegisteredApplications * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadRegisteredApplications * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadRegisteredApplications * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadRegisteredApplications * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadRegisteredApplication **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadRegisteredApplications * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadRegisteredApplications * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadRegisteredApplication **pRegApp);
        
        END_INTERFACE
    } IAcadRegisteredApplicationsVtbl;

    interface IAcadRegisteredApplications
    {
        CONST_VTBL struct IAcadRegisteredApplicationsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadRegisteredApplications_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadRegisteredApplications_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadRegisteredApplications_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadRegisteredApplications_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadRegisteredApplications_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadRegisteredApplications_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadRegisteredApplications_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadRegisteredApplications_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadRegisteredApplications_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadRegisteredApplications_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadRegisteredApplications_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadRegisteredApplications_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadRegisteredApplications_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadRegisteredApplications_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadRegisteredApplications_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadRegisteredApplications_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadRegisteredApplications_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadRegisteredApplications_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadRegisteredApplications_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadRegisteredApplications_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadRegisteredApplications_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadRegisteredApplications_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadRegisteredApplications_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadRegisteredApplications_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadRegisteredApplications_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadRegisteredApplications_Add(This,Name,pRegApp)	\
    ( (This)->lpVtbl -> Add(This,Name,pRegApp) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadRegisteredApplications_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadRegisteredApplications,0xA86E1440,0x9D1C,0x4323,0x9A,0x34,0xC3,0x68,0x6C,0x08,0x9A,0x7D);

#ifdef __cplusplus

class DECLSPEC_UUID("A86E1440-9D1C-4323-9A34-C3686C089A7D")
AcadRegisteredApplications;
#endif

#ifndef __IAcadViews_INTERFACE_DEFINED__
#define __IAcadViews_INTERFACE_DEFINED__

/* interface IAcadViews */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadViews,0xD2FC4A6D,0x894A,0x4E3E,0xAC,0xFC,0x03,0xFE,0x88,0x5A,0xC5,0xE3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D2FC4A6D-894A-4E3E-ACFC-03FE885AC5E3")
    IAcadViews : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadView **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadView **pRegApp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadViewsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadViews * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadViews * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadViews * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadViews * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadViews * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadViews * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadViews * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadViews * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadViews * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadViews * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadViews * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadViews * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadViews * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadViews * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadViews * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadViews * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadViews * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadViews * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadViews * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadViews * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadViews * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadViews * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadViews * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadView **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadViews * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadViews * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadViews * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadView **pRegApp);
        
        END_INTERFACE
    } IAcadViewsVtbl;

    interface IAcadViews
    {
        CONST_VTBL struct IAcadViewsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadViews_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadViews_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadViews_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadViews_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadViews_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadViews_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadViews_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadViews_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadViews_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadViews_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadViews_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadViews_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadViews_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadViews_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadViews_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadViews_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadViews_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadViews_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadViews_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadViews_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadViews_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadViews_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadViews_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadViews_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadViews_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadViews_Add(This,Name,pRegApp)	\
    ( (This)->lpVtbl -> Add(This,Name,pRegApp) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadViews_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadViews,0x2150A7ED,0xDEFA,0x466B,0x9F,0x25,0xD0,0x40,0xC2,0xE7,0xC3,0x02);

#ifdef __cplusplus

class DECLSPEC_UUID("2150A7ED-DEFA-466B-9F25-D040C2E7C302")
AcadViews;
#endif

#ifndef __IAcadViewports_INTERFACE_DEFINED__
#define __IAcadViewports_INTERFACE_DEFINED__

/* interface IAcadViewports */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadViewports,0xE09BAB22,0xA8AC,0x4B99,0x9E,0x1F,0xED,0x15,0x41,0xC4,0x73,0x30);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E09BAB22-A8AC-4B99-9E1F-ED1541C47330")
    IAcadViewports : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadViewport **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadViewport **pRegApp) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteConfiguration( 
            /* [in] */ BSTR Name) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadViewportsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadViewports * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadViewports * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadViewports * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadViewports * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadViewports * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadViewports * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadViewports * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadViewports * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadViewports * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadViewports * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadViewports * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadViewports * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadViewports * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadViewports * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadViewports * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadViewports * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadViewports * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadViewports * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadViewports * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadViewports * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadViewports * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadViewports * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadViewports * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadViewport **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadViewports * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadViewports * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadViewports * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadViewport **pRegApp);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteConfiguration )( 
            IAcadViewports * This,
            /* [in] */ BSTR Name);
        
        END_INTERFACE
    } IAcadViewportsVtbl;

    interface IAcadViewports
    {
        CONST_VTBL struct IAcadViewportsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadViewports_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadViewports_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadViewports_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadViewports_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadViewports_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadViewports_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadViewports_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadViewports_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadViewports_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadViewports_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadViewports_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadViewports_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadViewports_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadViewports_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadViewports_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadViewports_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadViewports_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadViewports_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadViewports_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadViewports_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadViewports_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadViewports_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadViewports_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadViewports_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadViewports_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadViewports_Add(This,Name,pRegApp)	\
    ( (This)->lpVtbl -> Add(This,Name,pRegApp) ) 

#define IAcadViewports_DeleteConfiguration(This,Name)	\
    ( (This)->lpVtbl -> DeleteConfiguration(This,Name) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadViewports_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadViewports,0x1090BFA8,0xCBD9,0x452D,0xA9,0x67,0xF8,0x18,0x8C,0xD1,0x3D,0xDD);

#ifdef __cplusplus

class DECLSPEC_UUID("1090BFA8-CBD9-452D-A967-F8188CD13DDD")
AcadViewports;
#endif

#ifndef __IAcadGroups_INTERFACE_DEFINED__
#define __IAcadGroups_INTERFACE_DEFINED__

/* interface IAcadGroups */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadGroups,0x830A1360,0xDD64,0x4E1A,0x9C,0x06,0xB5,0x3B,0xE6,0x8B,0xD0,0x5F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("830A1360-DD64-4E1A-9C06-B53BE68BD05F")
    IAcadGroups : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadGroup **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadGroup **pDimStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadGroupsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadGroups * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadGroups * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadGroups * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadGroups * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadGroups * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadGroups * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadGroups * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadGroups * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadGroups * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadGroups * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadGroups * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadGroups * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadGroups * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadGroups * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadGroups * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadGroups * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadGroups * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadGroups * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadGroups * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadGroups * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadGroups * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadGroups * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadGroups * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadGroup **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadGroups * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadGroups * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadGroups * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadGroup **pDimStyle);
        
        END_INTERFACE
    } IAcadGroupsVtbl;

    interface IAcadGroups
    {
        CONST_VTBL struct IAcadGroupsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadGroups_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadGroups_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadGroups_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadGroups_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadGroups_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadGroups_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadGroups_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadGroups_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadGroups_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadGroups_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadGroups_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadGroups_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadGroups_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadGroups_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadGroups_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadGroups_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadGroups_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadGroups_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadGroups_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadGroups_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadGroups_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadGroups_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadGroups_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadGroups_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadGroups_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadGroups_Add(This,Name,pDimStyle)	\
    ( (This)->lpVtbl -> Add(This,Name,pDimStyle) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadGroups_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadGroups,0x58306840,0x84F5,0x4A3D,0xA0,0x35,0x43,0xCC,0x98,0x6C,0xA5,0x03);

#ifdef __cplusplus

class DECLSPEC_UUID("58306840-84F5-4A3D-A035-43CC986CA503")
AcadGroups;
#endif

#ifndef __IAcadBlocks_INTERFACE_DEFINED__
#define __IAcadBlocks_INTERFACE_DEFINED__

/* interface IAcadBlocks */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadBlocks,0xF73108C0,0x27EE,0x4CF7,0xB9,0x09,0xB3,0x03,0x53,0x2A,0x06,0x01);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F73108C0-27EE-4CF7-B909-B303532A0601")
    IAcadBlocks : public IAcadObject
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadBlock **pItem) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadBlock **pBlock) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadBlocksVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadBlocks * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadBlocks * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadBlocks * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadBlocks * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadBlocks * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadBlocks * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadBlocks * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadBlocks * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadBlocks * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadBlocks * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadBlocks * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadBlocks * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadBlocks * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadBlocks * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadBlocks * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadBlocks * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadBlocks * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadBlocks * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadBlocks * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadBlocks * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadBlocks * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadBlocks * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadBlocks * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadBlock **pItem);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadBlocks * This,
            /* [retval][out] */ long *pVal);
        
        /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadBlocks * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadBlocks * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadBlock **pBlock);
        
        END_INTERFACE
    } IAcadBlocksVtbl;

    interface IAcadBlocks
    {
        CONST_VTBL struct IAcadBlocksVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadBlocks_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadBlocks_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadBlocks_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadBlocks_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadBlocks_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadBlocks_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadBlocks_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadBlocks_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadBlocks_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadBlocks_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadBlocks_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadBlocks_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadBlocks_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadBlocks_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadBlocks_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadBlocks_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadBlocks_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadBlocks_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadBlocks_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadBlocks_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadBlocks_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadBlocks_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadBlocks_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadBlocks_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadBlocks_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadBlocks_Add(This,InsertionPoint,Name,pBlock)	\
    ( (This)->lpVtbl -> Add(This,InsertionPoint,Name,pBlock) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadBlocks_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadBlocks,0x25FFDEB2,0xC0A1,0x4878,0xB8,0x10,0x2E,0x0F,0xA6,0xA6,0x92,0xAF);

#ifdef __cplusplus

class DECLSPEC_UUID("25FFDEB2-C0A1-4878-B810-2E0FA6A692AF")
AcadBlocks;
#endif

#ifndef __IAcadLayouts_INTERFACE_DEFINED__
#define __IAcadLayouts_INTERFACE_DEFINED__

/* interface IAcadLayouts */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLayouts,0x88CA3904,0xBB3B,0x49A7,0x8F,0xB2,0x1E,0x45,0xA3,0x75,0x41,0xA1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("88CA3904-BB3B-49A7-8FB2-1E45A37541A1")
    IAcadLayouts : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadLayout **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadLayout **pLayout) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLayoutsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLayouts * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLayouts * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLayouts * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLayouts * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLayouts * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLayouts * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLayouts * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLayouts * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLayouts * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLayouts * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLayouts * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLayouts * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLayouts * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLayouts * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLayouts * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLayouts * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLayouts * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLayouts * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLayouts * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLayouts * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLayouts * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLayouts * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadLayouts * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadLayout **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadLayouts * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadLayouts * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadLayouts * This,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IAcadLayout **pLayout);
        
        END_INTERFACE
    } IAcadLayoutsVtbl;

    interface IAcadLayouts
    {
        CONST_VTBL struct IAcadLayoutsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLayouts_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLayouts_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLayouts_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLayouts_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLayouts_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLayouts_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLayouts_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLayouts_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLayouts_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLayouts_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLayouts_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLayouts_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLayouts_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLayouts_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLayouts_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLayouts_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLayouts_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLayouts_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLayouts_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLayouts_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLayouts_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLayouts_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLayouts_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadLayouts_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadLayouts_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadLayouts_Add(This,Name,pLayout)	\
    ( (This)->lpVtbl -> Add(This,Name,pLayout) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLayouts_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLayouts,0x173F2729,0xA2E4,0x4D7A,0xA2,0x87,0x4B,0x80,0xC8,0x19,0xDE,0x32);

#ifdef __cplusplus

class DECLSPEC_UUID("173F2729-A2E4-4D7A-A287-4B80C819DE32")
AcadLayouts;
#endif

#ifndef __IAcadPlotConfigurations_INTERFACE_DEFINED__
#define __IAcadPlotConfigurations_INTERFACE_DEFINED__

/* interface IAcadPlotConfigurations */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPlotConfigurations,0x67468E51,0xE585,0x4EA1,0x92,0xC4,0x45,0xCA,0x9F,0x4C,0x89,0x19);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("67468E51-E585-4EA1-92C4-45CA9F4C8919")
    IAcadPlotConfigurations : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadPlotConfiguration **pItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pCount) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [optional][in] */ VARIANT ModelType,
            /* [retval][out] */ IAcadPlotConfiguration **pPlotConfig) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPlotConfigurationsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPlotConfigurations * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPlotConfigurations * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPlotConfigurations * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPlotConfigurations * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPlotConfigurations * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPlotConfigurations * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPlotConfigurations * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPlotConfigurations * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPlotConfigurations * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPlotConfigurations * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPlotConfigurations * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadPlotConfigurations * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadPlotConfiguration **pItem);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ long *pCount);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadPlotConfigurations * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IAcadPlotConfigurations * This,
            /* [in] */ BSTR Name,
            /* [optional][in] */ VARIANT ModelType,
            /* [retval][out] */ IAcadPlotConfiguration **pPlotConfig);
        
        END_INTERFACE
    } IAcadPlotConfigurationsVtbl;

    interface IAcadPlotConfigurations
    {
        CONST_VTBL struct IAcadPlotConfigurationsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPlotConfigurations_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPlotConfigurations_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPlotConfigurations_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPlotConfigurations_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPlotConfigurations_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPlotConfigurations_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPlotConfigurations_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPlotConfigurations_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPlotConfigurations_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPlotConfigurations_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPlotConfigurations_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPlotConfigurations_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPlotConfigurations_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPlotConfigurations_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPlotConfigurations_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPlotConfigurations_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPlotConfigurations_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPlotConfigurations_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPlotConfigurations_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPlotConfigurations_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPlotConfigurations_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPlotConfigurations_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPlotConfigurations_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadPlotConfigurations_get_Count(This,pCount)	\
    ( (This)->lpVtbl -> get_Count(This,pCount) ) 

#define IAcadPlotConfigurations_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadPlotConfigurations_Add(This,Name,ModelType,pPlotConfig)	\
    ( (This)->lpVtbl -> Add(This,Name,ModelType,pPlotConfig) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPlotConfigurations_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPlotConfigurations,0x004988DE,0x88AF,0x49B7,0xBC,0x3B,0x68,0xC4,0xA4,0x29,0x71,0x07);

#ifdef __cplusplus

class DECLSPEC_UUID("004988DE-88AF-49B7-BC3B-68C4A4297107")
AcadPlotConfigurations;
#endif

DEFINE_GUID(CLSID_AcadEntity,0x9C4F54DC,0x58D1,0x4914,0x91,0x7D,0xDD,0xC4,0xFB,0x1A,0xBA,0x23);

#ifdef __cplusplus

class DECLSPEC_UUID("9C4F54DC-58D1-4914-917D-DDC4FB1ABA23")
AcadEntity;
#endif

#ifndef __IAcadShadowDisplay_INTERFACE_DEFINED__
#define __IAcadShadowDisplay_INTERFACE_DEFINED__

/* interface IAcadShadowDisplay */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadShadowDisplay,0xB323B6EE,0xF5BB,0x42A6,0xB4,0x74,0x63,0x49,0xD3,0x8B,0x4F,0xCC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B323B6EE-F5BB-42A6-B474-6349D38B4FCC")
    IAcadShadowDisplay : public IUnknown
    {
    public:
        virtual /* [helpstringcontext][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_ShadowDisplay( 
            /* [retval][out] */ AcShadowDisplayType *shadowDisplay) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_ShadowDisplay( 
            /* [in] */ AcShadowDisplayType shadowDisplay) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_EnableShadowDisplay( 
            /* [retval][out] */ BOOL *shadowDisplay) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadShadowDisplayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadShadowDisplay * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadShadowDisplay * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadShadowDisplay * This);
        
        /* [helpstringcontext][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowDisplay )( 
            IAcadShadowDisplay * This,
            /* [retval][out] */ AcShadowDisplayType *shadowDisplay);
        
        /* [helpstringcontext][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowDisplay )( 
            IAcadShadowDisplay * This,
            /* [in] */ AcShadowDisplayType shadowDisplay);
        
        /* [helpstringcontext][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnableShadowDisplay )( 
            IAcadShadowDisplay * This,
            /* [retval][out] */ BOOL *shadowDisplay);
        
        END_INTERFACE
    } IAcadShadowDisplayVtbl;

    interface IAcadShadowDisplay
    {
        CONST_VTBL struct IAcadShadowDisplayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadShadowDisplay_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadShadowDisplay_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadShadowDisplay_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadShadowDisplay_get_ShadowDisplay(This,shadowDisplay)	\
    ( (This)->lpVtbl -> get_ShadowDisplay(This,shadowDisplay) ) 

#define IAcadShadowDisplay_put_ShadowDisplay(This,shadowDisplay)	\
    ( (This)->lpVtbl -> put_ShadowDisplay(This,shadowDisplay) ) 

#define IAcadShadowDisplay_get_EnableShadowDisplay(This,shadowDisplay)	\
    ( (This)->lpVtbl -> get_EnableShadowDisplay(This,shadowDisplay) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadShadowDisplay_INTERFACE_DEFINED__ */


#ifndef __IAcadRasterImage_INTERFACE_DEFINED__
#define __IAcadRasterImage_INTERFACE_DEFINED__

/* interface IAcadRasterImage */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadRasterImage,0xB82704FD,0x2E41,0x48FF,0x85,0x23,0x58,0x88,0xB4,0x6B,0x1D,0x26);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B82704FD-2E41-48FF-8523-5888B46B1D26")
    IAcadRasterImage : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Brightness( 
            /* [retval][out] */ long *brightness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Brightness( 
            /* [in] */ long brightness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Contrast( 
            /* [retval][out] */ long *contrast) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Contrast( 
            /* [in] */ long contrast) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fade( 
            /* [retval][out] */ long *fade) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fade( 
            /* [in] */ long fade) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Origin( 
            /* [retval][out] */ VARIANT *origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Origin( 
            /* [in] */ VARIANT Origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImageWidth( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ImageWidth( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImageHeight( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ImageHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ImageFile( 
            /* [in] */ BSTR imageFileName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImageFile( 
            /* [retval][out] */ BSTR *imageFileName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImageVisibility( 
            /* [retval][out] */ VARIANT_BOOL *fVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ImageVisibility( 
            /* [in] */ VARIANT_BOOL fVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClippingEnabled( 
            /* [retval][out] */ VARIANT_BOOL *kClip) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClippingEnabled( 
            /* [in] */ VARIANT_BOOL kClip) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Transparency( 
            /* [retval][out] */ VARIANT_BOOL *bTransp) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Transparency( 
            /* [in] */ VARIANT_BOOL bTransp) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ClipBoundary( 
            /* [in] */ VARIANT boundry) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *pixelHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *pixelWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowRotation( 
            /* [retval][out] */ VARIANT_BOOL *bShow) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowRotation( 
            /* [in] */ VARIANT_BOOL bShow) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadRasterImageVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadRasterImage * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadRasterImage * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadRasterImage * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadRasterImage * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadRasterImage * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadRasterImage * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadRasterImage * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadRasterImage * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadRasterImage * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadRasterImage * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadRasterImage * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadRasterImage * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadRasterImage * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadRasterImage * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadRasterImage * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadRasterImage * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadRasterImage * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadRasterImage * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadRasterImage * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadRasterImage * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadRasterImage * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadRasterImage * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadRasterImage * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadRasterImage * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadRasterImage * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadRasterImage * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadRasterImage * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Brightness )( 
            IAcadRasterImage * This,
            /* [retval][out] */ long *brightness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Brightness )( 
            IAcadRasterImage * This,
            /* [in] */ long brightness);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Contrast )( 
            IAcadRasterImage * This,
            /* [retval][out] */ long *contrast);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Contrast )( 
            IAcadRasterImage * This,
            /* [in] */ long contrast);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fade )( 
            IAcadRasterImage * This,
            /* [retval][out] */ long *fade);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fade )( 
            IAcadRasterImage * This,
            /* [in] */ long fade);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT Origin);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadRasterImage * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadRasterImage * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageWidth )( 
            IAcadRasterImage * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageWidth )( 
            IAcadRasterImage * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageHeight )( 
            IAcadRasterImage * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageHeight )( 
            IAcadRasterImage * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageFile )( 
            IAcadRasterImage * This,
            /* [in] */ BSTR imageFileName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageFile )( 
            IAcadRasterImage * This,
            /* [retval][out] */ BSTR *imageFileName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageVisibility )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT_BOOL *fVisible);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageVisibility )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT_BOOL fVisible);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClippingEnabled )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT_BOOL *kClip);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClippingEnabled )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT_BOOL kClip);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Transparency )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT_BOOL *bTransp);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Transparency )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT_BOOL bTransp);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ClipBoundary )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT boundry);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadRasterImage * This,
            /* [retval][out] */ double *pixelHeight);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadRasterImage * This,
            /* [retval][out] */ double *pixelWidth);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowRotation )( 
            IAcadRasterImage * This,
            /* [retval][out] */ VARIANT_BOOL *bShow);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShowRotation )( 
            IAcadRasterImage * This,
            /* [in] */ VARIANT_BOOL bShow);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadRasterImage * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadRasterImage * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        END_INTERFACE
    } IAcadRasterImageVtbl;

    interface IAcadRasterImage
    {
        CONST_VTBL struct IAcadRasterImageVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadRasterImage_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadRasterImage_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadRasterImage_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadRasterImage_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadRasterImage_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadRasterImage_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadRasterImage_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadRasterImage_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadRasterImage_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadRasterImage_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadRasterImage_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadRasterImage_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadRasterImage_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadRasterImage_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadRasterImage_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadRasterImage_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadRasterImage_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadRasterImage_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadRasterImage_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadRasterImage_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadRasterImage_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadRasterImage_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadRasterImage_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadRasterImage_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadRasterImage_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadRasterImage_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadRasterImage_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadRasterImage_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadRasterImage_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadRasterImage_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadRasterImage_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadRasterImage_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadRasterImage_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadRasterImage_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadRasterImage_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadRasterImage_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadRasterImage_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadRasterImage_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadRasterImage_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadRasterImage_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadRasterImage_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadRasterImage_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadRasterImage_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadRasterImage_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadRasterImage_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadRasterImage_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadRasterImage_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadRasterImage_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadRasterImage_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadRasterImage_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadRasterImage_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadRasterImage_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadRasterImage_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadRasterImage_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadRasterImage_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadRasterImage_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadRasterImage_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadRasterImage_get_Brightness(This,brightness)	\
    ( (This)->lpVtbl -> get_Brightness(This,brightness) ) 

#define IAcadRasterImage_put_Brightness(This,brightness)	\
    ( (This)->lpVtbl -> put_Brightness(This,brightness) ) 

#define IAcadRasterImage_get_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> get_Contrast(This,contrast) ) 

#define IAcadRasterImage_put_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> put_Contrast(This,contrast) ) 

#define IAcadRasterImage_get_Fade(This,fade)	\
    ( (This)->lpVtbl -> get_Fade(This,fade) ) 

#define IAcadRasterImage_put_Fade(This,fade)	\
    ( (This)->lpVtbl -> put_Fade(This,fade) ) 

#define IAcadRasterImage_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadRasterImage_put_Origin(This,Origin)	\
    ( (This)->lpVtbl -> put_Origin(This,Origin) ) 

#define IAcadRasterImage_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadRasterImage_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadRasterImage_get_ImageWidth(This,width)	\
    ( (This)->lpVtbl -> get_ImageWidth(This,width) ) 

#define IAcadRasterImage_put_ImageWidth(This,width)	\
    ( (This)->lpVtbl -> put_ImageWidth(This,width) ) 

#define IAcadRasterImage_get_ImageHeight(This,height)	\
    ( (This)->lpVtbl -> get_ImageHeight(This,height) ) 

#define IAcadRasterImage_put_ImageHeight(This,height)	\
    ( (This)->lpVtbl -> put_ImageHeight(This,height) ) 

#define IAcadRasterImage_get_Name(This,Name)	\
    ( (This)->lpVtbl -> get_Name(This,Name) ) 

#define IAcadRasterImage_put_Name(This,Name)	\
    ( (This)->lpVtbl -> put_Name(This,Name) ) 

#define IAcadRasterImage_put_ImageFile(This,imageFileName)	\
    ( (This)->lpVtbl -> put_ImageFile(This,imageFileName) ) 

#define IAcadRasterImage_get_ImageFile(This,imageFileName)	\
    ( (This)->lpVtbl -> get_ImageFile(This,imageFileName) ) 

#define IAcadRasterImage_get_ImageVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> get_ImageVisibility(This,fVisible) ) 

#define IAcadRasterImage_put_ImageVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> put_ImageVisibility(This,fVisible) ) 

#define IAcadRasterImage_get_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> get_ClippingEnabled(This,kClip) ) 

#define IAcadRasterImage_put_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> put_ClippingEnabled(This,kClip) ) 

#define IAcadRasterImage_get_Transparency(This,bTransp)	\
    ( (This)->lpVtbl -> get_Transparency(This,bTransp) ) 

#define IAcadRasterImage_put_Transparency(This,bTransp)	\
    ( (This)->lpVtbl -> put_Transparency(This,bTransp) ) 

#define IAcadRasterImage_ClipBoundary(This,boundry)	\
    ( (This)->lpVtbl -> ClipBoundary(This,boundry) ) 

#define IAcadRasterImage_get_Height(This,pixelHeight)	\
    ( (This)->lpVtbl -> get_Height(This,pixelHeight) ) 

#define IAcadRasterImage_get_Width(This,pixelWidth)	\
    ( (This)->lpVtbl -> get_Width(This,pixelWidth) ) 

#define IAcadRasterImage_get_ShowRotation(This,bShow)	\
    ( (This)->lpVtbl -> get_ShowRotation(This,bShow) ) 

#define IAcadRasterImage_put_ShowRotation(This,bShow)	\
    ( (This)->lpVtbl -> put_ShowRotation(This,bShow) ) 

#define IAcadRasterImage_get_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scaleFactor) ) 

#define IAcadRasterImage_put_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scaleFactor) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadRasterImage_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadRasterImage,0x9713E314,0xF9EA,0x44E4,0xB9,0xB7,0x7D,0x6D,0x53,0xB1,0xB4,0xE5);

#ifdef __cplusplus

class DECLSPEC_UUID("9713E314-F9EA-44E4-B9B7-7D6D53B1B4E5")
AcadRasterImage;
#endif

#ifndef __IAcad3DFace_INTERFACE_DEFINED__
#define __IAcad3DFace_INTERFACE_DEFINED__

/* interface IAcad3DFace */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcad3DFace,0xA85DDF97,0x91EA,0x4296,0xAD,0x6B,0xE4,0x4D,0xF6,0xFE,0x9B,0x54);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A85DDF97-91EA-4296-AD6B-E44DF6FE9B54")
    IAcad3DFace : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisibilityEdge1( 
            /* [retval][out] */ VARIANT_BOOL *visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VisibilityEdge1( 
            /* [in] */ VARIANT_BOOL visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisibilityEdge2( 
            /* [retval][out] */ VARIANT_BOOL *visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VisibilityEdge2( 
            /* [in] */ VARIANT_BOOL visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisibilityEdge3( 
            /* [retval][out] */ VARIANT_BOOL *visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VisibilityEdge3( 
            /* [in] */ VARIANT_BOOL visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisibilityEdge4( 
            /* [retval][out] */ VARIANT_BOOL *visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VisibilityEdge4( 
            /* [in] */ VARIANT_BOOL visibility) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetInvisibleEdge( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT_BOOL *bVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetInvisibleEdge( 
            /* [in] */ int Index,
            /* [in] */ VARIANT_BOOL State) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcad3DFaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcad3DFace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcad3DFace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcad3DFace * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcad3DFace * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcad3DFace * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcad3DFace * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcad3DFace * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcad3DFace * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcad3DFace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcad3DFace * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcad3DFace * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcad3DFace * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcad3DFace * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcad3DFace * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcad3DFace * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcad3DFace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcad3DFace * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcad3DFace * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcad3DFace * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcad3DFace * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcad3DFace * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcad3DFace * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcad3DFace * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcad3DFace * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcad3DFace * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcad3DFace * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcad3DFace * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcad3DFace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcad3DFace * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcad3DFace * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcad3DFace * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcad3DFace * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcad3DFace * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcad3DFace * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcad3DFace * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcad3DFace * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcad3DFace * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcad3DFace * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcad3DFace * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT *corners);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT corners);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VisibilityEdge1 )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT_BOOL *visibility);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VisibilityEdge1 )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT_BOOL visibility);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VisibilityEdge2 )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT_BOOL *visibility);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VisibilityEdge2 )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT_BOOL visibility);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VisibilityEdge3 )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT_BOOL *visibility);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VisibilityEdge3 )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT_BOOL visibility);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VisibilityEdge4 )( 
            IAcad3DFace * This,
            /* [retval][out] */ VARIANT_BOOL *visibility);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VisibilityEdge4 )( 
            IAcad3DFace * This,
            /* [in] */ VARIANT_BOOL visibility);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetInvisibleEdge )( 
            IAcad3DFace * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetInvisibleEdge )( 
            IAcad3DFace * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT_BOOL State);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcad3DFace * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcad3DFace * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        END_INTERFACE
    } IAcad3DFaceVtbl;

    interface IAcad3DFace
    {
        CONST_VTBL struct IAcad3DFaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcad3DFace_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcad3DFace_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcad3DFace_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcad3DFace_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcad3DFace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcad3DFace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcad3DFace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcad3DFace_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcad3DFace_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcad3DFace_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcad3DFace_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcad3DFace_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcad3DFace_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcad3DFace_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcad3DFace_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcad3DFace_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcad3DFace_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcad3DFace_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcad3DFace_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcad3DFace_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcad3DFace_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcad3DFace_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcad3DFace_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcad3DFace_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcad3DFace_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcad3DFace_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcad3DFace_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcad3DFace_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcad3DFace_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcad3DFace_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcad3DFace_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcad3DFace_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcad3DFace_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcad3DFace_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcad3DFace_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcad3DFace_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcad3DFace_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcad3DFace_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcad3DFace_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcad3DFace_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcad3DFace_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcad3DFace_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcad3DFace_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcad3DFace_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcad3DFace_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcad3DFace_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcad3DFace_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcad3DFace_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcad3DFace_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcad3DFace_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcad3DFace_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcad3DFace_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcad3DFace_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcad3DFace_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcad3DFace_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcad3DFace_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcad3DFace_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcad3DFace_get_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> get_Coordinates(This,corners) ) 

#define IAcad3DFace_put_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> put_Coordinates(This,corners) ) 

#define IAcad3DFace_get_VisibilityEdge1(This,visibility)	\
    ( (This)->lpVtbl -> get_VisibilityEdge1(This,visibility) ) 

#define IAcad3DFace_put_VisibilityEdge1(This,visibility)	\
    ( (This)->lpVtbl -> put_VisibilityEdge1(This,visibility) ) 

#define IAcad3DFace_get_VisibilityEdge2(This,visibility)	\
    ( (This)->lpVtbl -> get_VisibilityEdge2(This,visibility) ) 

#define IAcad3DFace_put_VisibilityEdge2(This,visibility)	\
    ( (This)->lpVtbl -> put_VisibilityEdge2(This,visibility) ) 

#define IAcad3DFace_get_VisibilityEdge3(This,visibility)	\
    ( (This)->lpVtbl -> get_VisibilityEdge3(This,visibility) ) 

#define IAcad3DFace_put_VisibilityEdge3(This,visibility)	\
    ( (This)->lpVtbl -> put_VisibilityEdge3(This,visibility) ) 

#define IAcad3DFace_get_VisibilityEdge4(This,visibility)	\
    ( (This)->lpVtbl -> get_VisibilityEdge4(This,visibility) ) 

#define IAcad3DFace_put_VisibilityEdge4(This,visibility)	\
    ( (This)->lpVtbl -> put_VisibilityEdge4(This,visibility) ) 

#define IAcad3DFace_GetInvisibleEdge(This,Index,bVisible)	\
    ( (This)->lpVtbl -> GetInvisibleEdge(This,Index,bVisible) ) 

#define IAcad3DFace_SetInvisibleEdge(This,Index,State)	\
    ( (This)->lpVtbl -> SetInvisibleEdge(This,Index,State) ) 

#define IAcad3DFace_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcad3DFace_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcad3DFace_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_Acad3DFace,0x5D80AEC3,0x8C87,0x4208,0x9D,0x24,0x9E,0x11,0xD6,0x15,0x1C,0xF7);

#ifdef __cplusplus

class DECLSPEC_UUID("5D80AEC3-8C87-4208-9D24-9E11D6151CF7")
Acad3DFace;
#endif

#ifndef __IAcad3DPolyline_INTERFACE_DEFINED__
#define __IAcad3DPolyline_INTERFACE_DEFINED__

/* interface IAcad3DPolyline */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcad3DPolyline,0xDF9905A8,0xE36A,0x40DA,0xB8,0xAB,0x44,0x66,0xB1,0x42,0xF2,0x5F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DF9905A8-E36A-40DA-B8AB-4466B142F25F")
    IAcad3DPolyline : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendVertex( 
            /* [in] */ VARIANT Vertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Explode( 
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ Ac3DPolylineType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
            /* [in] */ Ac3DPolylineType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL *fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double *length) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcad3DPolylineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcad3DPolyline * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcad3DPolyline * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcad3DPolyline * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcad3DPolyline * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcad3DPolyline * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcad3DPolyline * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcad3DPolyline * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcad3DPolyline * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcad3DPolyline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcad3DPolyline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcad3DPolyline * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcad3DPolyline * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcad3DPolyline * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcad3DPolyline * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcad3DPolyline * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcad3DPolyline * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcad3DPolyline * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcad3DPolyline * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcad3DPolyline * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcad3DPolyline * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcad3DPolyline * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcad3DPolyline * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcad3DPolyline * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ VARIANT *coordinates);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT coordinates);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendVertex )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT Vertex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcad3DPolyline * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcad3DPolyline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ Ac3DPolylineType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
            IAcad3DPolyline * This,
            /* [in] */ Ac3DPolylineType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Closed )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *fClose);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Closed )( 
            IAcad3DPolyline * This,
            /* [in] */ VARIANT_BOOL fClose);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Length )( 
            IAcad3DPolyline * This,
            /* [retval][out] */ double *length);
        
        END_INTERFACE
    } IAcad3DPolylineVtbl;

    interface IAcad3DPolyline
    {
        CONST_VTBL struct IAcad3DPolylineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcad3DPolyline_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcad3DPolyline_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcad3DPolyline_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcad3DPolyline_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcad3DPolyline_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcad3DPolyline_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcad3DPolyline_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcad3DPolyline_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcad3DPolyline_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcad3DPolyline_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcad3DPolyline_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcad3DPolyline_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcad3DPolyline_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcad3DPolyline_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcad3DPolyline_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcad3DPolyline_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcad3DPolyline_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcad3DPolyline_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcad3DPolyline_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcad3DPolyline_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcad3DPolyline_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcad3DPolyline_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcad3DPolyline_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcad3DPolyline_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcad3DPolyline_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcad3DPolyline_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcad3DPolyline_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcad3DPolyline_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcad3DPolyline_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcad3DPolyline_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcad3DPolyline_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcad3DPolyline_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcad3DPolyline_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcad3DPolyline_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcad3DPolyline_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcad3DPolyline_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcad3DPolyline_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcad3DPolyline_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcad3DPolyline_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcad3DPolyline_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcad3DPolyline_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcad3DPolyline_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcad3DPolyline_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcad3DPolyline_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcad3DPolyline_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcad3DPolyline_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcad3DPolyline_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcad3DPolyline_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcad3DPolyline_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcad3DPolyline_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcad3DPolyline_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcad3DPolyline_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcad3DPolyline_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcad3DPolyline_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcad3DPolyline_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcad3DPolyline_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcad3DPolyline_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcad3DPolyline_get_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coordinates) ) 

#define IAcad3DPolyline_put_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coordinates) ) 

#define IAcad3DPolyline_AppendVertex(This,Vertex)	\
    ( (This)->lpVtbl -> AppendVertex(This,Vertex) ) 

#define IAcad3DPolyline_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcad3DPolyline_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcad3DPolyline_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#define IAcad3DPolyline_get_Type(This,type)	\
    ( (This)->lpVtbl -> get_Type(This,type) ) 

#define IAcad3DPolyline_put_Type(This,type)	\
    ( (This)->lpVtbl -> put_Type(This,type) ) 

#define IAcad3DPolyline_get_Closed(This,fClose)	\
    ( (This)->lpVtbl -> get_Closed(This,fClose) ) 

#define IAcad3DPolyline_put_Closed(This,fClose)	\
    ( (This)->lpVtbl -> put_Closed(This,fClose) ) 

#define IAcad3DPolyline_get_Length(This,length)	\
    ( (This)->lpVtbl -> get_Length(This,length) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcad3DPolyline_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_Acad3DPolyline,0x5DA978E5,0x9271,0x45A7,0x96,0x09,0x65,0xCE,0x83,0x01,0x68,0xF3);

#ifdef __cplusplus

class DECLSPEC_UUID("5DA978E5-9271-45A7-9609-65CE830168F3")
Acad3DPolyline;
#endif

#ifndef __IAcadRegion_INTERFACE_DEFINED__
#define __IAcadRegion_INTERFACE_DEFINED__

/* interface IAcadRegion */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadRegion,0x11FD0EAC,0x54FA,0x4F61,0x91,0xA7,0x8A,0xB2,0xEE,0x90,0x20,0x37);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("11FD0EAC-54FA-4F61-91A7-8AB2EE902037")
    IAcadRegion : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Centroid( 
            /* [retval][out] */ VARIANT *centroid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_MomentOfInertia( 
            /* [retval][out] */ VARIANT *momentInertia) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Perimeter( 
            /* [retval][out] */ double *perimeter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrincipalDirections( 
            /* [retval][out] */ VARIANT *prinDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrincipalMoments( 
            /* [retval][out] */ VARIANT *prinMoments) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProductOfInertia( 
            /* [retval][out] */ double *prodInertia) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadiiOfGyration( 
            /* [retval][out] */ VARIANT *radiiGyration) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Boolean( 
            /* [in] */ AcBooleanType Operation,
            /* [in] */ IAcadRegion *Object) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Explode( 
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadRegionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadRegion * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadRegion * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadRegion * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadRegion * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadRegion * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadRegion * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadRegion * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadRegion * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadRegion * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadRegion * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadRegion * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadRegion * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadRegion * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadRegion * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadRegion * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadRegion * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadRegion * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadRegion * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadRegion * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadRegion * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadRegion * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadRegion * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadRegion * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadRegion * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadRegion * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadRegion * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadRegion * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadRegion * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadRegion * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadRegion * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadRegion * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadRegion * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadRegion * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadRegion * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadRegion * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadRegion * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadRegion * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadRegion * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadRegion * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadRegion * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadRegion * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadRegion * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadRegion * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadRegion * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadRegion * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadRegion * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadRegion * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadRegion * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadRegion * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadRegion * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Centroid )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *centroid);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MomentOfInertia )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *momentInertia);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Perimeter )( 
            IAcadRegion * This,
            /* [retval][out] */ double *perimeter);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrincipalDirections )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *prinDir);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrincipalMoments )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *prinMoments);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductOfInertia )( 
            IAcadRegion * This,
            /* [retval][out] */ double *prodInertia);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RadiiOfGyration )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *radiiGyration);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Boolean )( 
            IAcadRegion * This,
            /* [in] */ AcBooleanType Operation,
            /* [in] */ IAcadRegion *Object);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadRegion * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        END_INTERFACE
    } IAcadRegionVtbl;

    interface IAcadRegion
    {
        CONST_VTBL struct IAcadRegionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadRegion_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadRegion_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadRegion_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadRegion_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadRegion_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadRegion_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadRegion_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadRegion_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadRegion_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadRegion_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadRegion_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadRegion_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadRegion_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadRegion_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadRegion_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadRegion_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadRegion_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadRegion_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadRegion_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadRegion_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadRegion_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadRegion_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadRegion_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadRegion_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadRegion_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadRegion_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadRegion_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadRegion_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadRegion_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadRegion_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadRegion_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadRegion_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadRegion_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadRegion_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadRegion_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadRegion_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadRegion_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadRegion_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadRegion_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadRegion_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadRegion_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadRegion_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadRegion_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadRegion_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadRegion_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadRegion_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadRegion_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadRegion_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadRegion_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadRegion_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadRegion_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadRegion_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadRegion_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadRegion_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadRegion_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadRegion_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadRegion_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadRegion_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadRegion_get_Centroid(This,centroid)	\
    ( (This)->lpVtbl -> get_Centroid(This,centroid) ) 

#define IAcadRegion_get_MomentOfInertia(This,momentInertia)	\
    ( (This)->lpVtbl -> get_MomentOfInertia(This,momentInertia) ) 

#define IAcadRegion_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadRegion_get_Perimeter(This,perimeter)	\
    ( (This)->lpVtbl -> get_Perimeter(This,perimeter) ) 

#define IAcadRegion_get_PrincipalDirections(This,prinDir)	\
    ( (This)->lpVtbl -> get_PrincipalDirections(This,prinDir) ) 

#define IAcadRegion_get_PrincipalMoments(This,prinMoments)	\
    ( (This)->lpVtbl -> get_PrincipalMoments(This,prinMoments) ) 

#define IAcadRegion_get_ProductOfInertia(This,prodInertia)	\
    ( (This)->lpVtbl -> get_ProductOfInertia(This,prodInertia) ) 

#define IAcadRegion_get_RadiiOfGyration(This,radiiGyration)	\
    ( (This)->lpVtbl -> get_RadiiOfGyration(This,radiiGyration) ) 

#define IAcadRegion_Boolean(This,Operation,Object)	\
    ( (This)->lpVtbl -> Boolean(This,Operation,Object) ) 

#define IAcadRegion_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadRegion_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadRegion,0x6676E009,0x9BA1,0x485C,0x98,0xD6,0x8F,0x1F,0xFA,0x59,0xBB,0x4F);

#ifdef __cplusplus

class DECLSPEC_UUID("6676E009-9BA1-485C-98D6-8F1FFA59BB4F")
AcadRegion;
#endif

#ifndef __IAcad3DSolid_INTERFACE_DEFINED__
#define __IAcad3DSolid_INTERFACE_DEFINED__

/* interface IAcad3DSolid */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcad3DSolid,0xE95E1FD4,0x24A7,0x4ABD,0xA8,0xDF,0xBF,0x13,0xF2,0xBE,0xA2,0xCD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E95E1FD4-24A7-4ABD-A8DF-BF13F2BEA2CD")
    IAcad3DSolid : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Centroid( 
            /* [retval][out] */ VARIANT *centroid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_MomentOfInertia( 
            /* [retval][out] */ VARIANT *momentInertia) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrincipalDirections( 
            /* [retval][out] */ VARIANT *prinDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrincipalMoments( 
            /* [retval][out] */ VARIANT *prinMoments) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProductOfInertia( 
            /* [retval][out] */ VARIANT *prodInertia) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadiiOfGyration( 
            /* [retval][out] */ VARIANT *radiiGyration) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Volume( 
            /* [retval][out] */ double *Volume) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Boolean( 
            /* [in] */ AcBooleanType Operation,
            /* [in] */ IAcad3DSolid *SolidObject) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CheckInterference( 
            /* [in] */ IAcad3DSolid *Object,
            /* [in] */ VARIANT_BOOL CreateInterferenceSolid,
            /* [retval][out] */ IAcad3DSolid **pIntSolid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SectionSolid( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [retval][out] */ IAcadRegion **pRegion) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SliceSolid( 
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT_BOOL Negative,
            /* [retval][out] */ IAcad3DSolid **pNegSideSolid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SolidType( 
            /* [retval][out] */ BSTR *solidType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Position( 
            /* [retval][out] */ VARIANT *position) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Position( 
            /* [in] */ VARIANT position) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_History( 
            /* [retval][out] */ VARIANT_BOOL *bHistory) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_History( 
            /* [in] */ VARIANT_BOOL bHasHistory) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowHistory( 
            /* [retval][out] */ VARIANT_BOOL *position) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowHistory( 
            /* [in] */ VARIANT_BOOL position) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcad3DSolidVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcad3DSolid * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcad3DSolid * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcad3DSolid * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcad3DSolid * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcad3DSolid * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcad3DSolid * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcad3DSolid * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcad3DSolid * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcad3DSolid * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcad3DSolid * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcad3DSolid * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcad3DSolid * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcad3DSolid * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcad3DSolid * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcad3DSolid * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcad3DSolid * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcad3DSolid * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcad3DSolid * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcad3DSolid * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcad3DSolid * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcad3DSolid * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcad3DSolid * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcad3DSolid * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcad3DSolid * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcad3DSolid * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcad3DSolid * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcad3DSolid * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcad3DSolid * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcad3DSolid * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcad3DSolid * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcad3DSolid * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcad3DSolid * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Centroid )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *centroid);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MomentOfInertia )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *momentInertia);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrincipalDirections )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *prinDir);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrincipalMoments )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *prinMoments);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductOfInertia )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *prodInertia);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RadiiOfGyration )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *radiiGyration);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Volume )( 
            IAcad3DSolid * This,
            /* [retval][out] */ double *Volume);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Boolean )( 
            IAcad3DSolid * This,
            /* [in] */ AcBooleanType Operation,
            /* [in] */ IAcad3DSolid *SolidObject);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CheckInterference )( 
            IAcad3DSolid * This,
            /* [in] */ IAcad3DSolid *Object,
            /* [in] */ VARIANT_BOOL CreateInterferenceSolid,
            /* [retval][out] */ IAcad3DSolid **pIntSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SectionSolid )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [retval][out] */ IAcadRegion **pRegion);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SliceSolid )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT_BOOL Negative,
            /* [retval][out] */ IAcad3DSolid **pNegSideSolid);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SolidType )( 
            IAcad3DSolid * This,
            /* [retval][out] */ BSTR *solidType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Position )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT *position);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Position )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT position);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_History )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT_BOOL *bHistory);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_History )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT_BOOL bHasHistory);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowHistory )( 
            IAcad3DSolid * This,
            /* [retval][out] */ VARIANT_BOOL *position);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShowHistory )( 
            IAcad3DSolid * This,
            /* [in] */ VARIANT_BOOL position);
        
        END_INTERFACE
    } IAcad3DSolidVtbl;

    interface IAcad3DSolid
    {
        CONST_VTBL struct IAcad3DSolidVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcad3DSolid_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcad3DSolid_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcad3DSolid_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcad3DSolid_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcad3DSolid_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcad3DSolid_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcad3DSolid_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcad3DSolid_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcad3DSolid_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcad3DSolid_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcad3DSolid_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcad3DSolid_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcad3DSolid_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcad3DSolid_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcad3DSolid_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcad3DSolid_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcad3DSolid_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcad3DSolid_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcad3DSolid_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcad3DSolid_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcad3DSolid_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcad3DSolid_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcad3DSolid_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcad3DSolid_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcad3DSolid_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcad3DSolid_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcad3DSolid_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcad3DSolid_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcad3DSolid_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcad3DSolid_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcad3DSolid_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcad3DSolid_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcad3DSolid_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcad3DSolid_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcad3DSolid_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcad3DSolid_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcad3DSolid_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcad3DSolid_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcad3DSolid_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcad3DSolid_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcad3DSolid_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcad3DSolid_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcad3DSolid_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcad3DSolid_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcad3DSolid_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcad3DSolid_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcad3DSolid_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcad3DSolid_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcad3DSolid_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcad3DSolid_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcad3DSolid_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcad3DSolid_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcad3DSolid_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcad3DSolid_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcad3DSolid_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcad3DSolid_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcad3DSolid_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcad3DSolid_get_Centroid(This,centroid)	\
    ( (This)->lpVtbl -> get_Centroid(This,centroid) ) 

#define IAcad3DSolid_get_MomentOfInertia(This,momentInertia)	\
    ( (This)->lpVtbl -> get_MomentOfInertia(This,momentInertia) ) 

#define IAcad3DSolid_get_PrincipalDirections(This,prinDir)	\
    ( (This)->lpVtbl -> get_PrincipalDirections(This,prinDir) ) 

#define IAcad3DSolid_get_PrincipalMoments(This,prinMoments)	\
    ( (This)->lpVtbl -> get_PrincipalMoments(This,prinMoments) ) 

#define IAcad3DSolid_get_ProductOfInertia(This,prodInertia)	\
    ( (This)->lpVtbl -> get_ProductOfInertia(This,prodInertia) ) 

#define IAcad3DSolid_get_RadiiOfGyration(This,radiiGyration)	\
    ( (This)->lpVtbl -> get_RadiiOfGyration(This,radiiGyration) ) 

#define IAcad3DSolid_get_Volume(This,Volume)	\
    ( (This)->lpVtbl -> get_Volume(This,Volume) ) 

#define IAcad3DSolid_Boolean(This,Operation,SolidObject)	\
    ( (This)->lpVtbl -> Boolean(This,Operation,SolidObject) ) 

#define IAcad3DSolid_CheckInterference(This,Object,CreateInterferenceSolid,pIntSolid)	\
    ( (This)->lpVtbl -> CheckInterference(This,Object,CreateInterferenceSolid,pIntSolid) ) 

#define IAcad3DSolid_SectionSolid(This,Point1,Point2,Point3,pRegion)	\
    ( (This)->lpVtbl -> SectionSolid(This,Point1,Point2,Point3,pRegion) ) 

#define IAcad3DSolid_SliceSolid(This,Point1,Point2,Point3,Negative,pNegSideSolid)	\
    ( (This)->lpVtbl -> SliceSolid(This,Point1,Point2,Point3,Negative,pNegSideSolid) ) 

#define IAcad3DSolid_get_SolidType(This,solidType)	\
    ( (This)->lpVtbl -> get_SolidType(This,solidType) ) 

#define IAcad3DSolid_get_Position(This,position)	\
    ( (This)->lpVtbl -> get_Position(This,position) ) 

#define IAcad3DSolid_put_Position(This,position)	\
    ( (This)->lpVtbl -> put_Position(This,position) ) 

#define IAcad3DSolid_get_History(This,bHistory)	\
    ( (This)->lpVtbl -> get_History(This,bHistory) ) 

#define IAcad3DSolid_put_History(This,bHasHistory)	\
    ( (This)->lpVtbl -> put_History(This,bHasHistory) ) 

#define IAcad3DSolid_get_ShowHistory(This,position)	\
    ( (This)->lpVtbl -> get_ShowHistory(This,position) ) 

#define IAcad3DSolid_put_ShowHistory(This,position)	\
    ( (This)->lpVtbl -> put_ShowHistory(This,position) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcad3DSolid_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_Acad3DSolid,0xB9D02C87,0x012B,0x4404,0xB9,0xE5,0x6D,0xD9,0xC9,0xBB,0x8C,0xC9);

#ifdef __cplusplus

class DECLSPEC_UUID("B9D02C87-012B-4404-B9E5-6DD9C9BB8CC9")
Acad3DSolid;
#endif

#ifndef __IAcadArc_INTERFACE_DEFINED__
#define __IAcadArc_INTERFACE_DEFINED__

/* interface IAcadArc */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadArc,0x799D2A2A,0xD907,0x4CC8,0xAA,0xA0,0x26,0x24,0x25,0x88,0x3D,0x71);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("799D2A2A-D907-4CC8-AAA0-262425883D71")
    IAcadArc : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartPoint( 
            /* [retval][out] */ VARIANT *startPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *centerPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT centerPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndPoint( 
            /* [retval][out] */ VARIANT *endPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double *Radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartAngle( 
            /* [retval][out] */ ACAD_ANGLE *Angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartAngle( 
            /* [in] */ ACAD_ANGLE Angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndAngle( 
            /* [retval][out] */ ACAD_ANGLE *Angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndAngle( 
            /* [in] */ ACAD_ANGLE Angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalAngle( 
            /* [retval][out] */ ACAD_ANGLE *totalAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcLength( 
            /* [retval][out] */ ACAD_DISTANCE *arcLength) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadArcVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadArc * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadArc * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadArc * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadArc * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadArc * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadArc * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadArc * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadArc * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadArc * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadArc * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadArc * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadArc * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadArc * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadArc * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadArc * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadArc * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadArc * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadArc * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadArc * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadArc * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadArc * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadArc * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadArc * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadArc * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadArc * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadArc * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadArc * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadArc * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadArc * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadArc * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadArc * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadArc * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadArc * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadArc * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadArc * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadArc * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadArc * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadArc * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadArc * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadArc * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadArc * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadArc * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadArc * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadArc * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadArc * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadArc * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadArc * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadArc * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartPoint )( 
            IAcadArc * This,
            /* [retval][out] */ VARIANT *startPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadArc * This,
            /* [retval][out] */ VARIANT *centerPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadArc * This,
            /* [in] */ VARIANT centerPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndPoint )( 
            IAcadArc * This,
            /* [retval][out] */ VARIANT *endPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Radius )( 
            IAcadArc * This,
            /* [retval][out] */ double *Radius);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Radius )( 
            IAcadArc * This,
            /* [in] */ double Radius);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartAngle )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_ANGLE *Angle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartAngle )( 
            IAcadArc * This,
            /* [in] */ ACAD_ANGLE Angle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndAngle )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_ANGLE *Angle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndAngle )( 
            IAcadArc * This,
            /* [in] */ ACAD_ANGLE Angle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalAngle )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_ANGLE *totalAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArcLength )( 
            IAcadArc * This,
            /* [retval][out] */ ACAD_DISTANCE *arcLength);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadArc * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadArc * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadArc * This,
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadArc * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadArc * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadArc * This,
            /* [in] */ VARIANT normal);
        
        END_INTERFACE
    } IAcadArcVtbl;

    interface IAcadArc
    {
        CONST_VTBL struct IAcadArcVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadArc_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadArc_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadArc_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadArc_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadArc_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadArc_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadArc_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadArc_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadArc_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadArc_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadArc_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadArc_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadArc_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadArc_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadArc_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadArc_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadArc_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadArc_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadArc_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadArc_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadArc_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadArc_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadArc_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadArc_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadArc_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadArc_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadArc_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadArc_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadArc_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadArc_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadArc_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadArc_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadArc_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadArc_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadArc_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadArc_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadArc_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadArc_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadArc_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadArc_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadArc_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadArc_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadArc_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadArc_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadArc_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadArc_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadArc_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadArc_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadArc_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadArc_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadArc_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadArc_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadArc_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadArc_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadArc_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadArc_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadArc_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadArc_get_StartPoint(This,startPoint)	\
    ( (This)->lpVtbl -> get_StartPoint(This,startPoint) ) 

#define IAcadArc_get_Center(This,centerPoint)	\
    ( (This)->lpVtbl -> get_Center(This,centerPoint) ) 

#define IAcadArc_put_Center(This,centerPoint)	\
    ( (This)->lpVtbl -> put_Center(This,centerPoint) ) 

#define IAcadArc_get_EndPoint(This,endPoint)	\
    ( (This)->lpVtbl -> get_EndPoint(This,endPoint) ) 

#define IAcadArc_get_Radius(This,Radius)	\
    ( (This)->lpVtbl -> get_Radius(This,Radius) ) 

#define IAcadArc_put_Radius(This,Radius)	\
    ( (This)->lpVtbl -> put_Radius(This,Radius) ) 

#define IAcadArc_get_StartAngle(This,Angle)	\
    ( (This)->lpVtbl -> get_StartAngle(This,Angle) ) 

#define IAcadArc_put_StartAngle(This,Angle)	\
    ( (This)->lpVtbl -> put_StartAngle(This,Angle) ) 

#define IAcadArc_get_EndAngle(This,Angle)	\
    ( (This)->lpVtbl -> get_EndAngle(This,Angle) ) 

#define IAcadArc_put_EndAngle(This,Angle)	\
    ( (This)->lpVtbl -> put_EndAngle(This,Angle) ) 

#define IAcadArc_get_TotalAngle(This,totalAngle)	\
    ( (This)->lpVtbl -> get_TotalAngle(This,totalAngle) ) 

#define IAcadArc_get_ArcLength(This,arcLength)	\
    ( (This)->lpVtbl -> get_ArcLength(This,arcLength) ) 

#define IAcadArc_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadArc_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadArc_Offset(This,Distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,Distance,pOffsetCurves) ) 

#define IAcadArc_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadArc_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadArc_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadArc_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadArc,0x5E829420,0xD163,0x4B2D,0x9E,0xBF,0xAA,0xC4,0x70,0xB6,0xD7,0x37);

#ifdef __cplusplus

class DECLSPEC_UUID("5E829420-D163-4B2D-9EBF-AAC470B6D737")
AcadArc;
#endif

#ifndef __IAcadAttribute_INTERFACE_DEFINED__
#define __IAcadAttribute_INTERFACE_DEFINED__

/* interface IAcadAttribute */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadAttribute,0x0C3831A4,0xF455,0x49A9,0x8D,0x03,0x62,0xEB,0x0B,0x07,0x47,0x4C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0C3831A4-F455-49A9-8D03-62EB0B07474C")
    IAcadAttribute : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_FieldLength( 
            /* [retval][out] */ long *fieldLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_FieldLength( 
            /* [in] */ long fieldLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TagString( 
            /* [retval][out] */ BSTR *Tag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TagString( 
            /* [in] */ BSTR Tag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PromptString( 
            /* [retval][out] */ BSTR *bstrPrompt) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PromptString( 
            /* [in] */ BSTR bstrPrompt) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Alignment( 
            /* [retval][out] */ AcAlignment *align) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Alignment( 
            /* [in] */ AcAlignment align) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalAlignment( 
            /* [retval][out] */ AcHorizontalAlignment *horizAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalAlignment( 
            /* [in] */ AcHorizontalAlignment horizAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalAlignment( 
            /* [retval][out] */ AcVerticalAlignment *vertiAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalAlignment( 
            /* [in] */ AcVerticalAlignment vertiAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObliqueAngle( 
            /* [retval][out] */ ACAD_ANGLE *obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObliqueAngle( 
            /* [in] */ ACAD_ANGLE obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAlignmentPoint( 
            /* [retval][out] */ VARIANT *alignPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAlignmentPoint( 
            /* [in] */ VARIANT alignPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextGenerationFlag( 
            /* [retval][out] */ long *textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextGenerationFlag( 
            /* [in] */ long textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Mode( 
            /* [retval][out] */ long *mode) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Mode( 
            /* [in] */ long mode) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UpsideDown( 
            /* [retval][out] */ VARIANT_BOOL *bUpsideDown) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UpsideDown( 
            /* [in] */ VARIANT_BOOL bUpsideDown) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Backward( 
            /* [retval][out] */ VARIANT_BOOL *bBackward) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Backward( 
            /* [in] */ VARIANT_BOOL bBackward) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Invisible( 
            /* [retval][out] */ VARIANT_BOOL *bInvisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Invisible( 
            /* [in] */ VARIANT_BOOL bInvisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Constant( 
            /* [retval][out] */ VARIANT_BOOL *bConstant) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Constant( 
            /* [in] */ VARIANT_BOOL bConstant) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Verify( 
            /* [retval][out] */ VARIANT_BOOL *bVerify) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Verify( 
            /* [in] */ VARIANT_BOOL bVerify) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Preset( 
            /* [retval][out] */ VARIANT_BOOL *bPreset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Preset( 
            /* [in] */ VARIANT_BOOL bPreset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LockPosition( 
            /* [retval][out] */ VARIANT_BOOL *bLockPosition) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LockPosition( 
            /* [in] */ VARIANT_BOOL bLockPosition) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextAttribute( 
            /* [retval][out] */ VARIANT_BOOL *bMTextAttribute) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextAttribute( 
            /* [in] */ VARIANT_BOOL bMTextAttribute) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextAttributeContent( 
            /* [retval][out] */ BSTR *content) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextAttributeContent( 
            /* [in] */ BSTR content) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE UpdateMTextAttribute( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextBoundaryWidth( 
            /* [retval][out] */ double *boundaryWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextBoundaryWidth( 
            double boundaryWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextDrawingDirection( 
            /* [retval][out] */ AcDrawingDirection *drawDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextDrawingDirection( 
            /* [in] */ AcDrawingDirection drawDir) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadAttributeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadAttribute * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadAttribute * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadAttribute * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadAttribute * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadAttribute * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadAttribute * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadAttribute * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadAttribute * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadAttribute * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadAttribute * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadAttribute * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadAttribute * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadAttribute * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadAttribute * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadAttribute * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadAttribute * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadAttribute * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadAttribute * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadAttribute * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadAttribute * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadAttribute * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadAttribute * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadAttribute * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadAttribute * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadAttribute * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadAttribute * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadAttribute * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadAttribute * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadAttribute * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadAttribute * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadAttribute * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadAttribute * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadAttribute * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadAttribute * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadAttribute * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadAttribute * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadAttribute * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadAttribute * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FieldLength )( 
            IAcadAttribute * This,
            /* [retval][out] */ long *fieldLen);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FieldLength )( 
            IAcadAttribute * This,
            /* [in] */ long fieldLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TagString )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *Tag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TagString )( 
            IAcadAttribute * This,
            /* [in] */ BSTR Tag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PromptString )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *bstrPrompt);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PromptString )( 
            IAcadAttribute * This,
            /* [in] */ BSTR bstrPrompt);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadAttribute * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadAttribute * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Alignment )( 
            IAcadAttribute * This,
            /* [retval][out] */ AcAlignment *align);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Alignment )( 
            IAcadAttribute * This,
            /* [in] */ AcAlignment align);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalAlignment )( 
            IAcadAttribute * This,
            /* [retval][out] */ AcHorizontalAlignment *horizAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalAlignment )( 
            IAcadAttribute * This,
            /* [in] */ AcHorizontalAlignment horizAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalAlignment )( 
            IAcadAttribute * This,
            /* [retval][out] */ AcVerticalAlignment *vertiAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalAlignment )( 
            IAcadAttribute * This,
            /* [in] */ AcVerticalAlignment vertiAlign);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadAttribute * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadAttribute * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadAttribute * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadAttribute * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadAttribute * This,
            /* [retval][out] */ ACAD_NOUNITS *scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadAttribute * This,
            /* [in] */ ACAD_NOUNITS scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObliqueAngle )( 
            IAcadAttribute * This,
            /* [retval][out] */ ACAD_ANGLE *obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObliqueAngle )( 
            IAcadAttribute * This,
            /* [in] */ ACAD_ANGLE obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAlignmentPoint )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT *alignPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAlignmentPoint )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT alignPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGenerationFlag )( 
            IAcadAttribute * This,
            /* [retval][out] */ long *textGenFlag);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGenerationFlag )( 
            IAcadAttribute * This,
            /* [in] */ long textGenFlag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadAttribute * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadAttribute * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Mode )( 
            IAcadAttribute * This,
            /* [retval][out] */ long *mode);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Mode )( 
            IAcadAttribute * This,
            /* [in] */ long mode);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UpsideDown )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bUpsideDown);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UpsideDown )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bUpsideDown);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Backward )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bBackward);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Backward )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bBackward);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Invisible )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bInvisible);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Invisible )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bInvisible);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Constant )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bConstant);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Constant )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bConstant);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Verify )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bVerify);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Verify )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bVerify);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Preset )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bPreset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Preset )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bPreset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LockPosition )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bLockPosition);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LockPosition )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bLockPosition);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextAttribute )( 
            IAcadAttribute * This,
            /* [retval][out] */ VARIANT_BOOL *bMTextAttribute);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextAttribute )( 
            IAcadAttribute * This,
            /* [in] */ VARIANT_BOOL bMTextAttribute);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextAttributeContent )( 
            IAcadAttribute * This,
            /* [retval][out] */ BSTR *content);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextAttributeContent )( 
            IAcadAttribute * This,
            /* [in] */ BSTR content);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateMTextAttribute )( 
            IAcadAttribute * This);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextBoundaryWidth )( 
            IAcadAttribute * This,
            /* [retval][out] */ double *boundaryWidth);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextBoundaryWidth )( 
            IAcadAttribute * This,
            double boundaryWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextDrawingDirection )( 
            IAcadAttribute * This,
            /* [retval][out] */ AcDrawingDirection *drawDir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextDrawingDirection )( 
            IAcadAttribute * This,
            /* [in] */ AcDrawingDirection drawDir);
        
        END_INTERFACE
    } IAcadAttributeVtbl;

    interface IAcadAttribute
    {
        CONST_VTBL struct IAcadAttributeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadAttribute_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadAttribute_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadAttribute_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadAttribute_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadAttribute_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadAttribute_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadAttribute_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadAttribute_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadAttribute_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadAttribute_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadAttribute_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadAttribute_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadAttribute_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadAttribute_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadAttribute_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadAttribute_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadAttribute_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadAttribute_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadAttribute_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadAttribute_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadAttribute_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadAttribute_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadAttribute_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadAttribute_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadAttribute_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadAttribute_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadAttribute_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadAttribute_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadAttribute_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadAttribute_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadAttribute_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadAttribute_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadAttribute_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadAttribute_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadAttribute_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadAttribute_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadAttribute_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadAttribute_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadAttribute_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadAttribute_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadAttribute_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadAttribute_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadAttribute_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadAttribute_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadAttribute_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadAttribute_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadAttribute_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadAttribute_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadAttribute_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadAttribute_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadAttribute_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadAttribute_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadAttribute_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadAttribute_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadAttribute_get_FieldLength(This,fieldLen)	\
    ( (This)->lpVtbl -> get_FieldLength(This,fieldLen) ) 

#define IAcadAttribute_put_FieldLength(This,fieldLen)	\
    ( (This)->lpVtbl -> put_FieldLength(This,fieldLen) ) 

#define IAcadAttribute_get_TagString(This,Tag)	\
    ( (This)->lpVtbl -> get_TagString(This,Tag) ) 

#define IAcadAttribute_put_TagString(This,Tag)	\
    ( (This)->lpVtbl -> put_TagString(This,Tag) ) 

#define IAcadAttribute_get_PromptString(This,bstrPrompt)	\
    ( (This)->lpVtbl -> get_PromptString(This,bstrPrompt) ) 

#define IAcadAttribute_put_PromptString(This,bstrPrompt)	\
    ( (This)->lpVtbl -> put_PromptString(This,bstrPrompt) ) 

#define IAcadAttribute_get_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextString(This,bstrText) ) 

#define IAcadAttribute_put_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextString(This,bstrText) ) 

#define IAcadAttribute_get_StyleName(This,Name)	\
    ( (This)->lpVtbl -> get_StyleName(This,Name) ) 

#define IAcadAttribute_put_StyleName(This,Name)	\
    ( (This)->lpVtbl -> put_StyleName(This,Name) ) 

#define IAcadAttribute_get_Alignment(This,align)	\
    ( (This)->lpVtbl -> get_Alignment(This,align) ) 

#define IAcadAttribute_put_Alignment(This,align)	\
    ( (This)->lpVtbl -> put_Alignment(This,align) ) 

#define IAcadAttribute_get_HorizontalAlignment(This,horizAlign)	\
    ( (This)->lpVtbl -> get_HorizontalAlignment(This,horizAlign) ) 

#define IAcadAttribute_put_HorizontalAlignment(This,horizAlign)	\
    ( (This)->lpVtbl -> put_HorizontalAlignment(This,horizAlign) ) 

#define IAcadAttribute_get_VerticalAlignment(This,vertiAlign)	\
    ( (This)->lpVtbl -> get_VerticalAlignment(This,vertiAlign) ) 

#define IAcadAttribute_put_VerticalAlignment(This,vertiAlign)	\
    ( (This)->lpVtbl -> put_VerticalAlignment(This,vertiAlign) ) 

#define IAcadAttribute_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadAttribute_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadAttribute_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadAttribute_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadAttribute_get_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scalFactor) ) 

#define IAcadAttribute_put_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scalFactor) ) 

#define IAcadAttribute_get_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> get_ObliqueAngle(This,obliAngle) ) 

#define IAcadAttribute_put_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> put_ObliqueAngle(This,obliAngle) ) 

#define IAcadAttribute_get_TextAlignmentPoint(This,alignPoint)	\
    ( (This)->lpVtbl -> get_TextAlignmentPoint(This,alignPoint) ) 

#define IAcadAttribute_put_TextAlignmentPoint(This,alignPoint)	\
    ( (This)->lpVtbl -> put_TextAlignmentPoint(This,alignPoint) ) 

#define IAcadAttribute_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadAttribute_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadAttribute_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadAttribute_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadAttribute_get_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> get_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadAttribute_put_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> put_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadAttribute_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadAttribute_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadAttribute_get_Mode(This,mode)	\
    ( (This)->lpVtbl -> get_Mode(This,mode) ) 

#define IAcadAttribute_put_Mode(This,mode)	\
    ( (This)->lpVtbl -> put_Mode(This,mode) ) 

#define IAcadAttribute_get_UpsideDown(This,bUpsideDown)	\
    ( (This)->lpVtbl -> get_UpsideDown(This,bUpsideDown) ) 

#define IAcadAttribute_put_UpsideDown(This,bUpsideDown)	\
    ( (This)->lpVtbl -> put_UpsideDown(This,bUpsideDown) ) 

#define IAcadAttribute_get_Backward(This,bBackward)	\
    ( (This)->lpVtbl -> get_Backward(This,bBackward) ) 

#define IAcadAttribute_put_Backward(This,bBackward)	\
    ( (This)->lpVtbl -> put_Backward(This,bBackward) ) 

#define IAcadAttribute_get_Invisible(This,bInvisible)	\
    ( (This)->lpVtbl -> get_Invisible(This,bInvisible) ) 

#define IAcadAttribute_put_Invisible(This,bInvisible)	\
    ( (This)->lpVtbl -> put_Invisible(This,bInvisible) ) 

#define IAcadAttribute_get_Constant(This,bConstant)	\
    ( (This)->lpVtbl -> get_Constant(This,bConstant) ) 

#define IAcadAttribute_put_Constant(This,bConstant)	\
    ( (This)->lpVtbl -> put_Constant(This,bConstant) ) 

#define IAcadAttribute_get_Verify(This,bVerify)	\
    ( (This)->lpVtbl -> get_Verify(This,bVerify) ) 

#define IAcadAttribute_put_Verify(This,bVerify)	\
    ( (This)->lpVtbl -> put_Verify(This,bVerify) ) 

#define IAcadAttribute_get_Preset(This,bPreset)	\
    ( (This)->lpVtbl -> get_Preset(This,bPreset) ) 

#define IAcadAttribute_put_Preset(This,bPreset)	\
    ( (This)->lpVtbl -> put_Preset(This,bPreset) ) 

#define IAcadAttribute_get_LockPosition(This,bLockPosition)	\
    ( (This)->lpVtbl -> get_LockPosition(This,bLockPosition) ) 

#define IAcadAttribute_put_LockPosition(This,bLockPosition)	\
    ( (This)->lpVtbl -> put_LockPosition(This,bLockPosition) ) 

#define IAcadAttribute_get_MTextAttribute(This,bMTextAttribute)	\
    ( (This)->lpVtbl -> get_MTextAttribute(This,bMTextAttribute) ) 

#define IAcadAttribute_put_MTextAttribute(This,bMTextAttribute)	\
    ( (This)->lpVtbl -> put_MTextAttribute(This,bMTextAttribute) ) 

#define IAcadAttribute_get_MTextAttributeContent(This,content)	\
    ( (This)->lpVtbl -> get_MTextAttributeContent(This,content) ) 

#define IAcadAttribute_put_MTextAttributeContent(This,content)	\
    ( (This)->lpVtbl -> put_MTextAttributeContent(This,content) ) 

#define IAcadAttribute_UpdateMTextAttribute(This)	\
    ( (This)->lpVtbl -> UpdateMTextAttribute(This) ) 

#define IAcadAttribute_get_MTextBoundaryWidth(This,boundaryWidth)	\
    ( (This)->lpVtbl -> get_MTextBoundaryWidth(This,boundaryWidth) ) 

#define IAcadAttribute_put_MTextBoundaryWidth(This,boundaryWidth)	\
    ( (This)->lpVtbl -> put_MTextBoundaryWidth(This,boundaryWidth) ) 

#define IAcadAttribute_get_MTextDrawingDirection(This,drawDir)	\
    ( (This)->lpVtbl -> get_MTextDrawingDirection(This,drawDir) ) 

#define IAcadAttribute_put_MTextDrawingDirection(This,drawDir)	\
    ( (This)->lpVtbl -> put_MTextDrawingDirection(This,drawDir) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadAttribute_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadAttribute,0x476B42EA,0xEF37,0x403D,0x9B,0xB2,0xDF,0xB9,0x9E,0x82,0x32,0x8B);

#ifdef __cplusplus

class DECLSPEC_UUID("476B42EA-EF37-403D-9BB2-DFB99E82328B")
AcadAttribute;
#endif

#ifndef __IAcadAttributeReference_INTERFACE_DEFINED__
#define __IAcadAttributeReference_INTERFACE_DEFINED__

/* interface IAcadAttributeReference */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadAttributeReference,0x1E834238,0x18C4,0x4D0A,0xBE,0x02,0xD7,0xAE,0xFF,0x94,0xA6,0x09);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1E834238-18C4-4D0A-BE02-D7AEFF94A609")
    IAcadAttributeReference : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalAlignment( 
            /* [retval][out] */ AcHorizontalAlignment *horizAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalAlignment( 
            /* [in] */ AcHorizontalAlignment horizAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObliqueAngle( 
            /* [retval][out] */ ACAD_ANGLE *obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObliqueAngle( 
            /* [in] */ ACAD_ANGLE obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TagString( 
            /* [retval][out] */ BSTR *bstrTag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TagString( 
            /* [in] */ BSTR bstrTag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAlignmentPoint( 
            /* [retval][out] */ VARIANT *alignPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAlignmentPoint( 
            /* [in] */ VARIANT alignPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextGenerationFlag( 
            /* [retval][out] */ long *textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextGenerationFlag( 
            /* [in] */ long textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalAlignment( 
            /* [retval][out] */ AcVerticalAlignment *vertiAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalAlignment( 
            /* [in] */ AcVerticalAlignment vertiAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FieldLength( 
            /* [retval][out] */ long *fieldLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FieldLength( 
            /* [in] */ long fieldLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Alignment( 
            /* [retval][out] */ AcAlignment *align) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Alignment( 
            /* [in] */ AcAlignment align) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UpsideDown( 
            /* [retval][out] */ VARIANT_BOOL *bUpsideDown) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UpsideDown( 
            /* [in] */ VARIANT_BOOL bUpsideDown) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Backward( 
            /* [retval][out] */ VARIANT_BOOL *bBackward) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Backward( 
            /* [in] */ VARIANT_BOOL bBackward) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Invisible( 
            /* [retval][out] */ VARIANT_BOOL *bInvisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Invisible( 
            /* [in] */ VARIANT_BOOL bInvisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Constant( 
            /* [retval][out] */ VARIANT_BOOL *bConstant) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LockPosition( 
            /* [retval][out] */ VARIANT_BOOL *bLockPosition) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextAttribute( 
            /* [retval][out] */ VARIANT_BOOL *bMTextAttribute) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextAttribute( 
            /* [in] */ VARIANT_BOOL bMTextAttribute) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextAttributeContent( 
            /* [retval][out] */ BSTR *content) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextAttributeContent( 
            /* [in] */ BSTR content) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE UpdateMTextAttribute( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextBoundaryWidth( 
            /* [retval][out] */ double *boundaryWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextBoundaryWidth( 
            double boundaryWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MTextDrawingDirection( 
            /* [retval][out] */ AcDrawingDirection *drawDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MTextDrawingDirection( 
            /* [in] */ AcDrawingDirection drawDir) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadAttributeReferenceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadAttributeReference * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadAttributeReference * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadAttributeReference * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadAttributeReference * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadAttributeReference * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadAttributeReference * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadAttributeReference * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadAttributeReference * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadAttributeReference * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadAttributeReference * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadAttributeReference * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadAttributeReference * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadAttributeReference * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadAttributeReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadAttributeReference * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadAttributeReference * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadAttributeReference * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadAttributeReference * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadAttributeReference * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalAlignment )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ AcHorizontalAlignment *horizAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalAlignment )( 
            IAcadAttributeReference * This,
            /* [in] */ AcHorizontalAlignment horizAlign);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObliqueAngle )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ ACAD_ANGLE *obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObliqueAngle )( 
            IAcadAttributeReference * This,
            /* [in] */ ACAD_ANGLE obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadAttributeReference * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadAttributeReference * This,
            /* [in] */ ACAD_NOUNITS scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TagString )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *bstrTag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TagString )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR bstrTag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAlignmentPoint )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT *alignPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAlignmentPoint )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT alignPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGenerationFlag )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ long *textGenFlag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGenerationFlag )( 
            IAcadAttributeReference * This,
            /* [in] */ long textGenFlag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadAttributeReference * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalAlignment )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ AcVerticalAlignment *vertiAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalAlignment )( 
            IAcadAttributeReference * This,
            /* [in] */ AcVerticalAlignment vertiAlign);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FieldLength )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ long *fieldLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FieldLength )( 
            IAcadAttributeReference * This,
            /* [in] */ long fieldLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Alignment )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ AcAlignment *align);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Alignment )( 
            IAcadAttributeReference * This,
            /* [in] */ AcAlignment align);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UpsideDown )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bUpsideDown);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UpsideDown )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT_BOOL bUpsideDown);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Backward )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bBackward);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Backward )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT_BOOL bBackward);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Invisible )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bInvisible);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Invisible )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT_BOOL bInvisible);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Constant )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bConstant);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LockPosition )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bLockPosition);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextAttribute )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ VARIANT_BOOL *bMTextAttribute);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextAttribute )( 
            IAcadAttributeReference * This,
            /* [in] */ VARIANT_BOOL bMTextAttribute);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextAttributeContent )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ BSTR *content);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextAttributeContent )( 
            IAcadAttributeReference * This,
            /* [in] */ BSTR content);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateMTextAttribute )( 
            IAcadAttributeReference * This);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextBoundaryWidth )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ double *boundaryWidth);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextBoundaryWidth )( 
            IAcadAttributeReference * This,
            double boundaryWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MTextDrawingDirection )( 
            IAcadAttributeReference * This,
            /* [retval][out] */ AcDrawingDirection *drawDir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MTextDrawingDirection )( 
            IAcadAttributeReference * This,
            /* [in] */ AcDrawingDirection drawDir);
        
        END_INTERFACE
    } IAcadAttributeReferenceVtbl;

    interface IAcadAttributeReference
    {
        CONST_VTBL struct IAcadAttributeReferenceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadAttributeReference_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadAttributeReference_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadAttributeReference_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadAttributeReference_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadAttributeReference_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadAttributeReference_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadAttributeReference_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadAttributeReference_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadAttributeReference_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadAttributeReference_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadAttributeReference_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadAttributeReference_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadAttributeReference_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadAttributeReference_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadAttributeReference_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadAttributeReference_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadAttributeReference_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadAttributeReference_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadAttributeReference_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadAttributeReference_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadAttributeReference_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadAttributeReference_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadAttributeReference_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadAttributeReference_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadAttributeReference_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadAttributeReference_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadAttributeReference_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadAttributeReference_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadAttributeReference_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadAttributeReference_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadAttributeReference_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadAttributeReference_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadAttributeReference_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadAttributeReference_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadAttributeReference_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadAttributeReference_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadAttributeReference_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadAttributeReference_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadAttributeReference_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadAttributeReference_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadAttributeReference_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadAttributeReference_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadAttributeReference_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadAttributeReference_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadAttributeReference_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadAttributeReference_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadAttributeReference_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadAttributeReference_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadAttributeReference_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadAttributeReference_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadAttributeReference_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadAttributeReference_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadAttributeReference_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadAttributeReference_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadAttributeReference_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadAttributeReference_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadAttributeReference_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadAttributeReference_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadAttributeReference_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadAttributeReference_get_HorizontalAlignment(This,horizAlign)	\
    ( (This)->lpVtbl -> get_HorizontalAlignment(This,horizAlign) ) 

#define IAcadAttributeReference_put_HorizontalAlignment(This,horizAlign)	\
    ( (This)->lpVtbl -> put_HorizontalAlignment(This,horizAlign) ) 

#define IAcadAttributeReference_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadAttributeReference_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadAttributeReference_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadAttributeReference_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadAttributeReference_get_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> get_ObliqueAngle(This,obliAngle) ) 

#define IAcadAttributeReference_put_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> put_ObliqueAngle(This,obliAngle) ) 

#define IAcadAttributeReference_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadAttributeReference_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadAttributeReference_get_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scalFactor) ) 

#define IAcadAttributeReference_put_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scalFactor) ) 

#define IAcadAttributeReference_get_StyleName(This,Name)	\
    ( (This)->lpVtbl -> get_StyleName(This,Name) ) 

#define IAcadAttributeReference_put_StyleName(This,Name)	\
    ( (This)->lpVtbl -> put_StyleName(This,Name) ) 

#define IAcadAttributeReference_get_TagString(This,bstrTag)	\
    ( (This)->lpVtbl -> get_TagString(This,bstrTag) ) 

#define IAcadAttributeReference_put_TagString(This,bstrTag)	\
    ( (This)->lpVtbl -> put_TagString(This,bstrTag) ) 

#define IAcadAttributeReference_get_TextAlignmentPoint(This,alignPoint)	\
    ( (This)->lpVtbl -> get_TextAlignmentPoint(This,alignPoint) ) 

#define IAcadAttributeReference_put_TextAlignmentPoint(This,alignPoint)	\
    ( (This)->lpVtbl -> put_TextAlignmentPoint(This,alignPoint) ) 

#define IAcadAttributeReference_get_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> get_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadAttributeReference_put_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> put_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadAttributeReference_get_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextString(This,bstrText) ) 

#define IAcadAttributeReference_put_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextString(This,bstrText) ) 

#define IAcadAttributeReference_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadAttributeReference_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadAttributeReference_get_VerticalAlignment(This,vertiAlign)	\
    ( (This)->lpVtbl -> get_VerticalAlignment(This,vertiAlign) ) 

#define IAcadAttributeReference_put_VerticalAlignment(This,vertiAlign)	\
    ( (This)->lpVtbl -> put_VerticalAlignment(This,vertiAlign) ) 

#define IAcadAttributeReference_get_FieldLength(This,fieldLen)	\
    ( (This)->lpVtbl -> get_FieldLength(This,fieldLen) ) 

#define IAcadAttributeReference_put_FieldLength(This,fieldLen)	\
    ( (This)->lpVtbl -> put_FieldLength(This,fieldLen) ) 

#define IAcadAttributeReference_get_Alignment(This,align)	\
    ( (This)->lpVtbl -> get_Alignment(This,align) ) 

#define IAcadAttributeReference_put_Alignment(This,align)	\
    ( (This)->lpVtbl -> put_Alignment(This,align) ) 

#define IAcadAttributeReference_get_UpsideDown(This,bUpsideDown)	\
    ( (This)->lpVtbl -> get_UpsideDown(This,bUpsideDown) ) 

#define IAcadAttributeReference_put_UpsideDown(This,bUpsideDown)	\
    ( (This)->lpVtbl -> put_UpsideDown(This,bUpsideDown) ) 

#define IAcadAttributeReference_get_Backward(This,bBackward)	\
    ( (This)->lpVtbl -> get_Backward(This,bBackward) ) 

#define IAcadAttributeReference_put_Backward(This,bBackward)	\
    ( (This)->lpVtbl -> put_Backward(This,bBackward) ) 

#define IAcadAttributeReference_get_Invisible(This,bInvisible)	\
    ( (This)->lpVtbl -> get_Invisible(This,bInvisible) ) 

#define IAcadAttributeReference_put_Invisible(This,bInvisible)	\
    ( (This)->lpVtbl -> put_Invisible(This,bInvisible) ) 

#define IAcadAttributeReference_get_Constant(This,bConstant)	\
    ( (This)->lpVtbl -> get_Constant(This,bConstant) ) 

#define IAcadAttributeReference_get_LockPosition(This,bLockPosition)	\
    ( (This)->lpVtbl -> get_LockPosition(This,bLockPosition) ) 

#define IAcadAttributeReference_get_MTextAttribute(This,bMTextAttribute)	\
    ( (This)->lpVtbl -> get_MTextAttribute(This,bMTextAttribute) ) 

#define IAcadAttributeReference_put_MTextAttribute(This,bMTextAttribute)	\
    ( (This)->lpVtbl -> put_MTextAttribute(This,bMTextAttribute) ) 

#define IAcadAttributeReference_get_MTextAttributeContent(This,content)	\
    ( (This)->lpVtbl -> get_MTextAttributeContent(This,content) ) 

#define IAcadAttributeReference_put_MTextAttributeContent(This,content)	\
    ( (This)->lpVtbl -> put_MTextAttributeContent(This,content) ) 

#define IAcadAttributeReference_UpdateMTextAttribute(This)	\
    ( (This)->lpVtbl -> UpdateMTextAttribute(This) ) 

#define IAcadAttributeReference_get_MTextBoundaryWidth(This,boundaryWidth)	\
    ( (This)->lpVtbl -> get_MTextBoundaryWidth(This,boundaryWidth) ) 

#define IAcadAttributeReference_put_MTextBoundaryWidth(This,boundaryWidth)	\
    ( (This)->lpVtbl -> put_MTextBoundaryWidth(This,boundaryWidth) ) 

#define IAcadAttributeReference_get_MTextDrawingDirection(This,drawDir)	\
    ( (This)->lpVtbl -> get_MTextDrawingDirection(This,drawDir) ) 

#define IAcadAttributeReference_put_MTextDrawingDirection(This,drawDir)	\
    ( (This)->lpVtbl -> put_MTextDrawingDirection(This,drawDir) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadAttributeReference_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadAttributeReference,0xE1A7F239,0x4B51,0x41A9,0xA3,0xEA,0x6A,0x0B,0x80,0xF7,0x11,0x68);

#ifdef __cplusplus

class DECLSPEC_UUID("E1A7F239-4B51-41A9-A3EA-6A0B80F71168")
AcadAttributeReference;
#endif

#ifndef __IAcadBlockReference_INTERFACE_DEFINED__
#define __IAcadBlockReference_INTERFACE_DEFINED__

/* interface IAcadBlockReference */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadBlockReference,0x6D162051,0x7D3B,0x43E4,0x99,0x55,0x99,0xE7,0x80,0xDD,0x26,0x07);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6D162051-7D3B-43E4-9955-99E780DD2607")
    IAcadBlockReference : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_XScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_XScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_YScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_YScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ZScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ZScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Explode( 
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAttributes( 
            /* [retval][out] */ VARIANT *pAttrObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetConstantAttributes( 
            /* [retval][out] */ VARIANT *pAttrObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasAttributes( 
            /* [retval][out] */ VARIANT_BOOL *bHas) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EffectiveName( 
            /* [retval][out] */ BSTR *effectiveName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsDynamicBlock( 
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDynamicBlockProperties( 
            /* [retval][out] */ VARIANT *dynamicPropertyArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ResetBlock( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ConvertToAnonymousBlock( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ConvertToStaticBlock( 
            /* [in] */ BSTR newBlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_XEffectiveScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_XEffectiveScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_YEffectiveScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_YEffectiveScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ZEffectiveScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ZEffectiveScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsUnits( 
            /* [retval][out] */ BSTR *units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadBlockReferenceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadBlockReference * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadBlockReference * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadBlockReference * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadBlockReference * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadBlockReference * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadBlockReference * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadBlockReference * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadBlockReference * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadBlockReference * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadBlockReference * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadBlockReference * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadBlockReference * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadBlockReference * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadBlockReference * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadBlockReference * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadBlockReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadBlockReference * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadBlockReference * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadBlockReference * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadBlockReference * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadBlockReference * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XScaleFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XScaleFactor )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YScaleFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YScaleFactor )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ZScaleFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ZScaleFactor )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAttributes )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT *pAttrObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetConstantAttributes )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT *pAttrObjs);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasAttributes )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT_BOOL *bHas);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EffectiveName )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *effectiveName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsDynamicBlock )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDynamicBlockProperties )( 
            IAcadBlockReference * This,
            /* [retval][out] */ VARIANT *dynamicPropertyArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ResetBlock )( 
            IAcadBlockReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertToAnonymousBlock )( 
            IAcadBlockReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertToStaticBlock )( 
            IAcadBlockReference * This,
            /* [in] */ BSTR newBlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XEffectiveScaleFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XEffectiveScaleFactor )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YEffectiveScaleFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YEffectiveScaleFactor )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ZEffectiveScaleFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ZEffectiveScaleFactor )( 
            IAcadBlockReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsUnits )( 
            IAcadBlockReference * This,
            /* [retval][out] */ BSTR *units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsUnitsFactor )( 
            IAcadBlockReference * This,
            /* [retval][out] */ double *factor);
        
        END_INTERFACE
    } IAcadBlockReferenceVtbl;

    interface IAcadBlockReference
    {
        CONST_VTBL struct IAcadBlockReferenceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadBlockReference_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadBlockReference_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadBlockReference_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadBlockReference_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadBlockReference_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadBlockReference_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadBlockReference_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadBlockReference_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadBlockReference_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadBlockReference_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadBlockReference_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadBlockReference_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadBlockReference_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadBlockReference_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadBlockReference_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadBlockReference_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadBlockReference_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadBlockReference_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadBlockReference_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadBlockReference_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadBlockReference_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadBlockReference_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadBlockReference_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadBlockReference_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadBlockReference_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadBlockReference_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadBlockReference_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadBlockReference_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadBlockReference_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadBlockReference_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadBlockReference_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadBlockReference_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadBlockReference_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadBlockReference_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadBlockReference_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadBlockReference_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadBlockReference_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadBlockReference_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadBlockReference_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadBlockReference_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadBlockReference_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadBlockReference_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadBlockReference_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadBlockReference_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadBlockReference_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadBlockReference_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadBlockReference_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadBlockReference_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadBlockReference_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadBlockReference_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadBlockReference_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadBlockReference_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadBlockReference_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadBlockReference_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadBlockReference_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadBlockReference_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadBlockReference_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadBlockReference_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadBlockReference_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadBlockReference_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadBlockReference_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadBlockReference_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadBlockReference_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadBlockReference_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadBlockReference_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadBlockReference_get_XScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_XScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_put_XScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_XScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_get_YScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_YScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_put_YScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_YScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_get_ZScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ZScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_put_ZScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ZScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcadBlockReference_GetAttributes(This,pAttrObjs)	\
    ( (This)->lpVtbl -> GetAttributes(This,pAttrObjs) ) 

#define IAcadBlockReference_GetConstantAttributes(This,pAttrObjs)	\
    ( (This)->lpVtbl -> GetConstantAttributes(This,pAttrObjs) ) 

#define IAcadBlockReference_get_HasAttributes(This,bHas)	\
    ( (This)->lpVtbl -> get_HasAttributes(This,bHas) ) 

#define IAcadBlockReference_get_EffectiveName(This,effectiveName)	\
    ( (This)->lpVtbl -> get_EffectiveName(This,effectiveName) ) 

#define IAcadBlockReference_get_IsDynamicBlock(This,pDynamicBlock)	\
    ( (This)->lpVtbl -> get_IsDynamicBlock(This,pDynamicBlock) ) 

#define IAcadBlockReference_GetDynamicBlockProperties(This,dynamicPropertyArray)	\
    ( (This)->lpVtbl -> GetDynamicBlockProperties(This,dynamicPropertyArray) ) 

#define IAcadBlockReference_ResetBlock(This)	\
    ( (This)->lpVtbl -> ResetBlock(This) ) 

#define IAcadBlockReference_ConvertToAnonymousBlock(This)	\
    ( (This)->lpVtbl -> ConvertToAnonymousBlock(This) ) 

#define IAcadBlockReference_ConvertToStaticBlock(This,newBlockName)	\
    ( (This)->lpVtbl -> ConvertToStaticBlock(This,newBlockName) ) 

#define IAcadBlockReference_get_XEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_XEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_put_XEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_XEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_get_YEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_YEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_put_YEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_YEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_get_ZEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ZEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_put_ZEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ZEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadBlockReference_get_InsUnits(This,units)	\
    ( (This)->lpVtbl -> get_InsUnits(This,units) ) 

#define IAcadBlockReference_get_InsUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_InsUnitsFactor(This,factor) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadBlockReference_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadBlockReference,0xE8E5BF1D,0x2DB6,0x473A,0x8E,0x1A,0x4A,0xF8,0xCC,0x07,0x30,0x4D);

#ifdef __cplusplus

class DECLSPEC_UUID("E8E5BF1D-2DB6-473A-8E1A-4AF8CC07304D")
AcadBlockReference;
#endif

#ifndef __IAcadCircle_INTERFACE_DEFINED__
#define __IAcadCircle_INTERFACE_DEFINED__

/* interface IAcadCircle */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadCircle,0x4E50E531,0x0B12,0x46E4,0xA2,0x26,0x57,0x96,0x6D,0xB5,0xD0,0x05);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4E50E531-0B12-46E4-A226-57966DB5D005")
    IAcadCircle : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *centerPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT centerPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double *radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Diameter( 
            /* [retval][out] */ double *diameter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Diameter( 
            /* [in] */ double diameter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Circumference( 
            /* [retval][out] */ double *circumference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Circumference( 
            /* [in] */ double circumference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Area( 
            /* [in] */ double area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadCircleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadCircle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadCircle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadCircle * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadCircle * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadCircle * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadCircle * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadCircle * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadCircle * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadCircle * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadCircle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadCircle * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadCircle * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadCircle * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadCircle * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadCircle * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadCircle * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadCircle * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadCircle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadCircle * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadCircle * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadCircle * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadCircle * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadCircle * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadCircle * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadCircle * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadCircle * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadCircle * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadCircle * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadCircle * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadCircle * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadCircle * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadCircle * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadCircle * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadCircle * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadCircle * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadCircle * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadCircle * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadCircle * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadCircle * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadCircle * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadCircle * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadCircle * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadCircle * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadCircle * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadCircle * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadCircle * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadCircle * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadCircle * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadCircle * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadCircle * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadCircle * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadCircle * This,
            /* [retval][out] */ VARIANT *centerPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadCircle * This,
            /* [in] */ VARIANT centerPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Radius )( 
            IAcadCircle * This,
            /* [retval][out] */ double *radius);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Radius )( 
            IAcadCircle * This,
            /* [in] */ double radius);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Diameter )( 
            IAcadCircle * This,
            /* [retval][out] */ double *diameter);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Diameter )( 
            IAcadCircle * This,
            /* [in] */ double diameter);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Circumference )( 
            IAcadCircle * This,
            /* [retval][out] */ double *circumference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Circumference )( 
            IAcadCircle * This,
            /* [in] */ double circumference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadCircle * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Area )( 
            IAcadCircle * This,
            /* [in] */ double area);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadCircle * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadCircle * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadCircle * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadCircle * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadCircle * This,
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        END_INTERFACE
    } IAcadCircleVtbl;

    interface IAcadCircle
    {
        CONST_VTBL struct IAcadCircleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadCircle_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadCircle_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadCircle_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadCircle_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadCircle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadCircle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadCircle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadCircle_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadCircle_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadCircle_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadCircle_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadCircle_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadCircle_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadCircle_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadCircle_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadCircle_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadCircle_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadCircle_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadCircle_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadCircle_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadCircle_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadCircle_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadCircle_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadCircle_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadCircle_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadCircle_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadCircle_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadCircle_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadCircle_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadCircle_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadCircle_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadCircle_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadCircle_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadCircle_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadCircle_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadCircle_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadCircle_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadCircle_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadCircle_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadCircle_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadCircle_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadCircle_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadCircle_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadCircle_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadCircle_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadCircle_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadCircle_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadCircle_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadCircle_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadCircle_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadCircle_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadCircle_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadCircle_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadCircle_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadCircle_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadCircle_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadCircle_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadCircle_get_Center(This,centerPoint)	\
    ( (This)->lpVtbl -> get_Center(This,centerPoint) ) 

#define IAcadCircle_put_Center(This,centerPoint)	\
    ( (This)->lpVtbl -> put_Center(This,centerPoint) ) 

#define IAcadCircle_get_Radius(This,radius)	\
    ( (This)->lpVtbl -> get_Radius(This,radius) ) 

#define IAcadCircle_put_Radius(This,radius)	\
    ( (This)->lpVtbl -> put_Radius(This,radius) ) 

#define IAcadCircle_get_Diameter(This,diameter)	\
    ( (This)->lpVtbl -> get_Diameter(This,diameter) ) 

#define IAcadCircle_put_Diameter(This,diameter)	\
    ( (This)->lpVtbl -> put_Diameter(This,diameter) ) 

#define IAcadCircle_get_Circumference(This,circumference)	\
    ( (This)->lpVtbl -> get_Circumference(This,circumference) ) 

#define IAcadCircle_put_Circumference(This,circumference)	\
    ( (This)->lpVtbl -> put_Circumference(This,circumference) ) 

#define IAcadCircle_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadCircle_put_Area(This,area)	\
    ( (This)->lpVtbl -> put_Area(This,area) ) 

#define IAcadCircle_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadCircle_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadCircle_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadCircle_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadCircle_Offset(This,Distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,Distance,pOffsetCurves) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadCircle_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadCircle,0x8229FCDA,0x0225,0x4EF2,0x96,0x0E,0xA9,0x3B,0xCF,0x52,0x1A,0x2B);

#ifdef __cplusplus

class DECLSPEC_UUID("8229FCDA-0225-4EF2-960E-A93BCF521A2B")
AcadCircle;
#endif

#ifndef __IAcadEllipse_INTERFACE_DEFINED__
#define __IAcadEllipse_INTERFACE_DEFINED__

/* interface IAcadEllipse */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadEllipse,0x8485202E,0x57E3,0x44B1,0x96,0x15,0x2A,0xB2,0x24,0xD3,0x95,0xB8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8485202E-57E3-44B1-9615-2AB224D395B8")
    IAcadEllipse : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartPoint( 
            /* [retval][out] */ VARIANT *startPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *center) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT center) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndPoint( 
            /* [retval][out] */ VARIANT *endPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MajorRadius( 
            /* [retval][out] */ double *majorRadius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MajorRadius( 
            /* [in] */ double majorRadius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinorRadius( 
            /* [retval][out] */ double *minorRadius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MinorRadius( 
            /* [in] */ double minorRadius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadiusRatio( 
            /* [retval][out] */ double *radiusRatio) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RadiusRatio( 
            /* [in] */ double radiusRatio) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartAngle( 
            /* [retval][out] */ ACAD_ANGLE *startAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartAngle( 
            /* [in] */ ACAD_ANGLE startAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndAngle( 
            /* [retval][out] */ ACAD_ANGLE *endAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndAngle( 
            /* [in] */ ACAD_ANGLE endAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartParameter( 
            /* [retval][out] */ double *startParameter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartParameter( 
            /* [in] */ double startParameter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndParameter( 
            /* [retval][out] */ double *endParameter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndParameter( 
            /* [in] */ double endParameter) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MajorAxis( 
            /* [retval][out] */ VARIANT *majorAxis) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MajorAxis( 
            /* [in] */ VARIANT majorAxis) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinorAxis( 
            /* [retval][out] */ VARIANT *minorAxis) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadEllipseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadEllipse * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadEllipse * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadEllipse * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadEllipse * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadEllipse * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadEllipse * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadEllipse * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadEllipse * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadEllipse * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadEllipse * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadEllipse * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadEllipse * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadEllipse * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadEllipse * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadEllipse * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadEllipse * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadEllipse * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadEllipse * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadEllipse * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadEllipse * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadEllipse * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadEllipse * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadEllipse * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadEllipse * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadEllipse * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadEllipse * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadEllipse * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadEllipse * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadEllipse * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadEllipse * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadEllipse * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadEllipse * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadEllipse * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadEllipse * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadEllipse * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadEllipse * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadEllipse * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadEllipse * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadEllipse * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartPoint )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT *startPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT *center);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT center);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndPoint )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT *endPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MajorRadius )( 
            IAcadEllipse * This,
            /* [retval][out] */ double *majorRadius);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MajorRadius )( 
            IAcadEllipse * This,
            /* [in] */ double majorRadius);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinorRadius )( 
            IAcadEllipse * This,
            /* [retval][out] */ double *minorRadius);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MinorRadius )( 
            IAcadEllipse * This,
            /* [in] */ double minorRadius);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RadiusRatio )( 
            IAcadEllipse * This,
            /* [retval][out] */ double *radiusRatio);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RadiusRatio )( 
            IAcadEllipse * This,
            /* [in] */ double radiusRatio);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartAngle )( 
            IAcadEllipse * This,
            /* [retval][out] */ ACAD_ANGLE *startAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartAngle )( 
            IAcadEllipse * This,
            /* [in] */ ACAD_ANGLE startAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndAngle )( 
            IAcadEllipse * This,
            /* [retval][out] */ ACAD_ANGLE *endAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndAngle )( 
            IAcadEllipse * This,
            /* [in] */ ACAD_ANGLE endAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartParameter )( 
            IAcadEllipse * This,
            /* [retval][out] */ double *startParameter);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartParameter )( 
            IAcadEllipse * This,
            /* [in] */ double startParameter);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndParameter )( 
            IAcadEllipse * This,
            /* [retval][out] */ double *endParameter);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndParameter )( 
            IAcadEllipse * This,
            /* [in] */ double endParameter);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MajorAxis )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT *majorAxis);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MajorAxis )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT majorAxis);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinorAxis )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT *minorAxis);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadEllipse * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadEllipse * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadEllipse * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadEllipse * This,
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        END_INTERFACE
    } IAcadEllipseVtbl;

    interface IAcadEllipse
    {
        CONST_VTBL struct IAcadEllipseVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadEllipse_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadEllipse_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadEllipse_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadEllipse_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadEllipse_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadEllipse_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadEllipse_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadEllipse_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadEllipse_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadEllipse_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadEllipse_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadEllipse_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadEllipse_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadEllipse_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadEllipse_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadEllipse_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadEllipse_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadEllipse_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadEllipse_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadEllipse_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadEllipse_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadEllipse_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadEllipse_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadEllipse_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadEllipse_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadEllipse_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadEllipse_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadEllipse_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadEllipse_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadEllipse_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadEllipse_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadEllipse_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadEllipse_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadEllipse_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadEllipse_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadEllipse_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadEllipse_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadEllipse_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadEllipse_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadEllipse_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadEllipse_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadEllipse_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadEllipse_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadEllipse_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadEllipse_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadEllipse_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadEllipse_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadEllipse_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadEllipse_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadEllipse_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadEllipse_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadEllipse_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadEllipse_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadEllipse_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadEllipse_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadEllipse_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadEllipse_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadEllipse_get_StartPoint(This,startPoint)	\
    ( (This)->lpVtbl -> get_StartPoint(This,startPoint) ) 

#define IAcadEllipse_get_Center(This,center)	\
    ( (This)->lpVtbl -> get_Center(This,center) ) 

#define IAcadEllipse_put_Center(This,center)	\
    ( (This)->lpVtbl -> put_Center(This,center) ) 

#define IAcadEllipse_get_EndPoint(This,endPoint)	\
    ( (This)->lpVtbl -> get_EndPoint(This,endPoint) ) 

#define IAcadEllipse_get_MajorRadius(This,majorRadius)	\
    ( (This)->lpVtbl -> get_MajorRadius(This,majorRadius) ) 

#define IAcadEllipse_put_MajorRadius(This,majorRadius)	\
    ( (This)->lpVtbl -> put_MajorRadius(This,majorRadius) ) 

#define IAcadEllipse_get_MinorRadius(This,minorRadius)	\
    ( (This)->lpVtbl -> get_MinorRadius(This,minorRadius) ) 

#define IAcadEllipse_put_MinorRadius(This,minorRadius)	\
    ( (This)->lpVtbl -> put_MinorRadius(This,minorRadius) ) 

#define IAcadEllipse_get_RadiusRatio(This,radiusRatio)	\
    ( (This)->lpVtbl -> get_RadiusRatio(This,radiusRatio) ) 

#define IAcadEllipse_put_RadiusRatio(This,radiusRatio)	\
    ( (This)->lpVtbl -> put_RadiusRatio(This,radiusRatio) ) 

#define IAcadEllipse_get_StartAngle(This,startAngle)	\
    ( (This)->lpVtbl -> get_StartAngle(This,startAngle) ) 

#define IAcadEllipse_put_StartAngle(This,startAngle)	\
    ( (This)->lpVtbl -> put_StartAngle(This,startAngle) ) 

#define IAcadEllipse_get_EndAngle(This,endAngle)	\
    ( (This)->lpVtbl -> get_EndAngle(This,endAngle) ) 

#define IAcadEllipse_put_EndAngle(This,endAngle)	\
    ( (This)->lpVtbl -> put_EndAngle(This,endAngle) ) 

#define IAcadEllipse_get_StartParameter(This,startParameter)	\
    ( (This)->lpVtbl -> get_StartParameter(This,startParameter) ) 

#define IAcadEllipse_put_StartParameter(This,startParameter)	\
    ( (This)->lpVtbl -> put_StartParameter(This,startParameter) ) 

#define IAcadEllipse_get_EndParameter(This,endParameter)	\
    ( (This)->lpVtbl -> get_EndParameter(This,endParameter) ) 

#define IAcadEllipse_put_EndParameter(This,endParameter)	\
    ( (This)->lpVtbl -> put_EndParameter(This,endParameter) ) 

#define IAcadEllipse_get_MajorAxis(This,majorAxis)	\
    ( (This)->lpVtbl -> get_MajorAxis(This,majorAxis) ) 

#define IAcadEllipse_put_MajorAxis(This,majorAxis)	\
    ( (This)->lpVtbl -> put_MajorAxis(This,majorAxis) ) 

#define IAcadEllipse_get_MinorAxis(This,minorAxis)	\
    ( (This)->lpVtbl -> get_MinorAxis(This,minorAxis) ) 

#define IAcadEllipse_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadEllipse_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadEllipse_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadEllipse_Offset(This,distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,distance,pOffsetCurves) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadEllipse_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadEllipse,0x1A0F769C,0x84D7,0x4AD6,0x87,0xE7,0xBA,0x15,0x0B,0x81,0x2A,0x75);

#ifdef __cplusplus

class DECLSPEC_UUID("1A0F769C-84D7-4AD6-87E7-BA150B812A75")
AcadEllipse;
#endif

#ifndef __IAcadHatch_INTERFACE_DEFINED__
#define __IAcadHatch_INTERFACE_DEFINED__

/* interface IAcadHatch */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadHatch,0x0CB3D5D2,0xCBB4,0x4A3E,0xB5,0x72,0x80,0x81,0x54,0xFC,0x9B,0xAE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0CB3D5D2-CBB4-4A3E-B572-808154FC9BAE")
    IAcadHatch : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfLoops( 
            /* [retval][out] */ long *numLoops) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PatternType( 
            /* [retval][out] */ AcPatternType *PatternType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PatternName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PatternAngle( 
            /* [retval][out] */ ACAD_ANGLE *patternAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PatternAngle( 
            /* [in] */ ACAD_ANGLE patternAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PatternScale( 
            /* [retval][out] */ ACAD_NOUNITS *patternScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PatternScale( 
            /* [in] */ ACAD_NOUNITS patternScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PatternSpace( 
            /* [retval][out] */ double *PatternSpace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PatternSpace( 
            /* [in] */ double PatternSpace) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ISOPenWidth( 
            /* [retval][out] */ AcISOPenWidth *penWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ISOPenWidth( 
            /* [in] */ AcISOPenWidth penWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PatternDouble( 
            /* [retval][out] */ VARIANT_BOOL *bDouble) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PatternDouble( 
            /* [in] */ VARIANT_BOOL bDouble) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Elevation( 
            /* [retval][out] */ double *elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Elevation( 
            /* [in] */ double elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AssociativeHatch( 
            /* [retval][out] */ VARIANT_BOOL *fAssoc) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AssociativeHatch( 
            /* [in] */ VARIANT_BOOL fAssoc) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HatchStyle( 
            /* [retval][out] */ AcHatchStyle *hatchStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HatchStyle( 
            /* [in] */ AcHatchStyle hatchStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetPattern( 
            /* [in] */ int PatternType,
            /* [in] */ BSTR PatternName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendOuterLoop( 
            /* [in] */ VARIANT ObjectArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendInnerLoop( 
            /* [in] */ VARIANT ObjectArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE InsertLoopAt( 
            /* [in] */ int Index,
            /* [in] */ AcLoopType LoopType,
            /* [in] */ VARIANT ObjectArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetLoopAt( 
            /* [in] */ int Index,
            /* [out] */ VARIANT *ObjectArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Evaluate( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientColor1( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientColor1( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientColor2( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientColor2( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientAngle( 
            /* [retval][out] */ ACAD_ANGLE *gradientAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientAngle( 
            /* [in] */ ACAD_ANGLE gradientAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientCentered( 
            /* [retval][out] */ VARIANT_BOOL *fCentered) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientCentered( 
            /* [in] */ VARIANT_BOOL fCentered) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_HatchObjectType( 
            /* [retval][out] */ AcHatchObjectType *hatchType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_HatchObjectType( 
            /* [in] */ AcHatchObjectType hatchType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Origin( 
            /* [retval][out] */ VARIANT *origin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Origin( 
            /* [in] */ VARIANT origin) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadHatchVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadHatch * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadHatch * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadHatch * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadHatch * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadHatch * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadHatch * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadHatch * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadHatch * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadHatch * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadHatch * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadHatch * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadHatch * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadHatch * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadHatch * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadHatch * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadHatch * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadHatch * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadHatch * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadHatch * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadHatch * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadHatch * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadHatch * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadHatch * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadHatch * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadHatch * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadHatch * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadHatch * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadHatch * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadHatch * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadHatch * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadHatch * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadHatch * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadHatch * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadHatch * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadHatch * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadHatch * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadHatch * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadHatch * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadHatch * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadHatch * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadHatch * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadHatch * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadHatch * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadHatch * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadHatch * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadHatch * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadHatch * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadHatch * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadHatch * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfLoops )( 
            IAcadHatch * This,
            /* [retval][out] */ long *numLoops);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PatternType )( 
            IAcadHatch * This,
            /* [retval][out] */ AcPatternType *PatternType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PatternName )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PatternAngle )( 
            IAcadHatch * This,
            /* [retval][out] */ ACAD_ANGLE *patternAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PatternAngle )( 
            IAcadHatch * This,
            /* [in] */ ACAD_ANGLE patternAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PatternScale )( 
            IAcadHatch * This,
            /* [retval][out] */ ACAD_NOUNITS *patternScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PatternScale )( 
            IAcadHatch * This,
            /* [in] */ ACAD_NOUNITS patternScale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PatternSpace )( 
            IAcadHatch * This,
            /* [retval][out] */ double *PatternSpace);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PatternSpace )( 
            IAcadHatch * This,
            /* [in] */ double PatternSpace);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ISOPenWidth )( 
            IAcadHatch * This,
            /* [retval][out] */ AcISOPenWidth *penWidth);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ISOPenWidth )( 
            IAcadHatch * This,
            /* [in] */ AcISOPenWidth penWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PatternDouble )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT_BOOL *bDouble);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PatternDouble )( 
            IAcadHatch * This,
            /* [in] */ VARIANT_BOOL bDouble);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Elevation )( 
            IAcadHatch * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Elevation )( 
            IAcadHatch * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AssociativeHatch )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT_BOOL *fAssoc);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AssociativeHatch )( 
            IAcadHatch * This,
            /* [in] */ VARIANT_BOOL fAssoc);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HatchStyle )( 
            IAcadHatch * This,
            /* [retval][out] */ AcHatchStyle *hatchStyle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HatchStyle )( 
            IAcadHatch * This,
            /* [in] */ AcHatchStyle hatchStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetPattern )( 
            IAcadHatch * This,
            /* [in] */ int PatternType,
            /* [in] */ BSTR PatternName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendOuterLoop )( 
            IAcadHatch * This,
            /* [in] */ VARIANT ObjectArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendInnerLoop )( 
            IAcadHatch * This,
            /* [in] */ VARIANT ObjectArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertLoopAt )( 
            IAcadHatch * This,
            /* [in] */ int Index,
            /* [in] */ AcLoopType LoopType,
            /* [in] */ VARIANT ObjectArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLoopAt )( 
            IAcadHatch * This,
            /* [in] */ int Index,
            /* [out] */ VARIANT *ObjectArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Evaluate )( 
            IAcadHatch * This);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GradientColor1 )( 
            IAcadHatch * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GradientColor1 )( 
            IAcadHatch * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GradientColor2 )( 
            IAcadHatch * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GradientColor2 )( 
            IAcadHatch * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GradientAngle )( 
            IAcadHatch * This,
            /* [retval][out] */ ACAD_ANGLE *gradientAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GradientAngle )( 
            IAcadHatch * This,
            /* [in] */ ACAD_ANGLE gradientAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GradientCentered )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT_BOOL *fCentered);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GradientCentered )( 
            IAcadHatch * This,
            /* [in] */ VARIANT_BOOL fCentered);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GradientName )( 
            IAcadHatch * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GradientName )( 
            IAcadHatch * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HatchObjectType )( 
            IAcadHatch * This,
            /* [retval][out] */ AcHatchObjectType *hatchType);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HatchObjectType )( 
            IAcadHatch * This,
            /* [in] */ AcHatchObjectType hatchType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadHatch * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadHatch * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadHatch * This,
            /* [in] */ VARIANT origin);
        
        END_INTERFACE
    } IAcadHatchVtbl;

    interface IAcadHatch
    {
        CONST_VTBL struct IAcadHatchVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadHatch_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadHatch_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadHatch_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadHatch_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadHatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadHatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadHatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadHatch_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadHatch_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadHatch_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadHatch_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadHatch_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadHatch_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadHatch_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadHatch_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadHatch_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadHatch_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadHatch_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadHatch_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadHatch_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadHatch_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadHatch_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadHatch_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadHatch_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadHatch_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadHatch_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadHatch_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadHatch_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadHatch_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadHatch_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadHatch_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadHatch_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadHatch_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadHatch_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadHatch_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadHatch_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadHatch_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadHatch_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadHatch_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadHatch_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadHatch_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadHatch_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadHatch_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadHatch_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadHatch_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadHatch_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadHatch_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadHatch_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadHatch_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadHatch_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadHatch_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadHatch_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadHatch_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadHatch_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadHatch_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadHatch_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadHatch_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadHatch_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadHatch_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadHatch_get_NumberOfLoops(This,numLoops)	\
    ( (This)->lpVtbl -> get_NumberOfLoops(This,numLoops) ) 

#define IAcadHatch_get_PatternType(This,PatternType)	\
    ( (This)->lpVtbl -> get_PatternType(This,PatternType) ) 

#define IAcadHatch_get_PatternName(This,bstrName)	\
    ( (This)->lpVtbl -> get_PatternName(This,bstrName) ) 

#define IAcadHatch_get_PatternAngle(This,patternAngle)	\
    ( (This)->lpVtbl -> get_PatternAngle(This,patternAngle) ) 

#define IAcadHatch_put_PatternAngle(This,patternAngle)	\
    ( (This)->lpVtbl -> put_PatternAngle(This,patternAngle) ) 

#define IAcadHatch_get_PatternScale(This,patternScale)	\
    ( (This)->lpVtbl -> get_PatternScale(This,patternScale) ) 

#define IAcadHatch_put_PatternScale(This,patternScale)	\
    ( (This)->lpVtbl -> put_PatternScale(This,patternScale) ) 

#define IAcadHatch_get_PatternSpace(This,PatternSpace)	\
    ( (This)->lpVtbl -> get_PatternSpace(This,PatternSpace) ) 

#define IAcadHatch_put_PatternSpace(This,PatternSpace)	\
    ( (This)->lpVtbl -> put_PatternSpace(This,PatternSpace) ) 

#define IAcadHatch_get_ISOPenWidth(This,penWidth)	\
    ( (This)->lpVtbl -> get_ISOPenWidth(This,penWidth) ) 

#define IAcadHatch_put_ISOPenWidth(This,penWidth)	\
    ( (This)->lpVtbl -> put_ISOPenWidth(This,penWidth) ) 

#define IAcadHatch_get_PatternDouble(This,bDouble)	\
    ( (This)->lpVtbl -> get_PatternDouble(This,bDouble) ) 

#define IAcadHatch_put_PatternDouble(This,bDouble)	\
    ( (This)->lpVtbl -> put_PatternDouble(This,bDouble) ) 

#define IAcadHatch_get_Elevation(This,elevation)	\
    ( (This)->lpVtbl -> get_Elevation(This,elevation) ) 

#define IAcadHatch_put_Elevation(This,elevation)	\
    ( (This)->lpVtbl -> put_Elevation(This,elevation) ) 

#define IAcadHatch_get_AssociativeHatch(This,fAssoc)	\
    ( (This)->lpVtbl -> get_AssociativeHatch(This,fAssoc) ) 

#define IAcadHatch_put_AssociativeHatch(This,fAssoc)	\
    ( (This)->lpVtbl -> put_AssociativeHatch(This,fAssoc) ) 

#define IAcadHatch_get_HatchStyle(This,hatchStyle)	\
    ( (This)->lpVtbl -> get_HatchStyle(This,hatchStyle) ) 

#define IAcadHatch_put_HatchStyle(This,hatchStyle)	\
    ( (This)->lpVtbl -> put_HatchStyle(This,hatchStyle) ) 

#define IAcadHatch_SetPattern(This,PatternType,PatternName)	\
    ( (This)->lpVtbl -> SetPattern(This,PatternType,PatternName) ) 

#define IAcadHatch_AppendOuterLoop(This,ObjectArray)	\
    ( (This)->lpVtbl -> AppendOuterLoop(This,ObjectArray) ) 

#define IAcadHatch_AppendInnerLoop(This,ObjectArray)	\
    ( (This)->lpVtbl -> AppendInnerLoop(This,ObjectArray) ) 

#define IAcadHatch_InsertLoopAt(This,Index,LoopType,ObjectArray)	\
    ( (This)->lpVtbl -> InsertLoopAt(This,Index,LoopType,ObjectArray) ) 

#define IAcadHatch_GetLoopAt(This,Index,ObjectArray)	\
    ( (This)->lpVtbl -> GetLoopAt(This,Index,ObjectArray) ) 

#define IAcadHatch_Evaluate(This)	\
    ( (This)->lpVtbl -> Evaluate(This) ) 

#define IAcadHatch_get_GradientColor1(This,pColor)	\
    ( (This)->lpVtbl -> get_GradientColor1(This,pColor) ) 

#define IAcadHatch_put_GradientColor1(This,pColor)	\
    ( (This)->lpVtbl -> put_GradientColor1(This,pColor) ) 

#define IAcadHatch_get_GradientColor2(This,pColor)	\
    ( (This)->lpVtbl -> get_GradientColor2(This,pColor) ) 

#define IAcadHatch_put_GradientColor2(This,pColor)	\
    ( (This)->lpVtbl -> put_GradientColor2(This,pColor) ) 

#define IAcadHatch_get_GradientAngle(This,gradientAngle)	\
    ( (This)->lpVtbl -> get_GradientAngle(This,gradientAngle) ) 

#define IAcadHatch_put_GradientAngle(This,gradientAngle)	\
    ( (This)->lpVtbl -> put_GradientAngle(This,gradientAngle) ) 

#define IAcadHatch_get_GradientCentered(This,fCentered)	\
    ( (This)->lpVtbl -> get_GradientCentered(This,fCentered) ) 

#define IAcadHatch_put_GradientCentered(This,fCentered)	\
    ( (This)->lpVtbl -> put_GradientCentered(This,fCentered) ) 

#define IAcadHatch_get_GradientName(This,bstrName)	\
    ( (This)->lpVtbl -> get_GradientName(This,bstrName) ) 

#define IAcadHatch_put_GradientName(This,bstrName)	\
    ( (This)->lpVtbl -> put_GradientName(This,bstrName) ) 

#define IAcadHatch_get_HatchObjectType(This,hatchType)	\
    ( (This)->lpVtbl -> get_HatchObjectType(This,hatchType) ) 

#define IAcadHatch_put_HatchObjectType(This,hatchType)	\
    ( (This)->lpVtbl -> put_HatchObjectType(This,hatchType) ) 

#define IAcadHatch_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadHatch_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadHatch_put_Origin(This,origin)	\
    ( (This)->lpVtbl -> put_Origin(This,origin) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadHatch_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadHatch,0x07BD7878,0x35B2,0x4F1F,0xA0,0xAF,0x84,0xF1,0x02,0xCE,0x86,0x74);

#ifdef __cplusplus

class DECLSPEC_UUID("07BD7878-35B2-4F1F-A0AF-84F102CE8674")
AcadHatch;
#endif

#ifndef __IAcadLeader_INTERFACE_DEFINED__
#define __IAcadLeader_INTERFACE_DEFINED__

/* interface IAcadLeader */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLeader,0x11D050D2,0x848B,0x4EC8,0x99,0x3F,0x2C,0xE0,0x89,0x66,0x7D,0x7C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("11D050D2-848B-4EC8-993F-2CE089667D7C")
    IAcadLeader : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ AcLeaderType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
            /* [in] */ AcLeaderType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Evaluate( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][nonbrowsable][propget] */ HRESULT STDMETHODCALLTYPE get_Annotation( 
            /* [retval][out] */ IAcadEntity **pVal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Annotation( 
            /* [in] */ IAcadEntity *newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadType( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadType( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalTextPosition( 
            /* [retval][out] */ AcDimVerticalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalTextPosition( 
            /* [in] */ AcDimVerticalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextGap( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextGap( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadBlock( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadBlock( 
            /* [in] */ BSTR BlockName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLeader * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLeader * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLeader * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLeader * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLeader * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLeader * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLeader * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLeader * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLeader * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLeader * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLeader * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLeader * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLeader * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLeader * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLeader * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLeader * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLeader * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLeader * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLeader * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLeader * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadLeader * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadLeader * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadLeader * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadLeader * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadLeader * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadLeader * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadLeader * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadLeader * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadLeader * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadLeader * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadLeader * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadLeader * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadLeader * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadLeader * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadLeader * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadLeader * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadLeader * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadLeader * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadLeader * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadLeader * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadLeader * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadLeader * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadLeader * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadLeader * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadLeader * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadLeader * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadLeader * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadLeader * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadLeader * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadLeader * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadLeader * This,
            /* [retval][out] */ VARIANT *coordinates);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadLeader * This,
            /* [in] */ VARIANT coordinates);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadLeader * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadLeader * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IAcadLeader * This,
            /* [retval][out] */ AcLeaderType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
            IAcadLeader * This,
            /* [in] */ AcLeaderType type);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Evaluate )( 
            IAcadLeader * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadLeader * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadLeader * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        /* [helpcontext][helpstringcontext][id][nonbrowsable][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Annotation )( 
            IAcadLeader * This,
            /* [retval][out] */ IAcadEntity **pVal);
        
        /* [helpcontext][helpstringcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Annotation )( 
            IAcadLeader * This,
            /* [in] */ IAcadEntity *newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadLeader * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadLeader * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadType )( 
            IAcadLeader * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadType )( 
            IAcadLeader * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadLeader * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadLeader * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadLeader * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadLeader * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadLeader * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadLeader * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadLeader * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadLeader * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadLeader * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadLeader * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadBlock )( 
            IAcadLeader * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadBlock )( 
            IAcadLeader * This,
            /* [in] */ BSTR BlockName);
        
        END_INTERFACE
    } IAcadLeaderVtbl;

    interface IAcadLeader
    {
        CONST_VTBL struct IAcadLeaderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLeader_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLeader_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLeader_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLeader_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLeader_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLeader_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLeader_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLeader_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLeader_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLeader_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLeader_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLeader_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLeader_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLeader_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLeader_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLeader_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLeader_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLeader_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLeader_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLeader_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadLeader_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadLeader_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadLeader_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadLeader_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadLeader_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadLeader_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadLeader_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadLeader_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadLeader_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadLeader_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadLeader_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadLeader_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadLeader_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadLeader_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadLeader_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadLeader_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadLeader_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadLeader_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadLeader_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadLeader_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadLeader_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadLeader_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadLeader_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadLeader_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadLeader_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadLeader_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadLeader_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadLeader_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadLeader_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadLeader_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadLeader_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadLeader_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadLeader_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadLeader_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadLeader_get_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coordinates) ) 

#define IAcadLeader_put_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coordinates) ) 

#define IAcadLeader_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadLeader_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadLeader_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadLeader_get_Type(This,type)	\
    ( (This)->lpVtbl -> get_Type(This,type) ) 

#define IAcadLeader_put_Type(This,type)	\
    ( (This)->lpVtbl -> put_Type(This,type) ) 

#define IAcadLeader_Evaluate(This)	\
    ( (This)->lpVtbl -> Evaluate(This) ) 

#define IAcadLeader_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadLeader_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#define IAcadLeader_get_Annotation(This,pVal)	\
    ( (This)->lpVtbl -> get_Annotation(This,pVal) ) 

#define IAcadLeader_put_Annotation(This,newVal)	\
    ( (This)->lpVtbl -> put_Annotation(This,newVal) ) 

#define IAcadLeader_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadLeader_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadLeader_get_ArrowheadType(This,Type)	\
    ( (This)->lpVtbl -> get_ArrowheadType(This,Type) ) 

#define IAcadLeader_put_ArrowheadType(This,Type)	\
    ( (This)->lpVtbl -> put_ArrowheadType(This,Type) ) 

#define IAcadLeader_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadLeader_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadLeader_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadLeader_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadLeader_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadLeader_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadLeader_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadLeader_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadLeader_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadLeader_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadLeader_get_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadBlock(This,BlockName) ) 

#define IAcadLeader_put_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadBlock(This,BlockName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLeader_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLeader,0xB6DE099E,0x8978,0x4064,0xB8,0x56,0xBA,0x00,0x24,0xE2,0xC3,0x1C);

#ifdef __cplusplus

class DECLSPEC_UUID("B6DE099E-8978-4064-B856-BA0024E2C31C")
AcadLeader;
#endif

#ifndef __IAcadSubEntity_INTERFACE_DEFINED__
#define __IAcadSubEntity_INTERFACE_DEFINED__

/* interface IAcadSubEntity */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubEntity,0x49376534,0xDD5B,0x4FD1,0xB3,0x10,0x32,0xED,0x74,0x8D,0x11,0x98);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("49376534-DD5B-4FD1-B310-32ED748D1198")
    IAcadSubEntity : public IDispatch
    {
    public:
        virtual /* [nonbrowsable][id] */ HRESULT STDMETHODCALLTYPE OnModified( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectName( 
            /* [retval][out] */ BSTR *ObjectName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layer( 
            /* [retval][out] */ BSTR *Layer) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinetypeScale( 
            /* [retval][out] */ ACAD_NOUNITS *ltScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_PlotStyleName( 
            /* [retval][out] */ BSTR *plotStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Lineweight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Hyperlinks( 
            /* [retval][out] */ IAcadHyperlinks **HyperLinks) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubEntityVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubEntity * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubEntity * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubEntity * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubEntity * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubEntity * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubEntity * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubEntity * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubEntity * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubEntity * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubEntity * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubEntity * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubEntity * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubEntity * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubEntity * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubEntity * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubEntity * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubEntity * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        END_INTERFACE
    } IAcadSubEntityVtbl;

    interface IAcadSubEntity
    {
        CONST_VTBL struct IAcadSubEntityVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubEntity_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubEntity_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubEntity_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubEntity_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubEntity_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubEntity_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubEntity_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubEntity_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubEntity_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubEntity_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubEntity_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubEntity_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubEntity_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubEntity_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubEntity_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubEntity_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubEntity_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubEntity_INTERFACE_DEFINED__ */


#ifndef __IAcadMLeaderLeader_INTERFACE_DEFINED__
#define __IAcadMLeaderLeader_INTERFACE_DEFINED__

/* interface IAcadMLeaderLeader */
/* [unique][helpcontext][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMLeaderLeader,0x641D3F97,0x6437,0x4f2a,0x82,0xFC,0x2A,0xD7,0x3D,0x95,0x54,0xE0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("641D3F97-6437-4f2a-82FC-2AD73D9554E0")
    IAcadMLeaderLeader : public IAcadSubEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderType( 
            /* [retval][out] */ AcMLeaderType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderType( 
            /* [in] */ AcMLeaderType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineColor( 
            /* [retval][out] */ IAcadAcCmColor **Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineColor( 
            /* [in] */ IAcadAcCmColor *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLinetype( 
            /* [retval][out] */ ACAD_LTYPE *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLinetype( 
            /* [in] */ ACAD_LTYPE Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineWeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineWeight( 
            /* [in] */ ACAD_LWEIGHT lineWeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadType( 
            /* [retval][out] */ AcDimArrowheadType *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadType( 
            /* [in] */ AcDimArrowheadType BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadBlock( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadBlock( 
            /* [in] */ BSTR BlockName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMLeaderLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMLeaderLeader * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMLeaderLeader * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMLeaderLeader * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMLeaderLeader * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMLeaderLeader * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMLeaderLeader * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMLeaderLeader * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadMLeaderLeader * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadMLeaderLeader * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderType )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ AcMLeaderType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderType )( 
            IAcadMLeaderLeader * This,
            /* [in] */ AcMLeaderType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineColor )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ IAcadAcCmColor **Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineColor )( 
            IAcadMLeaderLeader * This,
            /* [in] */ IAcadAcCmColor *Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLinetype )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ ACAD_LTYPE *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLinetype )( 
            IAcadMLeaderLeader * This,
            /* [in] */ ACAD_LTYPE Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineWeight )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineWeight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineWeight )( 
            IAcadMLeaderLeader * This,
            /* [in] */ ACAD_LWEIGHT lineWeight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadType )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ AcDimArrowheadType *BlockName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadType )( 
            IAcadMLeaderLeader * This,
            /* [in] */ AcDimArrowheadType BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadMLeaderLeader * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadBlock )( 
            IAcadMLeaderLeader * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadBlock )( 
            IAcadMLeaderLeader * This,
            /* [in] */ BSTR BlockName);
        
        END_INTERFACE
    } IAcadMLeaderLeaderVtbl;

    interface IAcadMLeaderLeader
    {
        CONST_VTBL struct IAcadMLeaderLeaderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMLeaderLeader_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMLeaderLeader_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMLeaderLeader_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMLeaderLeader_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMLeaderLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMLeaderLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMLeaderLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMLeaderLeader_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadMLeaderLeader_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMLeaderLeader_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadMLeaderLeader_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadMLeaderLeader_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadMLeaderLeader_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadMLeaderLeader_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadMLeaderLeader_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadMLeaderLeader_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadMLeaderLeader_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#define IAcadMLeaderLeader_get_LeaderType(This,type)	\
    ( (This)->lpVtbl -> get_LeaderType(This,type) ) 

#define IAcadMLeaderLeader_put_LeaderType(This,type)	\
    ( (This)->lpVtbl -> put_LeaderType(This,type) ) 

#define IAcadMLeaderLeader_get_LeaderLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_LeaderLineColor(This,Type) ) 

#define IAcadMLeaderLeader_put_LeaderLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_LeaderLineColor(This,Type) ) 

#define IAcadMLeaderLeader_get_LeaderLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_LeaderLinetype(This,Linetype) ) 

#define IAcadMLeaderLeader_put_LeaderLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_LeaderLinetype(This,Linetype) ) 

#define IAcadMLeaderLeader_get_LeaderLineWeight(This,lineWeight)	\
    ( (This)->lpVtbl -> get_LeaderLineWeight(This,lineWeight) ) 

#define IAcadMLeaderLeader_put_LeaderLineWeight(This,lineWeight)	\
    ( (This)->lpVtbl -> put_LeaderLineWeight(This,lineWeight) ) 

#define IAcadMLeaderLeader_get_ArrowheadType(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadType(This,BlockName) ) 

#define IAcadMLeaderLeader_put_ArrowheadType(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadType(This,BlockName) ) 

#define IAcadMLeaderLeader_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadMLeaderLeader_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadMLeaderLeader_get_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadBlock(This,BlockName) ) 

#define IAcadMLeaderLeader_put_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadBlock(This,BlockName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMLeaderLeader_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMLeaderLeader,0xA1FB6193,0x64C2,0x4008,0xAC,0x55,0xA2,0xAD,0x97,0xFD,0x38,0xF8);

#ifdef __cplusplus

class DECLSPEC_UUID("A1FB6193-64C2-4008-AC55-A2AD97FD38F8")
AcadMLeaderLeader;
#endif

#ifndef __IAcadMLeader_INTERFACE_DEFINED__
#define __IAcadMLeader_INTERFACE_DEFINED__

/* interface IAcadMLeader */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMLeader,0x5D8A52A9,0x9205,0x4BE0,0xA2,0xF1,0x43,0x16,0x12,0xFB,0xB3,0x5D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5D8A52A9-9205-4BE0-A2F1-431612FBB35D")
    IAcadMLeader : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ double *scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ double scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderType( 
            /* [retval][out] */ AcMLeaderType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderType( 
            /* [in] */ AcMLeaderType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineColor( 
            /* [retval][out] */ IAcadAcCmColor **Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineColor( 
            /* [in] */ IAcadAcCmColor *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLinetype( 
            /* [retval][out] */ ACAD_LTYPE *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLinetype( 
            /* [in] */ ACAD_LTYPE Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lineWeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLineWeight( 
            /* [in] */ ACAD_LWEIGHT lineWeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadType( 
            /* [retval][out] */ AcDimArrowheadType *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadType( 
            /* [in] */ AcDimArrowheadType BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DogLegged( 
            /* [retval][out] */ VARIANT_BOOL *val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DogLegged( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoglegLength( 
            /* [retval][out] */ double *doglegLength) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoglegLength( 
            /* [in] */ double doglegLength) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ContentBlockName( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ContentBlockName( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockConnectionType( 
            /* [retval][out] */ AcBlockConnectionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockConnectionType( 
            /* [in] */ AcBlockConnectionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockScale( 
            /* [retval][out] */ ACAD_NOUNITS *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockScale( 
            /* [in] */ ACAD_NOUNITS factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextStyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextStyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextJustify( 
            /* [retval][out] */ AcAttachmentPoint *attPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextJustify( 
            /* [in] */ AcAttachmentPoint attPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDirection( 
            /* [retval][out] */ AcDrawingDirection *drawDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextDirection( 
            /* [in] */ AcDrawingDirection drawDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextWidth( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextWidth( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextHeight( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextRotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextRotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLineSpacingFactor( 
            /* [retval][out] */ double *Factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextLineSpacingFactor( 
            /* [in] */ double Factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLineSpacingDistance( 
            /* [retval][out] */ double *Value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextLineSpacingDistance( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLineSpacingStyle( 
            /* [retval][out] */ AcLineSpacingStyle *Style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextLineSpacingStyle( 
            /* [in] */ AcLineSpacingStyle Style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextBackgroundFill( 
            /* [retval][out] */ VARIANT_BOOL *bUseBackgroundFill) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextBackgroundFill( 
            /* [in] */ VARIANT_BOOL bUseBackgroundFill) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAttachmentDirection( 
            /* [retval][out] */ AcTextAttachmentDirection *dir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAttachmentDirection( 
            /* [in] */ AcTextAttachmentDirection dir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLeftAttachmentType( 
            /* [retval][out] */ AcTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextLeftAttachmentType( 
            /* [in] */ AcTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextRightAttachmentType( 
            /* [retval][out] */ AcTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextRightAttachmentType( 
            /* [in] */ AcTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextTopAttachmentType( 
            /* [retval][out] */ AcVerticalTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextTopAttachmentType( 
            /* [in] */ AcVerticalTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextBottomAttachmentType( 
            /* [retval][out] */ AcVerticalTextAttachmentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextBottomAttachmentType( 
            /* [in] */ AcVerticalTextAttachmentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LandingGap( 
            /* [retval][out] */ double *gap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LandingGap( 
            /* [in] */ double gap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadBlock( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadBlock( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ContentBlockType( 
            /* [retval][out] */ AcPredefBlockType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ContentBlockType( 
            /* [in] */ AcPredefBlockType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderCount( 
            /* [retval][out] */ int *number) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddLeader( 
            /* [retval][out] */ int *leaderIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveLeader( 
            /* [in] */ int leaderIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddLeaderLine( 
            /* [in] */ int leaderIndex,
            /* [in] */ VARIANT pointArray,
            /* [retval][out] */ int *leaderLineIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddLeaderLineEx( 
            /* [in] */ VARIANT pointArray,
            /* [retval][out] */ int *leaderLineIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveLeaderLine( 
            /* [in] */ int leaderLineIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetLeaderLineVertices( 
            /* [in] */ int leaderLineIndex,
            /* [in] */ VARIANT pointArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetLeaderLineVertices( 
            /* [in] */ int leaderLineIndex,
            /* [retval][out] */ VARIANT *pointArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ContentType( 
            /* [in] */ AcMLeaderContentType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ContentType( 
            /* [retval][out] */ AcMLeaderContentType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetLeaderIndex( 
            /* [in] */ int leaderLineIndex,
            /* [retval][out] */ int *leaderIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetLeaderLineIndexes( 
            /* [in] */ int leaderIndex,
            /* [retval][out] */ VARIANT *leaderLineIndexes) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetVertexCount( 
            /* [in] */ int leaderLineIndex,
            /* [retval][out] */ int *number) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextFrameDisplay( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextFrameDisplay( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDoglegDirection( 
            /* [in] */ int leaderIndex,
            /* [retval][out] */ VARIANT *dirVec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetDoglegDirection( 
            /* [in] */ int leaderIndex,
            /* [in] */ VARIANT dirVec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockAttributeValue( 
            /* [in] */ LONG_PTR attdefId,
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockAttributeValue( 
            /* [in] */ LONG_PTR attdefId,
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockAttributeValue32( 
            /* [in] */ LONG attdefId,
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockAttributeValue32( 
            /* [in] */ LONG attdefId,
            /* [in] */ BSTR value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMLeader * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMLeader * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMLeader * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMLeader * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMLeader * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMLeader * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMLeader * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMLeader * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMLeader * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMLeader * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMLeader * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMLeader * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMLeader * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMLeader * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMLeader * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMLeader * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMLeader * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMLeader * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMLeader * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadMLeader * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadMLeader * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadMLeader * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadMLeader * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadMLeader * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadMLeader * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadMLeader * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadMLeader * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadMLeader * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadMLeader * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadMLeader * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadMLeader * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadMLeader * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadMLeader * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadMLeader * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadMLeader * This,
            /* [in] */ double scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcMLeaderType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderType )( 
            IAcadMLeader * This,
            /* [in] */ AcMLeaderType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineColor )( 
            IAcadMLeader * This,
            /* [retval][out] */ IAcadAcCmColor **Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineColor )( 
            IAcadMLeader * This,
            /* [in] */ IAcadAcCmColor *Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLinetype )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_LTYPE *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLinetype )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_LTYPE Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderLineWeight )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineWeight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLineWeight )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_LWEIGHT lineWeight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcDimArrowheadType *BlockName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadType )( 
            IAcadMLeader * This,
            /* [in] */ AcDimArrowheadType BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadMLeader * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DogLegged )( 
            IAcadMLeader * This,
            /* [retval][out] */ VARIANT_BOOL *val);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DogLegged )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DoglegLength )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *doglegLength);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DoglegLength )( 
            IAcadMLeader * This,
            /* [in] */ double doglegLength);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ContentBlockName )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ContentBlockName )( 
            IAcadMLeader * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockConnectionType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcBlockConnectionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockConnectionType )( 
            IAcadMLeader * This,
            /* [in] */ AcBlockConnectionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockScale )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockScale )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadMLeader * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyleName )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyleName )( 
            IAcadMLeader * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextJustify )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcAttachmentPoint *attPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextJustify )( 
            IAcadMLeader * This,
            /* [in] */ AcAttachmentPoint attPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextDirection )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcDrawingDirection *drawDir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextDirection )( 
            IAcadMLeader * This,
            /* [in] */ AcDrawingDirection drawDir);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextWidth )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextWidth )( 
            IAcadMLeader * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadMLeader * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadMLeader * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadMLeader * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextLineSpacingFactor )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *Factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextLineSpacingFactor )( 
            IAcadMLeader * This,
            /* [in] */ double Factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextLineSpacingDistance )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *Value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextLineSpacingDistance )( 
            IAcadMLeader * This,
            /* [in] */ double Value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextLineSpacingStyle )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcLineSpacingStyle *Style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextLineSpacingStyle )( 
            IAcadMLeader * This,
            /* [in] */ AcLineSpacingStyle Style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextBackgroundFill )( 
            IAcadMLeader * This,
            /* [retval][out] */ VARIANT_BOOL *bUseBackgroundFill);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextBackgroundFill )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT_BOOL bUseBackgroundFill);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAttachmentDirection )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcTextAttachmentDirection *dir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAttachmentDirection )( 
            IAcadMLeader * This,
            /* [in] */ AcTextAttachmentDirection dir);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextLeftAttachmentType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextLeftAttachmentType )( 
            IAcadMLeader * This,
            /* [in] */ AcTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRightAttachmentType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRightAttachmentType )( 
            IAcadMLeader * This,
            /* [in] */ AcTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextTopAttachmentType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcVerticalTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextTopAttachmentType )( 
            IAcadMLeader * This,
            /* [in] */ AcVerticalTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextBottomAttachmentType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcVerticalTextAttachmentType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextBottomAttachmentType )( 
            IAcadMLeader * This,
            /* [in] */ AcVerticalTextAttachmentType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LandingGap )( 
            IAcadMLeader * This,
            /* [retval][out] */ double *gap);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LandingGap )( 
            IAcadMLeader * This,
            /* [in] */ double gap);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadBlock )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadBlock )( 
            IAcadMLeader * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ContentBlockType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcPredefBlockType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ContentBlockType )( 
            IAcadMLeader * This,
            /* [in] */ AcPredefBlockType type);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LeaderCount )( 
            IAcadMLeader * This,
            /* [retval][out] */ int *number);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLeader )( 
            IAcadMLeader * This,
            /* [retval][out] */ int *leaderIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveLeader )( 
            IAcadMLeader * This,
            /* [in] */ int leaderIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLeaderLine )( 
            IAcadMLeader * This,
            /* [in] */ int leaderIndex,
            /* [in] */ VARIANT pointArray,
            /* [retval][out] */ int *leaderLineIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLeaderLineEx )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT pointArray,
            /* [retval][out] */ int *leaderLineIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveLeaderLine )( 
            IAcadMLeader * This,
            /* [in] */ int leaderLineIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetLeaderLineVertices )( 
            IAcadMLeader * This,
            /* [in] */ int leaderLineIndex,
            /* [in] */ VARIANT pointArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLeaderLineVertices )( 
            IAcadMLeader * This,
            /* [in] */ int leaderLineIndex,
            /* [retval][out] */ VARIANT *pointArray);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ContentType )( 
            IAcadMLeader * This,
            /* [in] */ AcMLeaderContentType type);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ContentType )( 
            IAcadMLeader * This,
            /* [retval][out] */ AcMLeaderContentType *type);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLeaderIndex )( 
            IAcadMLeader * This,
            /* [in] */ int leaderLineIndex,
            /* [retval][out] */ int *leaderIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLeaderLineIndexes )( 
            IAcadMLeader * This,
            /* [in] */ int leaderIndex,
            /* [retval][out] */ VARIANT *leaderLineIndexes);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetVertexCount )( 
            IAcadMLeader * This,
            /* [in] */ int leaderLineIndex,
            /* [retval][out] */ int *number);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFrameDisplay )( 
            IAcadMLeader * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFrameDisplay )( 
            IAcadMLeader * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadMLeader * This,
            /* [retval][out] */ BSTR *name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadMLeader * This,
            /* [in] */ BSTR name);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDoglegDirection )( 
            IAcadMLeader * This,
            /* [in] */ int leaderIndex,
            /* [retval][out] */ VARIANT *dirVec);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetDoglegDirection )( 
            IAcadMLeader * This,
            /* [in] */ int leaderIndex,
            /* [in] */ VARIANT dirVec);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockAttributeValue )( 
            IAcadMLeader * This,
            /* [in] */ LONG_PTR attdefId,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockAttributeValue )( 
            IAcadMLeader * This,
            /* [in] */ LONG_PTR attdefId,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockAttributeValue32 )( 
            IAcadMLeader * This,
            /* [in] */ LONG attdefId,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockAttributeValue32 )( 
            IAcadMLeader * This,
            /* [in] */ LONG attdefId,
            /* [in] */ BSTR value);
        
        END_INTERFACE
    } IAcadMLeaderVtbl;

    interface IAcadMLeader
    {
        CONST_VTBL struct IAcadMLeaderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMLeader_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMLeader_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMLeader_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMLeader_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMLeader_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMLeader_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMLeader_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMLeader_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMLeader_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMLeader_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMLeader_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMLeader_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMLeader_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMLeader_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMLeader_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMLeader_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMLeader_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMLeader_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMLeader_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMLeader_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadMLeader_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadMLeader_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadMLeader_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadMLeader_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadMLeader_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadMLeader_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadMLeader_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadMLeader_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadMLeader_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadMLeader_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadMLeader_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadMLeader_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadMLeader_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadMLeader_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadMLeader_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadMLeader_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadMLeader_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadMLeader_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadMLeader_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadMLeader_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadMLeader_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadMLeader_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadMLeader_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadMLeader_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadMLeader_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadMLeader_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadMLeader_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadMLeader_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadMLeader_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadMLeader_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadMLeader_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadMLeader_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadMLeader_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadMLeader_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadMLeader_get_ScaleFactor(This,scale)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scale) ) 

#define IAcadMLeader_put_ScaleFactor(This,scale)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scale) ) 

#define IAcadMLeader_get_LeaderType(This,type)	\
    ( (This)->lpVtbl -> get_LeaderType(This,type) ) 

#define IAcadMLeader_put_LeaderType(This,type)	\
    ( (This)->lpVtbl -> put_LeaderType(This,type) ) 

#define IAcadMLeader_get_LeaderLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_LeaderLineColor(This,Type) ) 

#define IAcadMLeader_put_LeaderLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_LeaderLineColor(This,Type) ) 

#define IAcadMLeader_get_LeaderLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_LeaderLinetype(This,Linetype) ) 

#define IAcadMLeader_put_LeaderLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_LeaderLinetype(This,Linetype) ) 

#define IAcadMLeader_get_LeaderLineWeight(This,lineWeight)	\
    ( (This)->lpVtbl -> get_LeaderLineWeight(This,lineWeight) ) 

#define IAcadMLeader_put_LeaderLineWeight(This,lineWeight)	\
    ( (This)->lpVtbl -> put_LeaderLineWeight(This,lineWeight) ) 

#define IAcadMLeader_get_ArrowheadType(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadType(This,BlockName) ) 

#define IAcadMLeader_put_ArrowheadType(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadType(This,BlockName) ) 

#define IAcadMLeader_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadMLeader_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadMLeader_get_DogLegged(This,val)	\
    ( (This)->lpVtbl -> get_DogLegged(This,val) ) 

#define IAcadMLeader_put_DogLegged(This,newVal)	\
    ( (This)->lpVtbl -> put_DogLegged(This,newVal) ) 

#define IAcadMLeader_get_DoglegLength(This,doglegLength)	\
    ( (This)->lpVtbl -> get_DoglegLength(This,doglegLength) ) 

#define IAcadMLeader_put_DoglegLength(This,doglegLength)	\
    ( (This)->lpVtbl -> put_DoglegLength(This,doglegLength) ) 

#define IAcadMLeader_get_ContentBlockName(This,BlockName)	\
    ( (This)->lpVtbl -> get_ContentBlockName(This,BlockName) ) 

#define IAcadMLeader_put_ContentBlockName(This,BlockName)	\
    ( (This)->lpVtbl -> put_ContentBlockName(This,BlockName) ) 

#define IAcadMLeader_get_BlockConnectionType(This,type)	\
    ( (This)->lpVtbl -> get_BlockConnectionType(This,type) ) 

#define IAcadMLeader_put_BlockConnectionType(This,type)	\
    ( (This)->lpVtbl -> put_BlockConnectionType(This,type) ) 

#define IAcadMLeader_get_BlockScale(This,factor)	\
    ( (This)->lpVtbl -> get_BlockScale(This,factor) ) 

#define IAcadMLeader_put_BlockScale(This,factor)	\
    ( (This)->lpVtbl -> put_BlockScale(This,factor) ) 

#define IAcadMLeader_get_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextString(This,bstrText) ) 

#define IAcadMLeader_put_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextString(This,bstrText) ) 

#define IAcadMLeader_get_TextStyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_TextStyleName(This,bstrName) ) 

#define IAcadMLeader_put_TextStyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_TextStyleName(This,bstrName) ) 

#define IAcadMLeader_get_TextJustify(This,attPoint)	\
    ( (This)->lpVtbl -> get_TextJustify(This,attPoint) ) 

#define IAcadMLeader_put_TextJustify(This,attPoint)	\
    ( (This)->lpVtbl -> put_TextJustify(This,attPoint) ) 

#define IAcadMLeader_get_TextDirection(This,drawDir)	\
    ( (This)->lpVtbl -> get_TextDirection(This,drawDir) ) 

#define IAcadMLeader_put_TextDirection(This,drawDir)	\
    ( (This)->lpVtbl -> put_TextDirection(This,drawDir) ) 

#define IAcadMLeader_get_TextWidth(This,width)	\
    ( (This)->lpVtbl -> get_TextWidth(This,width) ) 

#define IAcadMLeader_put_TextWidth(This,width)	\
    ( (This)->lpVtbl -> put_TextWidth(This,width) ) 

#define IAcadMLeader_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadMLeader_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadMLeader_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadMLeader_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadMLeader_get_TextLineSpacingFactor(This,Factor)	\
    ( (This)->lpVtbl -> get_TextLineSpacingFactor(This,Factor) ) 

#define IAcadMLeader_put_TextLineSpacingFactor(This,Factor)	\
    ( (This)->lpVtbl -> put_TextLineSpacingFactor(This,Factor) ) 

#define IAcadMLeader_get_TextLineSpacingDistance(This,Value)	\
    ( (This)->lpVtbl -> get_TextLineSpacingDistance(This,Value) ) 

#define IAcadMLeader_put_TextLineSpacingDistance(This,Value)	\
    ( (This)->lpVtbl -> put_TextLineSpacingDistance(This,Value) ) 

#define IAcadMLeader_get_TextLineSpacingStyle(This,Style)	\
    ( (This)->lpVtbl -> get_TextLineSpacingStyle(This,Style) ) 

#define IAcadMLeader_put_TextLineSpacingStyle(This,Style)	\
    ( (This)->lpVtbl -> put_TextLineSpacingStyle(This,Style) ) 

#define IAcadMLeader_get_TextBackgroundFill(This,bUseBackgroundFill)	\
    ( (This)->lpVtbl -> get_TextBackgroundFill(This,bUseBackgroundFill) ) 

#define IAcadMLeader_put_TextBackgroundFill(This,bUseBackgroundFill)	\
    ( (This)->lpVtbl -> put_TextBackgroundFill(This,bUseBackgroundFill) ) 

#define IAcadMLeader_get_TextAttachmentDirection(This,dir)	\
    ( (This)->lpVtbl -> get_TextAttachmentDirection(This,dir) ) 

#define IAcadMLeader_put_TextAttachmentDirection(This,dir)	\
    ( (This)->lpVtbl -> put_TextAttachmentDirection(This,dir) ) 

#define IAcadMLeader_get_TextLeftAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextLeftAttachmentType(This,type) ) 

#define IAcadMLeader_put_TextLeftAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextLeftAttachmentType(This,type) ) 

#define IAcadMLeader_get_TextRightAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextRightAttachmentType(This,type) ) 

#define IAcadMLeader_put_TextRightAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextRightAttachmentType(This,type) ) 

#define IAcadMLeader_get_TextTopAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextTopAttachmentType(This,type) ) 

#define IAcadMLeader_put_TextTopAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextTopAttachmentType(This,type) ) 

#define IAcadMLeader_get_TextBottomAttachmentType(This,type)	\
    ( (This)->lpVtbl -> get_TextBottomAttachmentType(This,type) ) 

#define IAcadMLeader_put_TextBottomAttachmentType(This,type)	\
    ( (This)->lpVtbl -> put_TextBottomAttachmentType(This,type) ) 

#define IAcadMLeader_get_LandingGap(This,gap)	\
    ( (This)->lpVtbl -> get_LandingGap(This,gap) ) 

#define IAcadMLeader_put_LandingGap(This,gap)	\
    ( (This)->lpVtbl -> put_LandingGap(This,gap) ) 

#define IAcadMLeader_get_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadBlock(This,BlockName) ) 

#define IAcadMLeader_put_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadBlock(This,BlockName) ) 

#define IAcadMLeader_get_ContentBlockType(This,type)	\
    ( (This)->lpVtbl -> get_ContentBlockType(This,type) ) 

#define IAcadMLeader_put_ContentBlockType(This,type)	\
    ( (This)->lpVtbl -> put_ContentBlockType(This,type) ) 

#define IAcadMLeader_get_LeaderCount(This,number)	\
    ( (This)->lpVtbl -> get_LeaderCount(This,number) ) 

#define IAcadMLeader_AddLeader(This,leaderIndex)	\
    ( (This)->lpVtbl -> AddLeader(This,leaderIndex) ) 

#define IAcadMLeader_RemoveLeader(This,leaderIndex)	\
    ( (This)->lpVtbl -> RemoveLeader(This,leaderIndex) ) 

#define IAcadMLeader_AddLeaderLine(This,leaderIndex,pointArray,leaderLineIndex)	\
    ( (This)->lpVtbl -> AddLeaderLine(This,leaderIndex,pointArray,leaderLineIndex) ) 

#define IAcadMLeader_AddLeaderLineEx(This,pointArray,leaderLineIndex)	\
    ( (This)->lpVtbl -> AddLeaderLineEx(This,pointArray,leaderLineIndex) ) 

#define IAcadMLeader_RemoveLeaderLine(This,leaderLineIndex)	\
    ( (This)->lpVtbl -> RemoveLeaderLine(This,leaderLineIndex) ) 

#define IAcadMLeader_SetLeaderLineVertices(This,leaderLineIndex,pointArray)	\
    ( (This)->lpVtbl -> SetLeaderLineVertices(This,leaderLineIndex,pointArray) ) 

#define IAcadMLeader_GetLeaderLineVertices(This,leaderLineIndex,pointArray)	\
    ( (This)->lpVtbl -> GetLeaderLineVertices(This,leaderLineIndex,pointArray) ) 

#define IAcadMLeader_put_ContentType(This,type)	\
    ( (This)->lpVtbl -> put_ContentType(This,type) ) 

#define IAcadMLeader_get_ContentType(This,type)	\
    ( (This)->lpVtbl -> get_ContentType(This,type) ) 

#define IAcadMLeader_GetLeaderIndex(This,leaderLineIndex,leaderIndex)	\
    ( (This)->lpVtbl -> GetLeaderIndex(This,leaderLineIndex,leaderIndex) ) 

#define IAcadMLeader_GetLeaderLineIndexes(This,leaderIndex,leaderLineIndexes)	\
    ( (This)->lpVtbl -> GetLeaderLineIndexes(This,leaderIndex,leaderLineIndexes) ) 

#define IAcadMLeader_GetVertexCount(This,leaderLineIndex,number)	\
    ( (This)->lpVtbl -> GetVertexCount(This,leaderLineIndex,number) ) 

#define IAcadMLeader_get_TextFrameDisplay(This,pVal)	\
    ( (This)->lpVtbl -> get_TextFrameDisplay(This,pVal) ) 

#define IAcadMLeader_put_TextFrameDisplay(This,newVal)	\
    ( (This)->lpVtbl -> put_TextFrameDisplay(This,newVal) ) 

#define IAcadMLeader_get_StyleName(This,name)	\
    ( (This)->lpVtbl -> get_StyleName(This,name) ) 

#define IAcadMLeader_put_StyleName(This,name)	\
    ( (This)->lpVtbl -> put_StyleName(This,name) ) 

#define IAcadMLeader_GetDoglegDirection(This,leaderIndex,dirVec)	\
    ( (This)->lpVtbl -> GetDoglegDirection(This,leaderIndex,dirVec) ) 

#define IAcadMLeader_SetDoglegDirection(This,leaderIndex,dirVec)	\
    ( (This)->lpVtbl -> SetDoglegDirection(This,leaderIndex,dirVec) ) 

#define IAcadMLeader_GetBlockAttributeValue(This,attdefId,value)	\
    ( (This)->lpVtbl -> GetBlockAttributeValue(This,attdefId,value) ) 

#define IAcadMLeader_SetBlockAttributeValue(This,attdefId,value)	\
    ( (This)->lpVtbl -> SetBlockAttributeValue(This,attdefId,value) ) 

#define IAcadMLeader_GetBlockAttributeValue32(This,attdefId,value)	\
    ( (This)->lpVtbl -> GetBlockAttributeValue32(This,attdefId,value) ) 

#define IAcadMLeader_SetBlockAttributeValue32(This,attdefId,value)	\
    ( (This)->lpVtbl -> SetBlockAttributeValue32(This,attdefId,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_get_ContentType_Proxy( 
    IAcadMLeader * This,
    /* [retval][out] */ AcMLeaderContentType *type);


void __RPC_STUB IAcadMLeader_get_ContentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_GetLeaderIndex_Proxy( 
    IAcadMLeader * This,
    /* [in] */ int leaderLineIndex,
    /* [retval][out] */ int *leaderIndex);


void __RPC_STUB IAcadMLeader_GetLeaderIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_GetLeaderLineIndexes_Proxy( 
    IAcadMLeader * This,
    /* [in] */ int leaderIndex,
    /* [retval][out] */ VARIANT *leaderLineIndexes);


void __RPC_STUB IAcadMLeader_GetLeaderLineIndexes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_GetVertexCount_Proxy( 
    IAcadMLeader * This,
    /* [in] */ int leaderLineIndex,
    /* [retval][out] */ int *number);


void __RPC_STUB IAcadMLeader_GetVertexCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_get_TextFrameDisplay_Proxy( 
    IAcadMLeader * This,
    /* [retval][out] */ VARIANT_BOOL *pVal);


void __RPC_STUB IAcadMLeader_get_TextFrameDisplay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_put_TextFrameDisplay_Proxy( 
    IAcadMLeader * This,
    /* [in] */ VARIANT_BOOL newVal);


void __RPC_STUB IAcadMLeader_put_TextFrameDisplay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_get_StyleName_Proxy( 
    IAcadMLeader * This,
    /* [retval][out] */ BSTR *name);


void __RPC_STUB IAcadMLeader_get_StyleName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_put_StyleName_Proxy( 
    IAcadMLeader * This,
    /* [in] */ BSTR name);


void __RPC_STUB IAcadMLeader_put_StyleName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_GetDoglegDirection_Proxy( 
    IAcadMLeader * This,
    /* [in] */ int leaderIndex,
    /* [retval][out] */ VARIANT *dirVec);


void __RPC_STUB IAcadMLeader_GetDoglegDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_SetDoglegDirection_Proxy( 
    IAcadMLeader * This,
    /* [in] */ int leaderIndex,
    /* [in] */ VARIANT dirVec);


void __RPC_STUB IAcadMLeader_SetDoglegDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_GetBlockAttributeValue_Proxy( 
    IAcadMLeader * This,
    /* [in] */ LONG_PTR attdefId,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadMLeader_GetBlockAttributeValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_SetBlockAttributeValue_Proxy( 
    IAcadMLeader * This,
    /* [in] */ LONG_PTR attdefId,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadMLeader_SetBlockAttributeValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_GetBlockAttributeValue32_Proxy( 
    IAcadMLeader * This,
    /* [in] */ LONG attdefId,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadMLeader_GetBlockAttributeValue32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadMLeader_SetBlockAttributeValue32_Proxy( 
    IAcadMLeader * This,
    /* [in] */ LONG attdefId,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadMLeader_SetBlockAttributeValue32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadMLeader_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMLeader,0x84BC656B,0x4F6C,0x4364,0xAE,0xCD,0x2F,0xBB,0xCD,0x0B,0x97,0xDF);

#ifdef __cplusplus

class DECLSPEC_UUID("84BC656B-4F6C-4364-AECD-2FBBCD0B97DF")
AcadMLeader;
#endif

#ifndef __IAcadLWPolyline_INTERFACE_DEFINED__
#define __IAcadLWPolyline_INTERFACE_DEFINED__

/* interface IAcadLWPolyline */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLWPolyline,0x134E226C,0x5024,0x4EFC,0xBB,0x7D,0x13,0x1C,0xD7,0x5A,0xF0,0xC9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("134E226C-5024-4EFC-BB7D-131CD75AF0C9")
    IAcadLWPolyline : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddVertex( 
            /* [in] */ int Index,
            /* [in] */ VARIANT Vertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Explode( 
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBulge( 
            /* [in] */ int index,
            /* [retval][out] */ double *bulge) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBulge( 
            /* [in] */ int index,
            /* [in] */ double bulge) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetWidth( 
            /* [in] */ int index,
            /* [out] */ double *StartWidth,
            /* [out] */ double *EndWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetWidth( 
            /* [in] */ int index,
            /* [in] */ double StartWidth,
            /* [in] */ double EndWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConstantWidth( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ConstantWidth( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Elevation( 
            /* [retval][out] */ double *elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Elevation( 
            /* [in] */ double elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL *fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinetypeGeneration( 
            /* [retval][out] */ VARIANT_BOOL *bLinetypeGen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinetypeGeneration( 
            /* [in] */ VARIANT_BOOL bLinetypeGen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double *length) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLWPolylineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLWPolyline * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLWPolyline * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLWPolyline * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLWPolyline * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLWPolyline * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLWPolyline * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLWPolyline * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLWPolyline * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLWPolyline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLWPolyline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadLWPolyline * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadLWPolyline * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadLWPolyline * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadLWPolyline * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadLWPolyline * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadLWPolyline * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadLWPolyline * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadLWPolyline * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadLWPolyline * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadLWPolyline * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadLWPolyline * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadLWPolyline * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadLWPolyline * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT *coordinates);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT coordinates);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadLWPolyline * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddVertex )( 
            IAcadLWPolyline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT Vertex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBulge )( 
            IAcadLWPolyline * This,
            /* [in] */ int index,
            /* [retval][out] */ double *bulge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBulge )( 
            IAcadLWPolyline * This,
            /* [in] */ int index,
            /* [in] */ double bulge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidth )( 
            IAcadLWPolyline * This,
            /* [in] */ int index,
            /* [out] */ double *StartWidth,
            /* [out] */ double *EndWidth);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidth )( 
            IAcadLWPolyline * This,
            /* [in] */ int index,
            /* [in] */ double StartWidth,
            /* [in] */ double EndWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConstantWidth )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ConstantWidth )( 
            IAcadLWPolyline * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadLWPolyline * This,
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Elevation )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Elevation )( 
            IAcadLWPolyline * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadLWPolyline * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadLWPolyline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Closed )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *fClose);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Closed )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT_BOOL fClose);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeGeneration )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bLinetypeGen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeGeneration )( 
            IAcadLWPolyline * This,
            /* [in] */ VARIANT_BOOL bLinetypeGen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Length )( 
            IAcadLWPolyline * This,
            /* [retval][out] */ double *length);
        
        END_INTERFACE
    } IAcadLWPolylineVtbl;

    interface IAcadLWPolyline
    {
        CONST_VTBL struct IAcadLWPolylineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLWPolyline_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLWPolyline_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLWPolyline_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLWPolyline_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLWPolyline_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLWPolyline_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLWPolyline_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLWPolyline_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLWPolyline_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLWPolyline_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLWPolyline_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLWPolyline_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLWPolyline_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLWPolyline_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLWPolyline_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLWPolyline_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLWPolyline_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLWPolyline_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLWPolyline_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLWPolyline_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLWPolyline_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLWPolyline_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLWPolyline_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadLWPolyline_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadLWPolyline_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadLWPolyline_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadLWPolyline_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadLWPolyline_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadLWPolyline_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadLWPolyline_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadLWPolyline_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadLWPolyline_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadLWPolyline_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadLWPolyline_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadLWPolyline_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadLWPolyline_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadLWPolyline_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadLWPolyline_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadLWPolyline_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadLWPolyline_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadLWPolyline_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadLWPolyline_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadLWPolyline_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadLWPolyline_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadLWPolyline_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadLWPolyline_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadLWPolyline_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadLWPolyline_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadLWPolyline_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadLWPolyline_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadLWPolyline_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadLWPolyline_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadLWPolyline_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadLWPolyline_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadLWPolyline_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadLWPolyline_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadLWPolyline_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadLWPolyline_get_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coordinates) ) 

#define IAcadLWPolyline_put_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coordinates) ) 

#define IAcadLWPolyline_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadLWPolyline_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadLWPolyline_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadLWPolyline_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadLWPolyline_AddVertex(This,Index,Vertex)	\
    ( (This)->lpVtbl -> AddVertex(This,Index,Vertex) ) 

#define IAcadLWPolyline_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcadLWPolyline_GetBulge(This,index,bulge)	\
    ( (This)->lpVtbl -> GetBulge(This,index,bulge) ) 

#define IAcadLWPolyline_SetBulge(This,index,bulge)	\
    ( (This)->lpVtbl -> SetBulge(This,index,bulge) ) 

#define IAcadLWPolyline_GetWidth(This,index,StartWidth,EndWidth)	\
    ( (This)->lpVtbl -> GetWidth(This,index,StartWidth,EndWidth) ) 

#define IAcadLWPolyline_SetWidth(This,index,StartWidth,EndWidth)	\
    ( (This)->lpVtbl -> SetWidth(This,index,StartWidth,EndWidth) ) 

#define IAcadLWPolyline_get_ConstantWidth(This,width)	\
    ( (This)->lpVtbl -> get_ConstantWidth(This,width) ) 

#define IAcadLWPolyline_put_ConstantWidth(This,width)	\
    ( (This)->lpVtbl -> put_ConstantWidth(This,width) ) 

#define IAcadLWPolyline_Offset(This,distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,distance,pOffsetCurves) ) 

#define IAcadLWPolyline_get_Elevation(This,elevation)	\
    ( (This)->lpVtbl -> get_Elevation(This,elevation) ) 

#define IAcadLWPolyline_put_Elevation(This,elevation)	\
    ( (This)->lpVtbl -> put_Elevation(This,elevation) ) 

#define IAcadLWPolyline_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadLWPolyline_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadLWPolyline_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#define IAcadLWPolyline_get_Closed(This,fClose)	\
    ( (This)->lpVtbl -> get_Closed(This,fClose) ) 

#define IAcadLWPolyline_put_Closed(This,fClose)	\
    ( (This)->lpVtbl -> put_Closed(This,fClose) ) 

#define IAcadLWPolyline_get_LinetypeGeneration(This,bLinetypeGen)	\
    ( (This)->lpVtbl -> get_LinetypeGeneration(This,bLinetypeGen) ) 

#define IAcadLWPolyline_put_LinetypeGeneration(This,bLinetypeGen)	\
    ( (This)->lpVtbl -> put_LinetypeGeneration(This,bLinetypeGen) ) 

#define IAcadLWPolyline_get_Length(This,length)	\
    ( (This)->lpVtbl -> get_Length(This,length) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLWPolyline_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLWPolyline,0x3C66A2DE,0xEBCF,0x48CF,0x8B,0x0E,0x75,0x59,0x5F,0x40,0xEB,0x24);

#ifdef __cplusplus

class DECLSPEC_UUID("3C66A2DE-EBCF-48CF-8B0E-75595F40EB24")
AcadLWPolyline;
#endif

#ifndef __IAcadLine_INTERFACE_DEFINED__
#define __IAcadLine_INTERFACE_DEFINED__

/* interface IAcadLine */
/* [unique][helpcontext][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLine,0xDF524ECB,0xD59E,0x464B,0x89,0xB6,0xD3,0x28,0x22,0x28,0x27,0x78);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DF524ECB-D59E-464B-89B6-D32822282778")
    IAcadLine : public IAcadEntity
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartPoint( 
            /* [retval][out] */ VARIANT *startPoint) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartPoint( 
            /* [in] */ VARIANT startPoint) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndPoint( 
            /* [retval][out] */ VARIANT *endPoint) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndPoint( 
            /* [in] */ VARIANT endPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Delta( 
            /* [retval][out] */ VARIANT *delta) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double *length) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ ACAD_ANGLE *angle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLine * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLine * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLine * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLine * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLine * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLine * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLine * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLine * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLine * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLine * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLine * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLine * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLine * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLine * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLine * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLine * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLine * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLine * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLine * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLine * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadLine * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadLine * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadLine * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadLine * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadLine * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadLine * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadLine * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadLine * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadLine * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadLine * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadLine * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadLine * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadLine * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadLine * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadLine * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadLine * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadLine * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadLine * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadLine * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadLine * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadLine * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadLine * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadLine * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadLine * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadLine * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadLine * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadLine * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadLine * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadLine * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadLine * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadLine * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartPoint )( 
            IAcadLine * This,
            /* [retval][out] */ VARIANT *startPoint);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartPoint )( 
            IAcadLine * This,
            /* [in] */ VARIANT startPoint);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndPoint )( 
            IAcadLine * This,
            /* [retval][out] */ VARIANT *endPoint);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndPoint )( 
            IAcadLine * This,
            /* [in] */ VARIANT endPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadLine * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadLine * This,
            /* [in] */ VARIANT normal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadLine * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpcontext][helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadLine * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadLine * This,
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Delta )( 
            IAcadLine * This,
            /* [retval][out] */ VARIANT *delta);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Length )( 
            IAcadLine * This,
            /* [retval][out] */ double *length);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Angle )( 
            IAcadLine * This,
            /* [retval][out] */ ACAD_ANGLE *angle);
        
        END_INTERFACE
    } IAcadLineVtbl;

    interface IAcadLine
    {
        CONST_VTBL struct IAcadLineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLine_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLine_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLine_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLine_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLine_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLine_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLine_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLine_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLine_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLine_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLine_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLine_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLine_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLine_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLine_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLine_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLine_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLine_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLine_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLine_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadLine_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadLine_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadLine_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadLine_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadLine_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadLine_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadLine_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadLine_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadLine_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadLine_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadLine_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadLine_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadLine_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadLine_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadLine_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadLine_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadLine_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadLine_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadLine_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadLine_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadLine_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadLine_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadLine_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadLine_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadLine_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadLine_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadLine_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadLine_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadLine_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadLine_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadLine_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadLine_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadLine_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadLine_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadLine_get_StartPoint(This,startPoint)	\
    ( (This)->lpVtbl -> get_StartPoint(This,startPoint) ) 

#define IAcadLine_put_StartPoint(This,startPoint)	\
    ( (This)->lpVtbl -> put_StartPoint(This,startPoint) ) 

#define IAcadLine_get_EndPoint(This,endPoint)	\
    ( (This)->lpVtbl -> get_EndPoint(This,endPoint) ) 

#define IAcadLine_put_EndPoint(This,endPoint)	\
    ( (This)->lpVtbl -> put_EndPoint(This,endPoint) ) 

#define IAcadLine_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadLine_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadLine_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadLine_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadLine_Offset(This,distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,distance,pOffsetCurves) ) 

#define IAcadLine_get_Delta(This,delta)	\
    ( (This)->lpVtbl -> get_Delta(This,delta) ) 

#define IAcadLine_get_Length(This,length)	\
    ( (This)->lpVtbl -> get_Length(This,length) ) 

#define IAcadLine_get_Angle(This,angle)	\
    ( (This)->lpVtbl -> get_Angle(This,angle) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLine_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLine,0x7C34C0FB,0x6848,0x4FF8,0x97,0x5A,0x19,0xA2,0x7F,0xBA,0xD1,0xB4);

#ifdef __cplusplus

class DECLSPEC_UUID("7C34C0FB-6848-4FF8-975A-19A27FBAD1B4")
AcadLine;
#endif

#ifndef __IAcadMText_INTERFACE_DEFINED__
#define __IAcadMText_INTERFACE_DEFINED__

/* interface IAcadMText */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMText,0x8830DA6E,0x58B1,0x45D2,0x97,0x1E,0xB4,0xBE,0x04,0x6C,0x0F,0x75);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8830DA6E-58B1-45D2-971E-B4BE046C0F75")
    IAcadMText : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttachmentPoint( 
            /* [retval][out] */ AcAttachmentPoint *attPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AttachmentPoint( 
            /* [in] */ AcAttachmentPoint attPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingDirection( 
            /* [retval][out] */ AcDrawingDirection *drawDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawingDirection( 
            /* [in] */ AcDrawingDirection drawDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineSpacingFactor( 
            /* [retval][out] */ double *Factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineSpacingFactor( 
            /* [in] */ double Factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineSpacingStyle( 
            /* [retval][out] */ AcLineSpacingStyle *Style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineSpacingStyle( 
            /* [in] */ AcLineSpacingStyle Style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineSpacingDistance( 
            /* [retval][out] */ double *Value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineSpacingDistance( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BackgroundFill( 
            /* [retval][out] */ VARIANT_BOOL *bUseBackgroundFill) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BackgroundFill( 
            /* [in] */ VARIANT_BOOL bUseBackgroundFill) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE FieldCode( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMTextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMText * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMText * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMText * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMText * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMText * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMText * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMText * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMText * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMText * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMText * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMText * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMText * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMText * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMText * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMText * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMText * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMText * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMText * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMText * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMText * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadMText * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadMText * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadMText * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadMText * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadMText * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadMText * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadMText * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadMText * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadMText * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadMText * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadMText * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadMText * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadMText * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadMText * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadMText * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadMText * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadMText * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadMText * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadMText * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadMText * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadMText * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadMText * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadMText * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadMText * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadMText * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadMText * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadMText * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadMText * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadMText * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadMText * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadMText * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadMText * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AttachmentPoint )( 
            IAcadMText * This,
            /* [retval][out] */ AcAttachmentPoint *attPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AttachmentPoint )( 
            IAcadMText * This,
            /* [in] */ AcAttachmentPoint attPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DrawingDirection )( 
            IAcadMText * This,
            /* [retval][out] */ AcDrawingDirection *drawDir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DrawingDirection )( 
            IAcadMText * This,
            /* [in] */ AcDrawingDirection drawDir);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadMText * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadMText * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadMText * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadMText * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadMText * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadMText * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadMText * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadMText * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadMText * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadMText * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineSpacingFactor )( 
            IAcadMText * This,
            /* [retval][out] */ double *Factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineSpacingFactor )( 
            IAcadMText * This,
            /* [in] */ double Factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineSpacingStyle )( 
            IAcadMText * This,
            /* [retval][out] */ AcLineSpacingStyle *Style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineSpacingStyle )( 
            IAcadMText * This,
            /* [in] */ AcLineSpacingStyle Style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineSpacingDistance )( 
            IAcadMText * This,
            /* [retval][out] */ double *Value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineSpacingDistance )( 
            IAcadMText * This,
            /* [in] */ double Value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackgroundFill )( 
            IAcadMText * This,
            /* [retval][out] */ VARIANT_BOOL *bUseBackgroundFill);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackgroundFill )( 
            IAcadMText * This,
            /* [in] */ VARIANT_BOOL bUseBackgroundFill);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *FieldCode )( 
            IAcadMText * This,
            /* [retval][out] */ BSTR *bstrText);
        
        END_INTERFACE
    } IAcadMTextVtbl;

    interface IAcadMText
    {
        CONST_VTBL struct IAcadMTextVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMText_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMText_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMText_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMText_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMText_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMText_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMText_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMText_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMText_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMText_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMText_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMText_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMText_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMText_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMText_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMText_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMText_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMText_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMText_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMText_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMText_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMText_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMText_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadMText_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadMText_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadMText_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadMText_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadMText_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadMText_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadMText_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadMText_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadMText_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadMText_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadMText_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadMText_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadMText_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadMText_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadMText_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadMText_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadMText_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadMText_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadMText_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadMText_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadMText_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadMText_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadMText_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadMText_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadMText_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadMText_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadMText_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadMText_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadMText_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadMText_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadMText_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadMText_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadMText_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadMText_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadMText_get_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextString(This,bstrText) ) 

#define IAcadMText_put_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextString(This,bstrText) ) 

#define IAcadMText_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadMText_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadMText_get_AttachmentPoint(This,attPoint)	\
    ( (This)->lpVtbl -> get_AttachmentPoint(This,attPoint) ) 

#define IAcadMText_put_AttachmentPoint(This,attPoint)	\
    ( (This)->lpVtbl -> put_AttachmentPoint(This,attPoint) ) 

#define IAcadMText_get_DrawingDirection(This,drawDir)	\
    ( (This)->lpVtbl -> get_DrawingDirection(This,drawDir) ) 

#define IAcadMText_put_DrawingDirection(This,drawDir)	\
    ( (This)->lpVtbl -> put_DrawingDirection(This,drawDir) ) 

#define IAcadMText_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadMText_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadMText_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadMText_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadMText_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadMText_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadMText_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadMText_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadMText_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadMText_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadMText_get_LineSpacingFactor(This,Factor)	\
    ( (This)->lpVtbl -> get_LineSpacingFactor(This,Factor) ) 

#define IAcadMText_put_LineSpacingFactor(This,Factor)	\
    ( (This)->lpVtbl -> put_LineSpacingFactor(This,Factor) ) 

#define IAcadMText_get_LineSpacingStyle(This,Style)	\
    ( (This)->lpVtbl -> get_LineSpacingStyle(This,Style) ) 

#define IAcadMText_put_LineSpacingStyle(This,Style)	\
    ( (This)->lpVtbl -> put_LineSpacingStyle(This,Style) ) 

#define IAcadMText_get_LineSpacingDistance(This,Value)	\
    ( (This)->lpVtbl -> get_LineSpacingDistance(This,Value) ) 

#define IAcadMText_put_LineSpacingDistance(This,Value)	\
    ( (This)->lpVtbl -> put_LineSpacingDistance(This,Value) ) 

#define IAcadMText_get_BackgroundFill(This,bUseBackgroundFill)	\
    ( (This)->lpVtbl -> get_BackgroundFill(This,bUseBackgroundFill) ) 

#define IAcadMText_put_BackgroundFill(This,bUseBackgroundFill)	\
    ( (This)->lpVtbl -> put_BackgroundFill(This,bUseBackgroundFill) ) 

#define IAcadMText_FieldCode(This,bstrText)	\
    ( (This)->lpVtbl -> FieldCode(This,bstrText) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMText_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMText,0xB992851C,0x8FFD,0x4C8A,0x81,0xF2,0xB4,0x10,0x36,0x99,0x70,0xAA);

#ifdef __cplusplus

class DECLSPEC_UUID("B992851C-8FFD-4C8A-81F2-B410369970AA")
AcadMText;
#endif

#ifndef __IAcadPoint_INTERFACE_DEFINED__
#define __IAcadPoint_INTERFACE_DEFINED__

/* interface IAcadPoint */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPoint,0x6AD09D7A,0xA925,0x45D9,0x99,0xD1,0x6E,0x0E,0x25,0x30,0x17,0x34);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6AD09D7A-A925-45D9-99D1-6E0E25301734")
    IAcadPoint : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPointVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPoint * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPoint * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPoint * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPoint * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPoint * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPoint * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPoint * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPoint * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPoint * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPoint * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPoint * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPoint * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPoint * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPoint * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPoint * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPoint * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPoint * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPoint * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPoint * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPoint * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadPoint * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadPoint * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadPoint * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadPoint * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadPoint * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadPoint * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadPoint * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadPoint * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadPoint * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadPoint * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadPoint * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadPoint * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadPoint * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadPoint * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadPoint * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadPoint * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadPoint * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadPoint * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadPoint * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadPoint * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadPoint * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadPoint * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadPoint * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadPoint * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadPoint * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadPoint * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadPoint * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadPoint * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadPoint * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadPoint * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadPoint * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadPoint * This,
            /* [retval][out] */ VARIANT *coordinates);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadPoint * This,
            /* [in] */ VARIANT coordinates);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadPoint * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadPoint * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadPoint * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadPoint * This,
            /* [in] */ double thickness);
        
        END_INTERFACE
    } IAcadPointVtbl;

    interface IAcadPoint
    {
        CONST_VTBL struct IAcadPointVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPoint_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPoint_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPoint_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPoint_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPoint_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPoint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPoint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPoint_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPoint_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPoint_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPoint_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPoint_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPoint_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPoint_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPoint_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPoint_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPoint_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPoint_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPoint_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPoint_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPoint_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPoint_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPoint_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadPoint_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadPoint_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadPoint_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadPoint_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadPoint_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadPoint_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadPoint_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadPoint_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadPoint_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadPoint_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadPoint_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadPoint_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadPoint_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadPoint_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadPoint_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadPoint_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadPoint_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadPoint_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadPoint_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadPoint_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadPoint_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadPoint_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadPoint_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadPoint_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadPoint_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadPoint_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadPoint_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadPoint_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadPoint_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadPoint_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadPoint_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadPoint_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadPoint_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadPoint_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadPoint_get_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coordinates) ) 

#define IAcadPoint_put_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coordinates) ) 

#define IAcadPoint_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadPoint_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadPoint_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadPoint_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPoint_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPoint,0xCB758EB0,0x0090,0x4DF9,0xA5,0x6C,0x0F,0xA5,0xEF,0x5C,0xDB,0xC6);

#ifdef __cplusplus

class DECLSPEC_UUID("CB758EB0-0090-4DF9-A56C-0FA5EF5CDBC6")
AcadPoint;
#endif

#ifndef __IAcadPolyline_INTERFACE_DEFINED__
#define __IAcadPolyline_INTERFACE_DEFINED__

/* interface IAcadPolyline */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPolyline,0xD5E5DEA6,0xB3A5,0x4FD7,0xA5,0x07,0x5A,0x7F,0x18,0xBE,0xBD,0x10);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D5E5DEA6-B3A5-4FD7-A507-5A7F18BEBD10")
    IAcadPolyline : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendVertex( 
            /* [in] */ VARIANT vertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Explode( 
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBulge( 
            /* [in] */ int index,
            /* [retval][out] */ double *bulge) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBulge( 
            /* [in] */ int index,
            /* [in] */ double bulge) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetWidth( 
            /* [in] */ int Index,
            /* [out] */ double *StartWidth,
            double *EndWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetWidth( 
            /* [in] */ int Index,
            /* [in] */ double StartWidth,
            double EndWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConstantWidth( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ConstantWidth( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Elevation( 
            /* [retval][out] */ double *elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Elevation( 
            /* [in] */ double elevation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ AcPolylineType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
            /* [in] */ AcPolylineType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL *fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinetypeGeneration( 
            /* [retval][out] */ VARIANT_BOOL *bLinetypeGen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinetypeGeneration( 
            /* [in] */ VARIANT_BOOL bLinetypeGen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double *length) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPolylineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPolyline * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPolyline * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPolyline * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPolyline * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPolyline * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPolyline * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPolyline * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPolyline * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPolyline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPolyline * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPolyline * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPolyline * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPolyline * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPolyline * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPolyline * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPolyline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPolyline * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPolyline * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadPolyline * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadPolyline * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadPolyline * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadPolyline * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadPolyline * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadPolyline * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadPolyline * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadPolyline * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadPolyline * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadPolyline * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadPolyline * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadPolyline * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadPolyline * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadPolyline * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadPolyline * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadPolyline * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadPolyline * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadPolyline * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadPolyline * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadPolyline * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadPolyline * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT *coordinates);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT coordinates);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadPolyline * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadPolyline * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendVertex )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT vertex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBulge )( 
            IAcadPolyline * This,
            /* [in] */ int index,
            /* [retval][out] */ double *bulge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBulge )( 
            IAcadPolyline * This,
            /* [in] */ int index,
            /* [in] */ double bulge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidth )( 
            IAcadPolyline * This,
            /* [in] */ int Index,
            /* [out] */ double *StartWidth,
            double *EndWidth);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidth )( 
            IAcadPolyline * This,
            /* [in] */ int Index,
            /* [in] */ double StartWidth,
            double EndWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConstantWidth )( 
            IAcadPolyline * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ConstantWidth )( 
            IAcadPolyline * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadPolyline * This,
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Elevation )( 
            IAcadPolyline * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Elevation )( 
            IAcadPolyline * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IAcadPolyline * This,
            /* [retval][out] */ AcPolylineType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
            IAcadPolyline * This,
            /* [in] */ AcPolylineType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Closed )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *fClose);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Closed )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT_BOOL fClose);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeGeneration )( 
            IAcadPolyline * This,
            /* [retval][out] */ VARIANT_BOOL *bLinetypeGen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeGeneration )( 
            IAcadPolyline * This,
            /* [in] */ VARIANT_BOOL bLinetypeGen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadPolyline * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadPolyline * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadPolyline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Length )( 
            IAcadPolyline * This,
            /* [retval][out] */ double *length);
        
        END_INTERFACE
    } IAcadPolylineVtbl;

    interface IAcadPolyline
    {
        CONST_VTBL struct IAcadPolylineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPolyline_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPolyline_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPolyline_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPolyline_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPolyline_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPolyline_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPolyline_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPolyline_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPolyline_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPolyline_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPolyline_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPolyline_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPolyline_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPolyline_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPolyline_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPolyline_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPolyline_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPolyline_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPolyline_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPolyline_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPolyline_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPolyline_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPolyline_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadPolyline_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadPolyline_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadPolyline_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadPolyline_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadPolyline_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadPolyline_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadPolyline_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadPolyline_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadPolyline_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadPolyline_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadPolyline_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadPolyline_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadPolyline_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadPolyline_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadPolyline_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadPolyline_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadPolyline_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadPolyline_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadPolyline_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadPolyline_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadPolyline_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadPolyline_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadPolyline_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadPolyline_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadPolyline_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadPolyline_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadPolyline_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadPolyline_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadPolyline_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadPolyline_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadPolyline_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadPolyline_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadPolyline_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadPolyline_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadPolyline_get_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coordinates) ) 

#define IAcadPolyline_put_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coordinates) ) 

#define IAcadPolyline_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadPolyline_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadPolyline_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadPolyline_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadPolyline_AppendVertex(This,vertex)	\
    ( (This)->lpVtbl -> AppendVertex(This,vertex) ) 

#define IAcadPolyline_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcadPolyline_GetBulge(This,index,bulge)	\
    ( (This)->lpVtbl -> GetBulge(This,index,bulge) ) 

#define IAcadPolyline_SetBulge(This,index,bulge)	\
    ( (This)->lpVtbl -> SetBulge(This,index,bulge) ) 

#define IAcadPolyline_GetWidth(This,Index,StartWidth,EndWidth)	\
    ( (This)->lpVtbl -> GetWidth(This,Index,StartWidth,EndWidth) ) 

#define IAcadPolyline_SetWidth(This,Index,StartWidth,EndWidth)	\
    ( (This)->lpVtbl -> SetWidth(This,Index,StartWidth,EndWidth) ) 

#define IAcadPolyline_get_ConstantWidth(This,width)	\
    ( (This)->lpVtbl -> get_ConstantWidth(This,width) ) 

#define IAcadPolyline_put_ConstantWidth(This,width)	\
    ( (This)->lpVtbl -> put_ConstantWidth(This,width) ) 

#define IAcadPolyline_Offset(This,Distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,Distance,pOffsetCurves) ) 

#define IAcadPolyline_get_Elevation(This,elevation)	\
    ( (This)->lpVtbl -> get_Elevation(This,elevation) ) 

#define IAcadPolyline_put_Elevation(This,elevation)	\
    ( (This)->lpVtbl -> put_Elevation(This,elevation) ) 

#define IAcadPolyline_get_Type(This,type)	\
    ( (This)->lpVtbl -> get_Type(This,type) ) 

#define IAcadPolyline_put_Type(This,type)	\
    ( (This)->lpVtbl -> put_Type(This,type) ) 

#define IAcadPolyline_get_Closed(This,fClose)	\
    ( (This)->lpVtbl -> get_Closed(This,fClose) ) 

#define IAcadPolyline_put_Closed(This,fClose)	\
    ( (This)->lpVtbl -> put_Closed(This,fClose) ) 

#define IAcadPolyline_get_LinetypeGeneration(This,bLinetypeGen)	\
    ( (This)->lpVtbl -> get_LinetypeGeneration(This,bLinetypeGen) ) 

#define IAcadPolyline_put_LinetypeGeneration(This,bLinetypeGen)	\
    ( (This)->lpVtbl -> put_LinetypeGeneration(This,bLinetypeGen) ) 

#define IAcadPolyline_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadPolyline_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadPolyline_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#define IAcadPolyline_get_Length(This,length)	\
    ( (This)->lpVtbl -> get_Length(This,length) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPolyline_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPolyline,0xE8B54D88,0xEE03,0x4C0F,0x85,0x8D,0x87,0x90,0x24,0xBB,0x88,0x11);

#ifdef __cplusplus

class DECLSPEC_UUID("E8B54D88-EE03-4C0F-858D-879024BB8811")
AcadPolyline;
#endif

#ifndef __IAcadPolygonMesh_INTERFACE_DEFINED__
#define __IAcadPolygonMesh_INTERFACE_DEFINED__

/* interface IAcadPolygonMesh */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPolygonMesh,0xFD58EA44,0x8301,0x48B1,0x8E,0xCE,0xBD,0x01,0xD9,0x03,0x74,0x90);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FD58EA44-8301-48B1-8ECE-BD01D9037490")
    IAcadPolygonMesh : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coordinates) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MClose( 
            /* [retval][out] */ VARIANT_BOOL *bClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MClose( 
            /* [in] */ VARIANT_BOOL bClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NClose( 
            /* [retval][out] */ VARIANT_BOOL *bClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_NClose( 
            /* [in] */ VARIANT_BOOL bClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MDensity( 
            /* [retval][out] */ long *density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MDensity( 
            /* [in] */ long density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NDensity( 
            /* [retval][out] */ long *density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_NDensity( 
            /* [in] */ long density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MVertexCount( 
            /* [retval][out] */ long *Count) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NVertexCount( 
            /* [retval][out] */ long *Count) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ AcPolymeshType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
            /* [in] */ AcPolymeshType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendVertex( 
            /* [in] */ VARIANT vertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Explode( 
            /* [retval][out] */ VARIANT *pArrayObjs) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPolygonMeshVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPolygonMesh * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPolygonMesh * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPolygonMesh * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPolygonMesh * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPolygonMesh * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPolygonMesh * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPolygonMesh * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPolygonMesh * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPolygonMesh * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPolygonMesh * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadPolygonMesh * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadPolygonMesh * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadPolygonMesh * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadPolygonMesh * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadPolygonMesh * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadPolygonMesh * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadPolygonMesh * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadPolygonMesh * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadPolygonMesh * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadPolygonMesh * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadPolygonMesh * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadPolygonMesh * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadPolygonMesh * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ VARIANT *coordinates);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT coordinates);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MClose )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bClose);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MClose )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT_BOOL bClose);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NClose )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bClose);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_NClose )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT_BOOL bClose);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MDensity )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MDensity )( 
            IAcadPolygonMesh * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NDensity )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_NDensity )( 
            IAcadPolygonMesh * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MVertexCount )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ long *Count);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NVertexCount )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ long *Count);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ AcPolymeshType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
            IAcadPolygonMesh * This,
            /* [in] */ AcPolymeshType type);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendVertex )( 
            IAcadPolygonMesh * This,
            /* [in] */ VARIANT vertex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadPolygonMesh * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadPolygonMesh * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadPolygonMesh * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        END_INTERFACE
    } IAcadPolygonMeshVtbl;

    interface IAcadPolygonMesh
    {
        CONST_VTBL struct IAcadPolygonMeshVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPolygonMesh_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPolygonMesh_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPolygonMesh_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPolygonMesh_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPolygonMesh_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPolygonMesh_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPolygonMesh_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPolygonMesh_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPolygonMesh_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPolygonMesh_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPolygonMesh_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPolygonMesh_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPolygonMesh_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPolygonMesh_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPolygonMesh_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPolygonMesh_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPolygonMesh_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPolygonMesh_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPolygonMesh_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPolygonMesh_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPolygonMesh_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPolygonMesh_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPolygonMesh_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadPolygonMesh_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadPolygonMesh_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadPolygonMesh_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadPolygonMesh_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadPolygonMesh_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadPolygonMesh_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadPolygonMesh_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadPolygonMesh_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadPolygonMesh_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadPolygonMesh_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadPolygonMesh_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadPolygonMesh_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadPolygonMesh_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadPolygonMesh_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadPolygonMesh_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadPolygonMesh_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadPolygonMesh_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadPolygonMesh_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadPolygonMesh_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadPolygonMesh_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadPolygonMesh_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadPolygonMesh_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadPolygonMesh_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadPolygonMesh_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadPolygonMesh_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadPolygonMesh_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadPolygonMesh_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadPolygonMesh_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadPolygonMesh_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadPolygonMesh_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadPolygonMesh_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadPolygonMesh_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadPolygonMesh_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadPolygonMesh_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadPolygonMesh_get_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coordinates) ) 

#define IAcadPolygonMesh_put_Coordinates(This,coordinates)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coordinates) ) 

#define IAcadPolygonMesh_get_MClose(This,bClose)	\
    ( (This)->lpVtbl -> get_MClose(This,bClose) ) 

#define IAcadPolygonMesh_put_MClose(This,bClose)	\
    ( (This)->lpVtbl -> put_MClose(This,bClose) ) 

#define IAcadPolygonMesh_get_NClose(This,bClose)	\
    ( (This)->lpVtbl -> get_NClose(This,bClose) ) 

#define IAcadPolygonMesh_put_NClose(This,bClose)	\
    ( (This)->lpVtbl -> put_NClose(This,bClose) ) 

#define IAcadPolygonMesh_get_MDensity(This,density)	\
    ( (This)->lpVtbl -> get_MDensity(This,density) ) 

#define IAcadPolygonMesh_put_MDensity(This,density)	\
    ( (This)->lpVtbl -> put_MDensity(This,density) ) 

#define IAcadPolygonMesh_get_NDensity(This,density)	\
    ( (This)->lpVtbl -> get_NDensity(This,density) ) 

#define IAcadPolygonMesh_put_NDensity(This,density)	\
    ( (This)->lpVtbl -> put_NDensity(This,density) ) 

#define IAcadPolygonMesh_get_MVertexCount(This,Count)	\
    ( (This)->lpVtbl -> get_MVertexCount(This,Count) ) 

#define IAcadPolygonMesh_get_NVertexCount(This,Count)	\
    ( (This)->lpVtbl -> get_NVertexCount(This,Count) ) 

#define IAcadPolygonMesh_get_Type(This,type)	\
    ( (This)->lpVtbl -> get_Type(This,type) ) 

#define IAcadPolygonMesh_put_Type(This,type)	\
    ( (This)->lpVtbl -> put_Type(This,type) ) 

#define IAcadPolygonMesh_AppendVertex(This,vertex)	\
    ( (This)->lpVtbl -> AppendVertex(This,vertex) ) 

#define IAcadPolygonMesh_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcadPolygonMesh_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadPolygonMesh_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPolygonMesh_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPolygonMesh,0x84D6D3CF,0xAB24,0x491C,0x9C,0xE3,0x47,0xB9,0xA8,0xCE,0xE3,0x10);

#ifdef __cplusplus

class DECLSPEC_UUID("84D6D3CF-AB24-491C-9CE3-47B9A8CEE310")
AcadPolygonMesh;
#endif

#ifndef __IAcadRay_INTERFACE_DEFINED__
#define __IAcadRay_INTERFACE_DEFINED__

/* interface IAcadRay */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadRay,0xB8F2DD54,0x0AFB,0x4001,0x8E,0x90,0xEF,0x7C,0xAE,0xAF,0x85,0x14);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B8F2DD54-0AFB-4001-8E90-EF7CAEAF8514")
    IAcadRay : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePoint( 
            /* [retval][out] */ VARIANT *basePoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePoint( 
            /* [in] */ VARIANT basePoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SecondPoint( 
            /* [retval][out] */ VARIANT *secondPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SecondPoint( 
            /* [in] */ VARIANT secondPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirectionVector( 
            /* [retval][out] */ VARIANT *dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DirectionVector( 
            /* [in] */ VARIANT dirVector) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadRayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadRay * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadRay * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadRay * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadRay * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadRay * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadRay * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadRay * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadRay * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadRay * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadRay * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadRay * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadRay * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadRay * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadRay * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadRay * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadRay * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadRay * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadRay * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadRay * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadRay * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadRay * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadRay * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadRay * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadRay * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadRay * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadRay * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadRay * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadRay * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadRay * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadRay * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadRay * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadRay * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadRay * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadRay * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadRay * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadRay * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadRay * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadRay * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadRay * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadRay * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadRay * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadRay * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadRay * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadRay * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadRay * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadRay * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadRay * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadRay * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadRay * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadRay * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadRay * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BasePoint )( 
            IAcadRay * This,
            /* [retval][out] */ VARIANT *basePoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BasePoint )( 
            IAcadRay * This,
            /* [in] */ VARIANT basePoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SecondPoint )( 
            IAcadRay * This,
            /* [retval][out] */ VARIANT *secondPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SecondPoint )( 
            IAcadRay * This,
            /* [in] */ VARIANT secondPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DirectionVector )( 
            IAcadRay * This,
            /* [retval][out] */ VARIANT *dirVector);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DirectionVector )( 
            IAcadRay * This,
            /* [in] */ VARIANT dirVector);
        
        END_INTERFACE
    } IAcadRayVtbl;

    interface IAcadRay
    {
        CONST_VTBL struct IAcadRayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadRay_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadRay_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadRay_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadRay_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadRay_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadRay_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadRay_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadRay_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadRay_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadRay_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadRay_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadRay_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadRay_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadRay_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadRay_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadRay_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadRay_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadRay_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadRay_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadRay_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadRay_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadRay_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadRay_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadRay_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadRay_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadRay_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadRay_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadRay_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadRay_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadRay_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadRay_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadRay_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadRay_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadRay_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadRay_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadRay_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadRay_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadRay_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadRay_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadRay_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadRay_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadRay_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadRay_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadRay_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadRay_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadRay_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadRay_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadRay_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadRay_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadRay_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadRay_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadRay_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadRay_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadRay_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadRay_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadRay_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadRay_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadRay_get_BasePoint(This,basePoint)	\
    ( (This)->lpVtbl -> get_BasePoint(This,basePoint) ) 

#define IAcadRay_put_BasePoint(This,basePoint)	\
    ( (This)->lpVtbl -> put_BasePoint(This,basePoint) ) 

#define IAcadRay_get_SecondPoint(This,secondPoint)	\
    ( (This)->lpVtbl -> get_SecondPoint(This,secondPoint) ) 

#define IAcadRay_put_SecondPoint(This,secondPoint)	\
    ( (This)->lpVtbl -> put_SecondPoint(This,secondPoint) ) 

#define IAcadRay_get_DirectionVector(This,dirVector)	\
    ( (This)->lpVtbl -> get_DirectionVector(This,dirVector) ) 

#define IAcadRay_put_DirectionVector(This,dirVector)	\
    ( (This)->lpVtbl -> put_DirectionVector(This,dirVector) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadRay_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadRay,0x806E3509,0xED82,0x4B89,0xAC,0x1C,0x10,0xF2,0xFE,0xCD,0x67,0x44);

#ifdef __cplusplus

class DECLSPEC_UUID("806E3509-ED82-4B89-AC1C-10F2FECD6744")
AcadRay;
#endif

#ifndef __IAcadShape_INTERFACE_DEFINED__
#define __IAcadShape_INTERFACE_DEFINED__

/* interface IAcadShape */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadShape,0xE2197D25,0x7B8A,0x46B6,0xAD,0x9E,0x78,0x90,0x2B,0xF7,0x0F,0x02);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E2197D25-7B8A-46B6-AD9E-78902BF70F02")
    IAcadShape : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObliqueAngle( 
            /* [retval][out] */ ACAD_ANGLE *obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObliqueAngle( 
            /* [in] */ ACAD_ANGLE obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadShapeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadShape * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadShape * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadShape * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadShape * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadShape * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadShape * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadShape * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadShape * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadShape * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadShape * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadShape * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadShape * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadShape * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadShape * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadShape * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadShape * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadShape * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadShape * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadShape * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadShape * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadShape * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadShape * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadShape * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadShape * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadShape * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadShape * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadShape * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadShape * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadShape * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadShape * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadShape * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadShape * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadShape * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadShape * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadShape * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadShape * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadShape * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadShape * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadShape * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadShape * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadShape * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadShape * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadShape * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadShape * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadShape * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadShape * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadShape * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadShape * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadShape * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadShape * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadShape * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadShape * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadShape * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadShape * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadShape * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadShape * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadShape * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadShape * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadShape * This,
            /* [retval][out] */ ACAD_NOUNITS *scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadShape * This,
            /* [in] */ ACAD_NOUNITS scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObliqueAngle )( 
            IAcadShape * This,
            /* [retval][out] */ ACAD_ANGLE *obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObliqueAngle )( 
            IAcadShape * This,
            /* [in] */ ACAD_ANGLE obliAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadShape * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadShape * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadShape * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadShape * This,
            /* [in] */ double thickness);
        
        END_INTERFACE
    } IAcadShapeVtbl;

    interface IAcadShape
    {
        CONST_VTBL struct IAcadShapeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadShape_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadShape_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadShape_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadShape_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadShape_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadShape_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadShape_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadShape_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadShape_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadShape_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadShape_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadShape_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadShape_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadShape_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadShape_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadShape_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadShape_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadShape_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadShape_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadShape_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadShape_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadShape_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadShape_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadShape_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadShape_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadShape_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadShape_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadShape_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadShape_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadShape_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadShape_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadShape_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadShape_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadShape_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadShape_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadShape_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadShape_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadShape_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadShape_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadShape_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadShape_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadShape_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadShape_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadShape_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadShape_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadShape_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadShape_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadShape_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadShape_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadShape_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadShape_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadShape_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadShape_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadShape_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadShape_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadShape_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadShape_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadShape_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadShape_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadShape_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadShape_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadShape_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadShape_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadShape_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadShape_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadShape_get_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scalFactor) ) 

#define IAcadShape_put_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scalFactor) ) 

#define IAcadShape_get_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> get_ObliqueAngle(This,obliAngle) ) 

#define IAcadShape_put_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> put_ObliqueAngle(This,obliAngle) ) 

#define IAcadShape_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadShape_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadShape_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadShape_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadShape_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadShape,0xE6A37037,0x9367,0x4BE1,0x98,0x32,0xD9,0xD3,0x63,0xD7,0xD6,0x4C);

#ifdef __cplusplus

class DECLSPEC_UUID("E6A37037-9367-4BE1-9832-D9D363D7D64C")
AcadShape;
#endif

#ifndef __IAcadSolid_INTERFACE_DEFINED__
#define __IAcadSolid_INTERFACE_DEFINED__

/* interface IAcadSolid */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSolid,0x40B4259C,0xCD6F,0x48F5,0xA6,0x5D,0x44,0x92,0x01,0x71,0x69,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("40B4259C-CD6F-48F5-A65D-44920171695C")
    IAcadSolid : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSolidVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSolid * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSolid * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSolid * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSolid * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSolid * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSolid * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSolid * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSolid * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSolid * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSolid * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSolid * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSolid * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSolid * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSolid * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSolid * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSolid * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSolid * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSolid * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSolid * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSolid * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadSolid * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadSolid * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadSolid * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadSolid * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSolid * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadSolid * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadSolid * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadSolid * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadSolid * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadSolid * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadSolid * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadSolid * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadSolid * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadSolid * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadSolid * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadSolid * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadSolid * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadSolid * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadSolid * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadSolid * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadSolid * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadSolid * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadSolid * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSolid * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadSolid * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSolid * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSolid * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadSolid * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadSolid * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSolid * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSolid * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadSolid * This,
            /* [retval][out] */ VARIANT *corners);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadSolid * This,
            /* [in] */ VARIANT corners);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadSolid * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadSolid * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadSolid * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadSolid * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadSolid * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadSolid * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        END_INTERFACE
    } IAcadSolidVtbl;

    interface IAcadSolid
    {
        CONST_VTBL struct IAcadSolidVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSolid_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSolid_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSolid_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSolid_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSolid_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSolid_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSolid_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSolid_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSolid_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSolid_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSolid_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSolid_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSolid_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSolid_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSolid_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSolid_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSolid_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSolid_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSolid_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSolid_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSolid_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSolid_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSolid_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadSolid_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadSolid_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSolid_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadSolid_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSolid_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadSolid_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSolid_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadSolid_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadSolid_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadSolid_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadSolid_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadSolid_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadSolid_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadSolid_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadSolid_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadSolid_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadSolid_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadSolid_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadSolid_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadSolid_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadSolid_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadSolid_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadSolid_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadSolid_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSolid_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadSolid_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSolid_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadSolid_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadSolid_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSolid_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSolid_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadSolid_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadSolid_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadSolid_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadSolid_get_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> get_Coordinates(This,corners) ) 

#define IAcadSolid_put_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> put_Coordinates(This,corners) ) 

#define IAcadSolid_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadSolid_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadSolid_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadSolid_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadSolid_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadSolid_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSolid_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSolid,0xA4236B96,0x6EB4,0x49AA,0x88,0xDC,0xE4,0x4E,0xE4,0x58,0xF8,0x1E);

#ifdef __cplusplus

class DECLSPEC_UUID("A4236B96-6EB4-49AA-88DC-E44EE458F81E")
AcadSolid;
#endif

#ifndef __IAcadSpline_INTERFACE_DEFINED__
#define __IAcadSpline_INTERFACE_DEFINED__

/* interface IAcadSpline */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSpline,0x48F16A9E,0x62A2,0x4F18,0xB5,0x67,0x23,0xE7,0xFF,0xA7,0x00,0xDF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("48F16A9E-62A2-4F18-B567-23E7FFA700DF")
    IAcadSpline : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfControlPoints( 
            /* [retval][out] */ long *numCtrlPoints) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ControlPoints( 
            /* [retval][out] */ VARIANT *controlPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ControlPoints( 
            /* [in] */ VARIANT controlPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfFitPoints( 
            /* [retval][out] */ long *numFitPoints) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FitPoints( 
            /* [retval][out] */ VARIANT *fitPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FitPoints( 
            /* [in] */ VARIANT fitPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Degree( 
            /* [retval][out] */ long *degree) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL *fClose) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsPlanar( 
            /* [retval][out] */ VARIANT_BOOL *fPlanar) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsRational( 
            /* [retval][out] */ VARIANT_BOOL *fRational) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsPeriodic( 
            /* [retval][out] */ VARIANT_BOOL *fPeriodic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartTangent( 
            /* [retval][out] */ VARIANT *startTangent) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartTangent( 
            /* [in] */ VARIANT startTangent) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndTangent( 
            /* [retval][out] */ VARIANT *endTangent) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndTangent( 
            /* [in] */ VARIANT endTangent) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FitTolerance( 
            /* [retval][out] */ double *fitTol) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FitTolerance( 
            /* [in] */ double fitTol) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double *area) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetControlPoint( 
            /* [in] */ int Index,
            /* [in] */ VARIANT ControlPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetControlPoint( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *ControlPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFitPoint( 
            /* [in] */ int Index,
            /* [in] */ VARIANT FitPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFitPoint( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *FitPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetWeight( 
            /* [in] */ int Index,
            /* [in] */ double Weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetWeight( 
            /* [in] */ int Index,
            /* [retval][out] */ double *Weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddFitPoint( 
            /* [in] */ int Index,
            /* [in] */ VARIANT FitPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteFitPoint( 
            /* [in] */ int Index) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ElevateOrder( 
            /* [in] */ int Order) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE PurgeFitData( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Reverse( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Knots( 
            /* [retval][out] */ VARIANT *KnotValues) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Knots( 
            /* [in] */ VARIANT KnotValues) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Weights( 
            /* [retval][out] */ VARIANT *WeightValues) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Weights( 
            /* [in] */ VARIANT WeightValues) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSplineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSpline * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSpline * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSpline * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSpline * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSpline * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSpline * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSpline * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSpline * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSpline * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSpline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSpline * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSpline * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSpline * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSpline * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSpline * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSpline * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSpline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSpline * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSpline * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadSpline * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadSpline * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadSpline * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadSpline * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSpline * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadSpline * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadSpline * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadSpline * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadSpline * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadSpline * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadSpline * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadSpline * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadSpline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadSpline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadSpline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadSpline * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadSpline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadSpline * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadSpline * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadSpline * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadSpline * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadSpline * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSpline * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadSpline * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSpline * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSpline * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadSpline * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadSpline * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSpline * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSpline * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfControlPoints )( 
            IAcadSpline * This,
            /* [retval][out] */ long *numCtrlPoints);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ControlPoints )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT *controlPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ControlPoints )( 
            IAcadSpline * This,
            /* [in] */ VARIANT controlPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfFitPoints )( 
            IAcadSpline * This,
            /* [retval][out] */ long *numFitPoints);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FitPoints )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT *fitPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FitPoints )( 
            IAcadSpline * This,
            /* [in] */ VARIANT fitPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Degree )( 
            IAcadSpline * This,
            /* [retval][out] */ long *degree);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Closed )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT_BOOL *fClose);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsPlanar )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT_BOOL *fPlanar);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsRational )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT_BOOL *fRational);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsPeriodic )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT_BOOL *fPeriodic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartTangent )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT *startTangent);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartTangent )( 
            IAcadSpline * This,
            /* [in] */ VARIANT startTangent);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndTangent )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT *endTangent);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndTangent )( 
            IAcadSpline * This,
            /* [in] */ VARIANT endTangent);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FitTolerance )( 
            IAcadSpline * This,
            /* [retval][out] */ double *fitTol);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FitTolerance )( 
            IAcadSpline * This,
            /* [in] */ double fitTol);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Area )( 
            IAcadSpline * This,
            /* [retval][out] */ double *area);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetControlPoint )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT ControlPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetControlPoint )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *ControlPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFitPoint )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT FitPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFitPoint )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *FitPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetWeight )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [in] */ double Weight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetWeight )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [retval][out] */ double *Weight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddFitPoint )( 
            IAcadSpline * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT FitPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteFitPoint )( 
            IAcadSpline * This,
            /* [in] */ int Index);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ElevateOrder )( 
            IAcadSpline * This,
            /* [in] */ int Order);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadSpline * This,
            /* [in] */ double Distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *PurgeFitData )( 
            IAcadSpline * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Reverse )( 
            IAcadSpline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Knots )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT *KnotValues);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Knots )( 
            IAcadSpline * This,
            /* [in] */ VARIANT KnotValues);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Weights )( 
            IAcadSpline * This,
            /* [retval][out] */ VARIANT *WeightValues);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Weights )( 
            IAcadSpline * This,
            /* [in] */ VARIANT WeightValues);
        
        END_INTERFACE
    } IAcadSplineVtbl;

    interface IAcadSpline
    {
        CONST_VTBL struct IAcadSplineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSpline_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSpline_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSpline_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSpline_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSpline_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSpline_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSpline_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSpline_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSpline_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSpline_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSpline_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSpline_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSpline_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSpline_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSpline_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSpline_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSpline_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSpline_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSpline_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSpline_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSpline_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSpline_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSpline_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadSpline_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadSpline_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSpline_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadSpline_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSpline_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadSpline_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSpline_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadSpline_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadSpline_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadSpline_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadSpline_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadSpline_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadSpline_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadSpline_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadSpline_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadSpline_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadSpline_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadSpline_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadSpline_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadSpline_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadSpline_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadSpline_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadSpline_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadSpline_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSpline_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadSpline_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSpline_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadSpline_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadSpline_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSpline_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSpline_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadSpline_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadSpline_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadSpline_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadSpline_get_NumberOfControlPoints(This,numCtrlPoints)	\
    ( (This)->lpVtbl -> get_NumberOfControlPoints(This,numCtrlPoints) ) 

#define IAcadSpline_get_ControlPoints(This,controlPoint)	\
    ( (This)->lpVtbl -> get_ControlPoints(This,controlPoint) ) 

#define IAcadSpline_put_ControlPoints(This,controlPoint)	\
    ( (This)->lpVtbl -> put_ControlPoints(This,controlPoint) ) 

#define IAcadSpline_get_NumberOfFitPoints(This,numFitPoints)	\
    ( (This)->lpVtbl -> get_NumberOfFitPoints(This,numFitPoints) ) 

#define IAcadSpline_get_FitPoints(This,fitPoint)	\
    ( (This)->lpVtbl -> get_FitPoints(This,fitPoint) ) 

#define IAcadSpline_put_FitPoints(This,fitPoint)	\
    ( (This)->lpVtbl -> put_FitPoints(This,fitPoint) ) 

#define IAcadSpline_get_Degree(This,degree)	\
    ( (This)->lpVtbl -> get_Degree(This,degree) ) 

#define IAcadSpline_get_Closed(This,fClose)	\
    ( (This)->lpVtbl -> get_Closed(This,fClose) ) 

#define IAcadSpline_get_IsPlanar(This,fPlanar)	\
    ( (This)->lpVtbl -> get_IsPlanar(This,fPlanar) ) 

#define IAcadSpline_get_IsRational(This,fRational)	\
    ( (This)->lpVtbl -> get_IsRational(This,fRational) ) 

#define IAcadSpline_get_IsPeriodic(This,fPeriodic)	\
    ( (This)->lpVtbl -> get_IsPeriodic(This,fPeriodic) ) 

#define IAcadSpline_get_StartTangent(This,startTangent)	\
    ( (This)->lpVtbl -> get_StartTangent(This,startTangent) ) 

#define IAcadSpline_put_StartTangent(This,startTangent)	\
    ( (This)->lpVtbl -> put_StartTangent(This,startTangent) ) 

#define IAcadSpline_get_EndTangent(This,endTangent)	\
    ( (This)->lpVtbl -> get_EndTangent(This,endTangent) ) 

#define IAcadSpline_put_EndTangent(This,endTangent)	\
    ( (This)->lpVtbl -> put_EndTangent(This,endTangent) ) 

#define IAcadSpline_get_FitTolerance(This,fitTol)	\
    ( (This)->lpVtbl -> get_FitTolerance(This,fitTol) ) 

#define IAcadSpline_put_FitTolerance(This,fitTol)	\
    ( (This)->lpVtbl -> put_FitTolerance(This,fitTol) ) 

#define IAcadSpline_get_Area(This,area)	\
    ( (This)->lpVtbl -> get_Area(This,area) ) 

#define IAcadSpline_SetControlPoint(This,Index,ControlPoint)	\
    ( (This)->lpVtbl -> SetControlPoint(This,Index,ControlPoint) ) 

#define IAcadSpline_GetControlPoint(This,Index,ControlPoint)	\
    ( (This)->lpVtbl -> GetControlPoint(This,Index,ControlPoint) ) 

#define IAcadSpline_SetFitPoint(This,Index,FitPoint)	\
    ( (This)->lpVtbl -> SetFitPoint(This,Index,FitPoint) ) 

#define IAcadSpline_GetFitPoint(This,Index,FitPoint)	\
    ( (This)->lpVtbl -> GetFitPoint(This,Index,FitPoint) ) 

#define IAcadSpline_SetWeight(This,Index,Weight)	\
    ( (This)->lpVtbl -> SetWeight(This,Index,Weight) ) 

#define IAcadSpline_GetWeight(This,Index,Weight)	\
    ( (This)->lpVtbl -> GetWeight(This,Index,Weight) ) 

#define IAcadSpline_AddFitPoint(This,Index,FitPoint)	\
    ( (This)->lpVtbl -> AddFitPoint(This,Index,FitPoint) ) 

#define IAcadSpline_DeleteFitPoint(This,Index)	\
    ( (This)->lpVtbl -> DeleteFitPoint(This,Index) ) 

#define IAcadSpline_ElevateOrder(This,Order)	\
    ( (This)->lpVtbl -> ElevateOrder(This,Order) ) 

#define IAcadSpline_Offset(This,Distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,Distance,pOffsetCurves) ) 

#define IAcadSpline_PurgeFitData(This)	\
    ( (This)->lpVtbl -> PurgeFitData(This) ) 

#define IAcadSpline_Reverse(This)	\
    ( (This)->lpVtbl -> Reverse(This) ) 

#define IAcadSpline_get_Knots(This,KnotValues)	\
    ( (This)->lpVtbl -> get_Knots(This,KnotValues) ) 

#define IAcadSpline_put_Knots(This,KnotValues)	\
    ( (This)->lpVtbl -> put_Knots(This,KnotValues) ) 

#define IAcadSpline_get_Weights(This,WeightValues)	\
    ( (This)->lpVtbl -> get_Weights(This,WeightValues) ) 

#define IAcadSpline_put_Weights(This,WeightValues)	\
    ( (This)->lpVtbl -> put_Weights(This,WeightValues) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSpline_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSpline,0x0CD182D2,0x2865,0x4233,0x81,0x90,0x95,0xEE,0xC9,0xA7,0x99,0x97);

#ifdef __cplusplus

class DECLSPEC_UUID("0CD182D2-2865-4233-8190-95EEC9A79997")
AcadSpline;
#endif

#ifndef __IAcadText_INTERFACE_DEFINED__
#define __IAcadText_INTERFACE_DEFINED__

/* interface IAcadText */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadText,0x06D87DCB,0xC57E,0x4EB1,0x87,0x0D,0x00,0xCE,0x26,0x96,0x1B,0x8E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("06D87DCB-C57E-4EB1-870D-00CE26961B8E")
    IAcadText : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Alignment( 
            /* [retval][out] */ AcAlignment *align) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Alignment( 
            /* [in] */ AcAlignment align) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalAlignment( 
            /* [retval][out] */ AcHorizontalAlignment *horizAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalAlignment( 
            /* [in] */ AcHorizontalAlignment horizAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalAlignment( 
            /* [retval][out] */ AcVerticalAlignment *vertiAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalAlignment( 
            /* [in] */ AcVerticalAlignment vertiAlign) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS scalFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObliqueAngle( 
            /* [retval][out] */ ACAD_ANGLE *obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObliqueAngle( 
            /* [in] */ ACAD_ANGLE obliAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAlignmentPoint( 
            /* [retval][out] */ VARIANT *alignPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAlignmentPoint( 
            /* [in] */ VARIANT alignPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextGenerationFlag( 
            /* [retval][out] */ long *textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextGenerationFlag( 
            /* [in] */ long textGenFlag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UpsideDown( 
            /* [retval][out] */ VARIANT_BOOL *upsideDown) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UpsideDown( 
            /* [in] */ VARIANT_BOOL upsideDown) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Backward( 
            /* [retval][out] */ VARIANT_BOOL *backward) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Backward( 
            /* [in] */ VARIANT_BOOL backward) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE FieldCode( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadTextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadText * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadText * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadText * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadText * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadText * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadText * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadText * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadText * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadText * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadText * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadText * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadText * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadText * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadText * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadText * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadText * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadText * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadText * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadText * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadText * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadText * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadText * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadText * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadText * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadText * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadText * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadText * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadText * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadText * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadText * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadText * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadText * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadText * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadText * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadText * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadText * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadText * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadText * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadText * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadText * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadText * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadText * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadText * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadText * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadText * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadText * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadText * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadText * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadText * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadText * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Alignment )( 
            IAcadText * This,
            /* [retval][out] */ AcAlignment *align);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Alignment )( 
            IAcadText * This,
            /* [in] */ AcAlignment align);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalAlignment )( 
            IAcadText * This,
            /* [retval][out] */ AcHorizontalAlignment *horizAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalAlignment )( 
            IAcadText * This,
            /* [in] */ AcHorizontalAlignment horizAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalAlignment )( 
            IAcadText * This,
            /* [retval][out] */ AcVerticalAlignment *vertiAlign);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalAlignment )( 
            IAcadText * This,
            /* [in] */ AcVerticalAlignment vertiAlign);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadText * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadText * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadText * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadText * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadText * This,
            /* [retval][out] */ ACAD_NOUNITS *scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadText * This,
            /* [in] */ ACAD_NOUNITS scalFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObliqueAngle )( 
            IAcadText * This,
            /* [retval][out] */ ACAD_ANGLE *obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObliqueAngle )( 
            IAcadText * This,
            /* [in] */ ACAD_ANGLE obliAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextAlignmentPoint )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT *alignPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextAlignmentPoint )( 
            IAcadText * This,
            /* [in] */ VARIANT alignPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadText * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadText * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGenerationFlag )( 
            IAcadText * This,
            /* [retval][out] */ long *textGenFlag);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGenerationFlag )( 
            IAcadText * This,
            /* [in] */ long textGenFlag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadText * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadText * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UpsideDown )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT_BOOL *upsideDown);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UpsideDown )( 
            IAcadText * This,
            /* [in] */ VARIANT_BOOL upsideDown);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Backward )( 
            IAcadText * This,
            /* [retval][out] */ VARIANT_BOOL *backward);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Backward )( 
            IAcadText * This,
            /* [in] */ VARIANT_BOOL backward);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *FieldCode )( 
            IAcadText * This,
            /* [retval][out] */ BSTR *bstrText);
        
        END_INTERFACE
    } IAcadTextVtbl;

    interface IAcadText
    {
        CONST_VTBL struct IAcadTextVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadText_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadText_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadText_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadText_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadText_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadText_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadText_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadText_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadText_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadText_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadText_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadText_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadText_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadText_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadText_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadText_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadText_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadText_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadText_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadText_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadText_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadText_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadText_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadText_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadText_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadText_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadText_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadText_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadText_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadText_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadText_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadText_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadText_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadText_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadText_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadText_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadText_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadText_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadText_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadText_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadText_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadText_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadText_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadText_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadText_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadText_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadText_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadText_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadText_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadText_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadText_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadText_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadText_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadText_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadText_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadText_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadText_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadText_get_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextString(This,bstrText) ) 

#define IAcadText_put_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextString(This,bstrText) ) 

#define IAcadText_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadText_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadText_get_Alignment(This,align)	\
    ( (This)->lpVtbl -> get_Alignment(This,align) ) 

#define IAcadText_put_Alignment(This,align)	\
    ( (This)->lpVtbl -> put_Alignment(This,align) ) 

#define IAcadText_get_HorizontalAlignment(This,horizAlign)	\
    ( (This)->lpVtbl -> get_HorizontalAlignment(This,horizAlign) ) 

#define IAcadText_put_HorizontalAlignment(This,horizAlign)	\
    ( (This)->lpVtbl -> put_HorizontalAlignment(This,horizAlign) ) 

#define IAcadText_get_VerticalAlignment(This,vertiAlign)	\
    ( (This)->lpVtbl -> get_VerticalAlignment(This,vertiAlign) ) 

#define IAcadText_put_VerticalAlignment(This,vertiAlign)	\
    ( (This)->lpVtbl -> put_VerticalAlignment(This,vertiAlign) ) 

#define IAcadText_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadText_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadText_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadText_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadText_get_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scalFactor) ) 

#define IAcadText_put_ScaleFactor(This,scalFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scalFactor) ) 

#define IAcadText_get_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> get_ObliqueAngle(This,obliAngle) ) 

#define IAcadText_put_ObliqueAngle(This,obliAngle)	\
    ( (This)->lpVtbl -> put_ObliqueAngle(This,obliAngle) ) 

#define IAcadText_get_TextAlignmentPoint(This,alignPoint)	\
    ( (This)->lpVtbl -> get_TextAlignmentPoint(This,alignPoint) ) 

#define IAcadText_put_TextAlignmentPoint(This,alignPoint)	\
    ( (This)->lpVtbl -> put_TextAlignmentPoint(This,alignPoint) ) 

#define IAcadText_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadText_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadText_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadText_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadText_get_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> get_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadText_put_TextGenerationFlag(This,textGenFlag)	\
    ( (This)->lpVtbl -> put_TextGenerationFlag(This,textGenFlag) ) 

#define IAcadText_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadText_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadText_get_UpsideDown(This,upsideDown)	\
    ( (This)->lpVtbl -> get_UpsideDown(This,upsideDown) ) 

#define IAcadText_put_UpsideDown(This,upsideDown)	\
    ( (This)->lpVtbl -> put_UpsideDown(This,upsideDown) ) 

#define IAcadText_get_Backward(This,backward)	\
    ( (This)->lpVtbl -> get_Backward(This,backward) ) 

#define IAcadText_put_Backward(This,backward)	\
    ( (This)->lpVtbl -> put_Backward(This,backward) ) 

#define IAcadText_FieldCode(This,bstrText)	\
    ( (This)->lpVtbl -> FieldCode(This,bstrText) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadText_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadText,0x90E52C50,0x7EF4,0x4DC1,0xBD,0xD0,0xE2,0xB8,0xD0,0xD3,0xE4,0xD3);

#ifdef __cplusplus

class DECLSPEC_UUID("90E52C50-7EF4-4DC1-BDD0-E2B8D0D3E4D3")
AcadText;
#endif

#ifndef __IAcadTolerance_INTERFACE_DEFINED__
#define __IAcadTolerance_INTERFACE_DEFINED__

/* interface IAcadTolerance */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadTolerance,0xFBD0E340,0xBFBB,0x494E,0x8B,0x8E,0xFC,0xE5,0x1B,0x03,0xCA,0xB2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FBD0E340-BFBB-494E-8B8E-FCE51B03CAB2")
    IAcadTolerance : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirectionVector( 
            /* [retval][out] */ VARIANT *dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_DirectionVector( 
            /* [in] */ VARIANT dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextColor( 
            /* [retval][out] */ ACAD_COLOR *Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextColor( 
            /* [in] */ ACAD_COLOR Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextString( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextString( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextStyle( 
            /* [retval][out] */ BSTR *style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextStyle( 
            /* [in] */ BSTR style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextHeight( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadToleranceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadTolerance * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadTolerance * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadTolerance * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadTolerance * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadTolerance * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadTolerance * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadTolerance * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadTolerance * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadTolerance * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadTolerance * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadTolerance * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadTolerance * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadTolerance * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadTolerance * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadTolerance * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadTolerance * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadTolerance * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadTolerance * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadTolerance * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadTolerance * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadTolerance * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadTolerance * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadTolerance * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadTolerance * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadTolerance * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadTolerance * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadTolerance * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadTolerance * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadTolerance * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadTolerance * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadTolerance * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadTolerance * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadTolerance * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadTolerance * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadTolerance * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadTolerance * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadTolerance * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadTolerance * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadTolerance * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadTolerance * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DirectionVector )( 
            IAcadTolerance * This,
            /* [retval][out] */ VARIANT *dirVector);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DirectionVector )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT dirVector);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadTolerance * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadTolerance * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadTolerance * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadTolerance * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadTolerance * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadTolerance * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextString )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextString )( 
            IAcadTolerance * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadTolerance * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadTolerance * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadTolerance * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadTolerance * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadTolerance * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadTolerance * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadTolerance * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadTolerance * This,
            /* [in] */ ACAD_COLOR Type);
        
        END_INTERFACE
    } IAcadToleranceVtbl;

    interface IAcadTolerance
    {
        CONST_VTBL struct IAcadToleranceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadTolerance_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadTolerance_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadTolerance_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadTolerance_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadTolerance_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadTolerance_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadTolerance_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadTolerance_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadTolerance_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadTolerance_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadTolerance_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadTolerance_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadTolerance_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadTolerance_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadTolerance_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadTolerance_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadTolerance_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadTolerance_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadTolerance_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadTolerance_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadTolerance_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadTolerance_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadTolerance_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadTolerance_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadTolerance_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadTolerance_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadTolerance_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadTolerance_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadTolerance_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadTolerance_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadTolerance_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadTolerance_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadTolerance_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadTolerance_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadTolerance_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadTolerance_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadTolerance_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadTolerance_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadTolerance_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadTolerance_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadTolerance_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadTolerance_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadTolerance_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadTolerance_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadTolerance_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadTolerance_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadTolerance_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadTolerance_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadTolerance_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadTolerance_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadTolerance_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadTolerance_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadTolerance_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadTolerance_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadTolerance_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadTolerance_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadTolerance_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadTolerance_get_DirectionVector(This,dirVector)	\
    ( (This)->lpVtbl -> get_DirectionVector(This,dirVector) ) 

#define IAcadTolerance_put_DirectionVector(This,dirVector)	\
    ( (This)->lpVtbl -> put_DirectionVector(This,dirVector) ) 

#define IAcadTolerance_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadTolerance_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadTolerance_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadTolerance_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadTolerance_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadTolerance_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadTolerance_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadTolerance_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadTolerance_get_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextString(This,bstrText) ) 

#define IAcadTolerance_put_TextString(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextString(This,bstrText) ) 

#define IAcadTolerance_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadTolerance_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadTolerance_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadTolerance_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadTolerance_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadTolerance_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadTolerance_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadTolerance_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadTolerance_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadTolerance,0xFF10AB5B,0xC276,0x4FF6,0xA8,0x56,0xB4,0x0C,0x4C,0x34,0x89,0x77);

#ifdef __cplusplus

class DECLSPEC_UUID("FF10AB5B-C276-4FF6-A856-B40C4C348977")
AcadTolerance;
#endif

#ifndef __IAcadTrace_INTERFACE_DEFINED__
#define __IAcadTrace_INTERFACE_DEFINED__

/* interface IAcadTrace */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadTrace,0x534D33FB,0x13BF,0x46E8,0xB3,0xF1,0xB8,0xAF,0xA2,0x1E,0x41,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("534D33FB-13BF-46E8-B3F1-B8AFA21E4156")
    IAcadTrace : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double *thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double thickness) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadTraceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadTrace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadTrace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadTrace * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadTrace * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadTrace * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadTrace * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadTrace * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadTrace * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadTrace * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadTrace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadTrace * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadTrace * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadTrace * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadTrace * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadTrace * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadTrace * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadTrace * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadTrace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadTrace * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadTrace * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadTrace * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadTrace * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadTrace * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadTrace * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadTrace * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadTrace * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadTrace * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadTrace * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadTrace * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadTrace * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadTrace * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadTrace * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadTrace * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadTrace * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadTrace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadTrace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadTrace * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadTrace * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadTrace * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadTrace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadTrace * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadTrace * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadTrace * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadTrace * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadTrace * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadTrace * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadTrace * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadTrace * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadTrace * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadTrace * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadTrace * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadTrace * This,
            /* [retval][out] */ VARIANT *corners);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadTrace * This,
            /* [in] */ VARIANT corners);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadTrace * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadTrace * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Thickness )( 
            IAcadTrace * This,
            /* [retval][out] */ double *thickness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Thickness )( 
            IAcadTrace * This,
            /* [in] */ double thickness);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadTrace * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadTrace * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        END_INTERFACE
    } IAcadTraceVtbl;

    interface IAcadTrace
    {
        CONST_VTBL struct IAcadTraceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadTrace_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadTrace_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadTrace_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadTrace_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadTrace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadTrace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadTrace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadTrace_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadTrace_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadTrace_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadTrace_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadTrace_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadTrace_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadTrace_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadTrace_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadTrace_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadTrace_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadTrace_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadTrace_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadTrace_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadTrace_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadTrace_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadTrace_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadTrace_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadTrace_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadTrace_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadTrace_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadTrace_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadTrace_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadTrace_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadTrace_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadTrace_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadTrace_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadTrace_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadTrace_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadTrace_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadTrace_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadTrace_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadTrace_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadTrace_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadTrace_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadTrace_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadTrace_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadTrace_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadTrace_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadTrace_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadTrace_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadTrace_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadTrace_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadTrace_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadTrace_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadTrace_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadTrace_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadTrace_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadTrace_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadTrace_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadTrace_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadTrace_get_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> get_Coordinates(This,corners) ) 

#define IAcadTrace_put_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> put_Coordinates(This,corners) ) 

#define IAcadTrace_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadTrace_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadTrace_get_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> get_Thickness(This,thickness) ) 

#define IAcadTrace_put_Thickness(This,thickness)	\
    ( (This)->lpVtbl -> put_Thickness(This,thickness) ) 

#define IAcadTrace_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadTrace_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadTrace_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadTrace,0xB8C86F77,0x7A21,0x4448,0x85,0xE5,0x92,0xFE,0x27,0xA6,0x56,0x94);

#ifdef __cplusplus

class DECLSPEC_UUID("B8C86F77-7A21-4448-85E5-92FE27A65694")
AcadTrace;
#endif

#ifndef __IAcadXline_INTERFACE_DEFINED__
#define __IAcadXline_INTERFACE_DEFINED__

/* interface IAcadXline */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadXline,0x103A15FD,0x2195,0x4701,0xB6,0xFF,0xA0,0xF3,0x35,0x5D,0xB2,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("103A15FD-2195-4701-B6FF-A0F3355DB25C")
    IAcadXline : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePoint( 
            /* [retval][out] */ VARIANT *basePoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePoint( 
            /* [in] */ VARIANT basePoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SecondPoint( 
            /* [retval][out] */ VARIANT *secondPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SecondPoint( 
            /* [in] */ VARIANT secondPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirectionVector( 
            /* [retval][out] */ VARIANT *dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DirectionVector( 
            /* [in] */ VARIANT dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Offset( 
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadXlineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadXline * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadXline * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadXline * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadXline * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadXline * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadXline * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadXline * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadXline * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadXline * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadXline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadXline * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadXline * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadXline * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadXline * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadXline * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadXline * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadXline * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadXline * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadXline * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadXline * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadXline * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadXline * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadXline * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadXline * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadXline * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadXline * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadXline * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadXline * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadXline * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadXline * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadXline * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadXline * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadXline * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadXline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadXline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadXline * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadXline * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadXline * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadXline * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadXline * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadXline * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadXline * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadXline * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadXline * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadXline * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadXline * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadXline * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadXline * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadXline * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadXline * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadXline * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BasePoint )( 
            IAcadXline * This,
            /* [retval][out] */ VARIANT *basePoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BasePoint )( 
            IAcadXline * This,
            /* [in] */ VARIANT basePoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SecondPoint )( 
            IAcadXline * This,
            /* [retval][out] */ VARIANT *secondPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SecondPoint )( 
            IAcadXline * This,
            /* [in] */ VARIANT secondPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DirectionVector )( 
            IAcadXline * This,
            /* [retval][out] */ VARIANT *dirVector);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DirectionVector )( 
            IAcadXline * This,
            /* [in] */ VARIANT dirVector);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Offset )( 
            IAcadXline * This,
            /* [in] */ double distance,
            /* [retval][out] */ VARIANT *pOffsetCurves);
        
        END_INTERFACE
    } IAcadXlineVtbl;

    interface IAcadXline
    {
        CONST_VTBL struct IAcadXlineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadXline_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadXline_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadXline_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadXline_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadXline_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadXline_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadXline_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadXline_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadXline_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadXline_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadXline_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadXline_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadXline_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadXline_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadXline_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadXline_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadXline_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadXline_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadXline_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadXline_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadXline_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadXline_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadXline_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadXline_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadXline_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadXline_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadXline_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadXline_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadXline_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadXline_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadXline_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadXline_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadXline_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadXline_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadXline_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadXline_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadXline_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadXline_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadXline_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadXline_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadXline_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadXline_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadXline_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadXline_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadXline_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadXline_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadXline_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadXline_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadXline_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadXline_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadXline_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadXline_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadXline_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadXline_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadXline_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadXline_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadXline_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadXline_get_BasePoint(This,basePoint)	\
    ( (This)->lpVtbl -> get_BasePoint(This,basePoint) ) 

#define IAcadXline_put_BasePoint(This,basePoint)	\
    ( (This)->lpVtbl -> put_BasePoint(This,basePoint) ) 

#define IAcadXline_get_SecondPoint(This,secondPoint)	\
    ( (This)->lpVtbl -> get_SecondPoint(This,secondPoint) ) 

#define IAcadXline_put_SecondPoint(This,secondPoint)	\
    ( (This)->lpVtbl -> put_SecondPoint(This,secondPoint) ) 

#define IAcadXline_get_DirectionVector(This,dirVector)	\
    ( (This)->lpVtbl -> get_DirectionVector(This,dirVector) ) 

#define IAcadXline_put_DirectionVector(This,dirVector)	\
    ( (This)->lpVtbl -> put_DirectionVector(This,dirVector) ) 

#define IAcadXline_Offset(This,distance,pOffsetCurves)	\
    ( (This)->lpVtbl -> Offset(This,distance,pOffsetCurves) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadXline_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadXline,0x9C8747C8,0x244B,0x42ED,0xB6,0x9F,0x15,0x36,0xD8,0x3E,0x85,0x04);

#ifdef __cplusplus

class DECLSPEC_UUID("9C8747C8-244B-42ED-B69F-1536D83E8504")
AcadXline;
#endif

#ifndef __IAcadPViewport_INTERFACE_DEFINED__
#define __IAcadPViewport_INTERFACE_DEFINED__

/* interface IAcadPViewport */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPViewport,0x31E79643,0xC695,0x4F82,0x94,0xB4,0xBC,0xAB,0x62,0xD2,0x00,0xDA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("31E79643-C695-4F82-94B4-BCAB62D200DA")
    IAcadPViewport : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *centerPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT centerPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT *dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT dirVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_GridOn( 
            /* [retval][out] */ VARIANT_BOOL *bGridOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_GridOn( 
            /* [in] */ VARIANT_BOOL bGridOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewportOn( 
            /* [retval][out] */ VARIANT_BOOL *bOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ViewportOn( 
            /* [in] */ VARIANT_BOOL bOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Clipped( 
            /* [retval][out] */ VARIANT_BOOL *bClipped) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisplayLocked( 
            /* [retval][out] */ VARIANT_BOOL *bLocked) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisplayLocked( 
            /* [in] */ VARIANT_BOOL bLocked) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StandardScale( 
            /* [retval][out] */ AcViewportScale *scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StandardScale( 
            /* [in] */ AcViewportScale scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CustomScale( 
            /* [retval][out] */ double *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CustomScale( 
            /* [in] */ double Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleSheet( 
            /* [retval][out] */ BSTR *pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleSheet( 
            /* [in] */ BSTR pName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UCSPerViewport( 
            /* [retval][out] */ VARIANT_BOOL *UCSSaved) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UCSPerViewport( 
            /* [in] */ VARIANT_BOOL UCSSaved) = 0;
        
        virtual /* [helpstringcontext][nonbrowsable][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SnapBasePoint( 
            /* [retval][out] */ VARIANT *lowLeft) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_SnapBasePoint( 
            /* [in] */ VARIANT lowLeft) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_SnapOn( 
            /* [retval][out] */ VARIANT_BOOL *bSnapOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_SnapOn( 
            /* [in] */ VARIANT_BOOL bSnapOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_SnapRotationAngle( 
            /* [retval][out] */ double *angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_SnapRotationAngle( 
            /* [in] */ double angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_UCSIconOn( 
            /* [retval][out] */ VARIANT_BOOL *bIconOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_UCSIconOn( 
            /* [in] */ VARIANT_BOOL bIconOn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_UCSIconAtOrigin( 
            /* [retval][out] */ VARIANT_BOOL *bIconAtOrigin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_UCSIconAtOrigin( 
            /* [in] */ VARIANT_BOOL bIconAtOrigin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridSpacing( 
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridSpacing( 
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetSnapSpacing( 
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetSnapSpacing( 
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Display( 
            /* [in] */ VARIANT_BOOL bStatus) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_TwistAngle( 
            /* [retval][out] */ ACAD_ANGLE *angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_TwistAngle( 
            /* [in] */ ACAD_ANGLE angle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_LensLength( 
            /* [retval][out] */ double *Length) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_LensLength( 
            /* [in] */ double Length) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemoveHiddenLines( 
            /* [retval][out] */ VARIANT_BOOL *bRemoval) = 0;
        
        virtual /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_RemoveHiddenLines( 
            /* [in] */ VARIANT_BOOL bRemoval) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Target( 
            /* [retval][out] */ VARIANT *targetPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Target( 
            /* [in] */ VARIANT targetPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcSmoothness( 
            /* [retval][out] */ long *arcSmooth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArcSmoothness( 
            /* [in] */ long arcSmooth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisualStyle( 
            /* [retval][out] */ int *pVisualStyleIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VisualStyle( 
            /* [in] */ int visualStyleIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShadePlot( 
            /* [retval][out] */ int *pShadePlotIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShadePlot( 
            /* [in] */ int shadePlotIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelView( 
            /* [retval][out] */ IAcadView **View) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ModelView( 
            /* [in] */ IAcadView *View) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetView( 
            /* [retval][out] */ IAcadView **View) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SheetView( 
            /* [in] */ IAcadView *View) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LabelBlockId( 
            /* [retval][out] */ LONG_PTR *ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LabelBlockId( 
            /* [in] */ LONG_PTR *ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasSheetView( 
            /* [retval][out] */ VARIANT_BOOL *bSheetView) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SyncModelView( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LabelBlockId32( 
            /* [retval][out] */ LONG *ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LabelBlockId32( 
            /* [in] */ LONG *ObjectID) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StandardScale2( 
            /* [retval][out] */ int *scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StandardScale2( 
            /* [in] */ int scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerPropertyOverrides( 
            /* [retval][out] */ VARIANT_BOOL *bOverrides) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPViewportVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPViewport * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPViewport * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPViewport * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPViewport * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPViewport * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPViewport * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPViewport * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPViewport * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPViewport * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPViewport * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPViewport * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPViewport * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPViewport * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPViewport * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPViewport * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPViewport * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPViewport * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPViewport * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadPViewport * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadPViewport * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadPViewport * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadPViewport * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadPViewport * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadPViewport * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadPViewport * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadPViewport * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadPViewport * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadPViewport * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadPViewport * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadPViewport * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadPViewport * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadPViewport * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadPViewport * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadPViewport * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadPViewport * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadPViewport * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadPViewport * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadPViewport * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT *centerPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT centerPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT *dirVector);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Direction )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT dirVector);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_GridOn )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bGridOn);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_GridOn )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bGridOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadPViewport * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadPViewport * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadPViewport * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadPViewport * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ViewportOn )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bOn);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ViewportOn )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bOn);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Clipped )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bClipped);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayLocked )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bLocked);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayLocked )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bLocked);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StandardScale )( 
            IAcadPViewport * This,
            /* [retval][out] */ AcViewportScale *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StandardScale )( 
            IAcadPViewport * This,
            /* [in] */ AcViewportScale scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CustomScale )( 
            IAcadPViewport * This,
            /* [retval][out] */ double *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CustomScale )( 
            IAcadPViewport * This,
            /* [in] */ double Scale);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleSheet )( 
            IAcadPViewport * This,
            /* [retval][out] */ BSTR *pName);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleSheet )( 
            IAcadPViewport * This,
            /* [in] */ BSTR pName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UCSPerViewport )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *UCSSaved);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UCSPerViewport )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL UCSSaved);
        
        /* [helpstringcontext][nonbrowsable][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapBasePoint )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT *lowLeft);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapBasePoint )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT lowLeft);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapOn )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bSnapOn);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapOn )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bSnapOn);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapRotationAngle )( 
            IAcadPViewport * This,
            /* [retval][out] */ double *angle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapRotationAngle )( 
            IAcadPViewport * This,
            /* [in] */ double angle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UCSIconOn )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bIconOn);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UCSIconOn )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bIconOn);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UCSIconAtOrigin )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bIconAtOrigin);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UCSIconAtOrigin )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bIconAtOrigin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridSpacing )( 
            IAcadPViewport * This,
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridSpacing )( 
            IAcadPViewport * This,
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetSnapSpacing )( 
            IAcadPViewport * This,
            /* [out] */ double *XSpacing,
            /* [out] */ double *YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetSnapSpacing )( 
            IAcadPViewport * This,
            /* [in] */ double XSpacing,
            /* [in] */ double YSpacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Display )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bStatus);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TwistAngle )( 
            IAcadPViewport * This,
            /* [retval][out] */ ACAD_ANGLE *angle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TwistAngle )( 
            IAcadPViewport * This,
            /* [in] */ ACAD_ANGLE angle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LensLength )( 
            IAcadPViewport * This,
            /* [retval][out] */ double *Length);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LensLength )( 
            IAcadPViewport * This,
            /* [in] */ double Length);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemoveHiddenLines )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bRemoval);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RemoveHiddenLines )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT_BOOL bRemoval);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Target )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT *targetPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Target )( 
            IAcadPViewport * This,
            /* [in] */ VARIANT targetPoint);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArcSmoothness )( 
            IAcadPViewport * This,
            /* [retval][out] */ long *arcSmooth);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArcSmoothness )( 
            IAcadPViewport * This,
            /* [in] */ long arcSmooth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VisualStyle )( 
            IAcadPViewport * This,
            /* [retval][out] */ int *pVisualStyleIndex);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VisualStyle )( 
            IAcadPViewport * This,
            /* [in] */ int visualStyleIndex);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShadePlot )( 
            IAcadPViewport * This,
            /* [retval][out] */ int *pShadePlotIndex);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShadePlot )( 
            IAcadPViewport * This,
            /* [in] */ int shadePlotIndex);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModelView )( 
            IAcadPViewport * This,
            /* [retval][out] */ IAcadView **View);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ModelView )( 
            IAcadPViewport * This,
            /* [in] */ IAcadView *View);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SheetView )( 
            IAcadPViewport * This,
            /* [retval][out] */ IAcadView **View);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SheetView )( 
            IAcadPViewport * This,
            /* [in] */ IAcadView *View);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LabelBlockId )( 
            IAcadPViewport * This,
            /* [retval][out] */ LONG_PTR *ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LabelBlockId )( 
            IAcadPViewport * This,
            /* [in] */ LONG_PTR *ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasSheetView )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bSheetView);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SyncModelView )( 
            IAcadPViewport * This);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LabelBlockId32 )( 
            IAcadPViewport * This,
            /* [retval][out] */ LONG *ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LabelBlockId32 )( 
            IAcadPViewport * This,
            /* [in] */ LONG *ObjectID);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StandardScale2 )( 
            IAcadPViewport * This,
            /* [retval][out] */ int *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StandardScale2 )( 
            IAcadPViewport * This,
            /* [in] */ int scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LayerPropertyOverrides )( 
            IAcadPViewport * This,
            /* [retval][out] */ VARIANT_BOOL *bOverrides);
        
        END_INTERFACE
    } IAcadPViewportVtbl;

    interface IAcadPViewport
    {
        CONST_VTBL struct IAcadPViewportVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPViewport_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPViewport_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPViewport_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPViewport_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPViewport_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPViewport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPViewport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPViewport_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPViewport_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPViewport_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPViewport_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPViewport_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPViewport_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPViewport_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPViewport_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPViewport_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPViewport_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPViewport_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPViewport_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPViewport_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPViewport_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPViewport_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPViewport_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadPViewport_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadPViewport_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadPViewport_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadPViewport_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadPViewport_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadPViewport_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadPViewport_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadPViewport_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadPViewport_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadPViewport_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadPViewport_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadPViewport_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadPViewport_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadPViewport_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadPViewport_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadPViewport_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadPViewport_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadPViewport_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadPViewport_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadPViewport_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadPViewport_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadPViewport_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadPViewport_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadPViewport_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadPViewport_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadPViewport_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadPViewport_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadPViewport_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadPViewport_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadPViewport_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadPViewport_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadPViewport_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadPViewport_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadPViewport_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadPViewport_get_Center(This,centerPoint)	\
    ( (This)->lpVtbl -> get_Center(This,centerPoint) ) 

#define IAcadPViewport_put_Center(This,centerPoint)	\
    ( (This)->lpVtbl -> put_Center(This,centerPoint) ) 

#define IAcadPViewport_get_Direction(This,dirVector)	\
    ( (This)->lpVtbl -> get_Direction(This,dirVector) ) 

#define IAcadPViewport_put_Direction(This,dirVector)	\
    ( (This)->lpVtbl -> put_Direction(This,dirVector) ) 

#define IAcadPViewport_get_GridOn(This,bGridOn)	\
    ( (This)->lpVtbl -> get_GridOn(This,bGridOn) ) 

#define IAcadPViewport_put_GridOn(This,bGridOn)	\
    ( (This)->lpVtbl -> put_GridOn(This,bGridOn) ) 

#define IAcadPViewport_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadPViewport_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadPViewport_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadPViewport_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadPViewport_get_ViewportOn(This,bOn)	\
    ( (This)->lpVtbl -> get_ViewportOn(This,bOn) ) 

#define IAcadPViewport_put_ViewportOn(This,bOn)	\
    ( (This)->lpVtbl -> put_ViewportOn(This,bOn) ) 

#define IAcadPViewport_get_Clipped(This,bClipped)	\
    ( (This)->lpVtbl -> get_Clipped(This,bClipped) ) 

#define IAcadPViewport_get_DisplayLocked(This,bLocked)	\
    ( (This)->lpVtbl -> get_DisplayLocked(This,bLocked) ) 

#define IAcadPViewport_put_DisplayLocked(This,bLocked)	\
    ( (This)->lpVtbl -> put_DisplayLocked(This,bLocked) ) 

#define IAcadPViewport_get_StandardScale(This,scale)	\
    ( (This)->lpVtbl -> get_StandardScale(This,scale) ) 

#define IAcadPViewport_put_StandardScale(This,scale)	\
    ( (This)->lpVtbl -> put_StandardScale(This,scale) ) 

#define IAcadPViewport_get_CustomScale(This,Scale)	\
    ( (This)->lpVtbl -> get_CustomScale(This,Scale) ) 

#define IAcadPViewport_put_CustomScale(This,Scale)	\
    ( (This)->lpVtbl -> put_CustomScale(This,Scale) ) 

#define IAcadPViewport_get_StyleSheet(This,pName)	\
    ( (This)->lpVtbl -> get_StyleSheet(This,pName) ) 

#define IAcadPViewport_put_StyleSheet(This,pName)	\
    ( (This)->lpVtbl -> put_StyleSheet(This,pName) ) 

#define IAcadPViewport_get_UCSPerViewport(This,UCSSaved)	\
    ( (This)->lpVtbl -> get_UCSPerViewport(This,UCSSaved) ) 

#define IAcadPViewport_put_UCSPerViewport(This,UCSSaved)	\
    ( (This)->lpVtbl -> put_UCSPerViewport(This,UCSSaved) ) 

#define IAcadPViewport_get_SnapBasePoint(This,lowLeft)	\
    ( (This)->lpVtbl -> get_SnapBasePoint(This,lowLeft) ) 

#define IAcadPViewport_put_SnapBasePoint(This,lowLeft)	\
    ( (This)->lpVtbl -> put_SnapBasePoint(This,lowLeft) ) 

#define IAcadPViewport_get_SnapOn(This,bSnapOn)	\
    ( (This)->lpVtbl -> get_SnapOn(This,bSnapOn) ) 

#define IAcadPViewport_put_SnapOn(This,bSnapOn)	\
    ( (This)->lpVtbl -> put_SnapOn(This,bSnapOn) ) 

#define IAcadPViewport_get_SnapRotationAngle(This,angle)	\
    ( (This)->lpVtbl -> get_SnapRotationAngle(This,angle) ) 

#define IAcadPViewport_put_SnapRotationAngle(This,angle)	\
    ( (This)->lpVtbl -> put_SnapRotationAngle(This,angle) ) 

#define IAcadPViewport_get_UCSIconOn(This,bIconOn)	\
    ( (This)->lpVtbl -> get_UCSIconOn(This,bIconOn) ) 

#define IAcadPViewport_put_UCSIconOn(This,bIconOn)	\
    ( (This)->lpVtbl -> put_UCSIconOn(This,bIconOn) ) 

#define IAcadPViewport_get_UCSIconAtOrigin(This,bIconAtOrigin)	\
    ( (This)->lpVtbl -> get_UCSIconAtOrigin(This,bIconAtOrigin) ) 

#define IAcadPViewport_put_UCSIconAtOrigin(This,bIconAtOrigin)	\
    ( (This)->lpVtbl -> put_UCSIconAtOrigin(This,bIconAtOrigin) ) 

#define IAcadPViewport_GetGridSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> GetGridSpacing(This,XSpacing,YSpacing) ) 

#define IAcadPViewport_SetGridSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> SetGridSpacing(This,XSpacing,YSpacing) ) 

#define IAcadPViewport_GetSnapSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> GetSnapSpacing(This,XSpacing,YSpacing) ) 

#define IAcadPViewport_SetSnapSpacing(This,XSpacing,YSpacing)	\
    ( (This)->lpVtbl -> SetSnapSpacing(This,XSpacing,YSpacing) ) 

#define IAcadPViewport_Display(This,bStatus)	\
    ( (This)->lpVtbl -> Display(This,bStatus) ) 

#define IAcadPViewport_get_TwistAngle(This,angle)	\
    ( (This)->lpVtbl -> get_TwistAngle(This,angle) ) 

#define IAcadPViewport_put_TwistAngle(This,angle)	\
    ( (This)->lpVtbl -> put_TwistAngle(This,angle) ) 

#define IAcadPViewport_get_LensLength(This,Length)	\
    ( (This)->lpVtbl -> get_LensLength(This,Length) ) 

#define IAcadPViewport_put_LensLength(This,Length)	\
    ( (This)->lpVtbl -> put_LensLength(This,Length) ) 

#define IAcadPViewport_get_RemoveHiddenLines(This,bRemoval)	\
    ( (This)->lpVtbl -> get_RemoveHiddenLines(This,bRemoval) ) 

#define IAcadPViewport_put_RemoveHiddenLines(This,bRemoval)	\
    ( (This)->lpVtbl -> put_RemoveHiddenLines(This,bRemoval) ) 

#define IAcadPViewport_get_Target(This,targetPoint)	\
    ( (This)->lpVtbl -> get_Target(This,targetPoint) ) 

#define IAcadPViewport_put_Target(This,targetPoint)	\
    ( (This)->lpVtbl -> put_Target(This,targetPoint) ) 

#define IAcadPViewport_get_ArcSmoothness(This,arcSmooth)	\
    ( (This)->lpVtbl -> get_ArcSmoothness(This,arcSmooth) ) 

#define IAcadPViewport_put_ArcSmoothness(This,arcSmooth)	\
    ( (This)->lpVtbl -> put_ArcSmoothness(This,arcSmooth) ) 

#define IAcadPViewport_get_VisualStyle(This,pVisualStyleIndex)	\
    ( (This)->lpVtbl -> get_VisualStyle(This,pVisualStyleIndex) ) 

#define IAcadPViewport_put_VisualStyle(This,visualStyleIndex)	\
    ( (This)->lpVtbl -> put_VisualStyle(This,visualStyleIndex) ) 

#define IAcadPViewport_get_ShadePlot(This,pShadePlotIndex)	\
    ( (This)->lpVtbl -> get_ShadePlot(This,pShadePlotIndex) ) 

#define IAcadPViewport_put_ShadePlot(This,shadePlotIndex)	\
    ( (This)->lpVtbl -> put_ShadePlot(This,shadePlotIndex) ) 

#define IAcadPViewport_get_ModelView(This,View)	\
    ( (This)->lpVtbl -> get_ModelView(This,View) ) 

#define IAcadPViewport_put_ModelView(This,View)	\
    ( (This)->lpVtbl -> put_ModelView(This,View) ) 

#define IAcadPViewport_get_SheetView(This,View)	\
    ( (This)->lpVtbl -> get_SheetView(This,View) ) 

#define IAcadPViewport_put_SheetView(This,View)	\
    ( (This)->lpVtbl -> put_SheetView(This,View) ) 

#define IAcadPViewport_get_LabelBlockId(This,ObjectID)	\
    ( (This)->lpVtbl -> get_LabelBlockId(This,ObjectID) ) 

#define IAcadPViewport_put_LabelBlockId(This,ObjectID)	\
    ( (This)->lpVtbl -> put_LabelBlockId(This,ObjectID) ) 

#define IAcadPViewport_get_HasSheetView(This,bSheetView)	\
    ( (This)->lpVtbl -> get_HasSheetView(This,bSheetView) ) 

#define IAcadPViewport_SyncModelView(This)	\
    ( (This)->lpVtbl -> SyncModelView(This) ) 

#define IAcadPViewport_get_LabelBlockId32(This,ObjectID)	\
    ( (This)->lpVtbl -> get_LabelBlockId32(This,ObjectID) ) 

#define IAcadPViewport_put_LabelBlockId32(This,ObjectID)	\
    ( (This)->lpVtbl -> put_LabelBlockId32(This,ObjectID) ) 

#define IAcadPViewport_get_StandardScale2(This,scale)	\
    ( (This)->lpVtbl -> get_StandardScale2(This,scale) ) 

#define IAcadPViewport_put_StandardScale2(This,scale)	\
    ( (This)->lpVtbl -> put_StandardScale2(This,scale) ) 

#define IAcadPViewport_get_LayerPropertyOverrides(This,bOverrides)	\
    ( (This)->lpVtbl -> get_LayerPropertyOverrides(This,bOverrides) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPViewport_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPViewport,0x37275283,0x1B95,0x48B9,0xA0,0xEE,0x1E,0x6D,0xFA,0x12,0x2E,0xBF);

#ifdef __cplusplus

class DECLSPEC_UUID("37275283-1B95-48B9-A0EE-1E6DFA122EBF")
AcadPViewport;
#endif

#ifndef __IAcadMInsertBlock_INTERFACE_DEFINED__
#define __IAcadMInsertBlock_INTERFACE_DEFINED__

/* interface IAcadMInsertBlock */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMInsertBlock,0x0D86F5A2,0x1749,0x4E36,0x96,0x23,0x73,0xD0,0x09,0xA8,0x52,0xC2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0D86F5A2-1749-4E36-9623-73D009A852C2")
    IAcadMInsertBlock : public IAcadBlockReference
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Columns( 
            /* [in] */ long NumColumns) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
            /* [retval][out] */ long *NumColumns) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColumnSpacing( 
            /* [in] */ double Spacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnSpacing( 
            /* [retval][out] */ double *Spacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rows( 
            /* [in] */ long NumRows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rows( 
            /* [retval][out] */ long *NumRows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RowSpacing( 
            /* [in] */ double Spacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowSpacing( 
            /* [retval][out] */ double *Spacing) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMInsertBlockVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMInsertBlock * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMInsertBlock * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMInsertBlock * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMInsertBlock * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMInsertBlock * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMInsertBlock * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMInsertBlock * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMInsertBlock * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMInsertBlock * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadMInsertBlock * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadMInsertBlock * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadMInsertBlock * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadMInsertBlock * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadMInsertBlock * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadMInsertBlock * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadMInsertBlock * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ZScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ZScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAttributes )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT *pAttrObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetConstantAttributes )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT *pAttrObjs);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasAttributes )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT_BOOL *bHas);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EffectiveName )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *effectiveName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsDynamicBlock )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDynamicBlockProperties )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ VARIANT *dynamicPropertyArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ResetBlock )( 
            IAcadMInsertBlock * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertToAnonymousBlock )( 
            IAcadMInsertBlock * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertToStaticBlock )( 
            IAcadMInsertBlock * This,
            /* [in] */ BSTR newBlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XEffectiveScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XEffectiveScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YEffectiveScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YEffectiveScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ZEffectiveScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ZEffectiveScaleFactor )( 
            IAcadMInsertBlock * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsUnits )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ BSTR *units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsUnitsFactor )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Columns )( 
            IAcadMInsertBlock * This,
            /* [in] */ long NumColumns);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Columns )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ long *NumColumns);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ColumnSpacing )( 
            IAcadMInsertBlock * This,
            /* [in] */ double Spacing);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ColumnSpacing )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ double *Spacing);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rows )( 
            IAcadMInsertBlock * This,
            /* [in] */ long NumRows);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rows )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ long *NumRows);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RowSpacing )( 
            IAcadMInsertBlock * This,
            /* [in] */ double Spacing);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RowSpacing )( 
            IAcadMInsertBlock * This,
            /* [retval][out] */ double *Spacing);
        
        END_INTERFACE
    } IAcadMInsertBlockVtbl;

    interface IAcadMInsertBlock
    {
        CONST_VTBL struct IAcadMInsertBlockVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMInsertBlock_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMInsertBlock_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMInsertBlock_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMInsertBlock_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMInsertBlock_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMInsertBlock_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMInsertBlock_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMInsertBlock_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMInsertBlock_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMInsertBlock_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMInsertBlock_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMInsertBlock_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMInsertBlock_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMInsertBlock_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMInsertBlock_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMInsertBlock_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMInsertBlock_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMInsertBlock_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMInsertBlock_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMInsertBlock_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMInsertBlock_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMInsertBlock_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMInsertBlock_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadMInsertBlock_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadMInsertBlock_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadMInsertBlock_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadMInsertBlock_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadMInsertBlock_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadMInsertBlock_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadMInsertBlock_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadMInsertBlock_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadMInsertBlock_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadMInsertBlock_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadMInsertBlock_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadMInsertBlock_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadMInsertBlock_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadMInsertBlock_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadMInsertBlock_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadMInsertBlock_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadMInsertBlock_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadMInsertBlock_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadMInsertBlock_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadMInsertBlock_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadMInsertBlock_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadMInsertBlock_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadMInsertBlock_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadMInsertBlock_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadMInsertBlock_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadMInsertBlock_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadMInsertBlock_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadMInsertBlock_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadMInsertBlock_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadMInsertBlock_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadMInsertBlock_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadMInsertBlock_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadMInsertBlock_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadMInsertBlock_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadMInsertBlock_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadMInsertBlock_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadMInsertBlock_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadMInsertBlock_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadMInsertBlock_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadMInsertBlock_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadMInsertBlock_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadMInsertBlock_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadMInsertBlock_get_XScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_XScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_put_XScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_XScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_get_YScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_YScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_put_YScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_YScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_get_ZScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ZScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_put_ZScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ZScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcadMInsertBlock_GetAttributes(This,pAttrObjs)	\
    ( (This)->lpVtbl -> GetAttributes(This,pAttrObjs) ) 

#define IAcadMInsertBlock_GetConstantAttributes(This,pAttrObjs)	\
    ( (This)->lpVtbl -> GetConstantAttributes(This,pAttrObjs) ) 

#define IAcadMInsertBlock_get_HasAttributes(This,bHas)	\
    ( (This)->lpVtbl -> get_HasAttributes(This,bHas) ) 

#define IAcadMInsertBlock_get_EffectiveName(This,effectiveName)	\
    ( (This)->lpVtbl -> get_EffectiveName(This,effectiveName) ) 

#define IAcadMInsertBlock_get_IsDynamicBlock(This,pDynamicBlock)	\
    ( (This)->lpVtbl -> get_IsDynamicBlock(This,pDynamicBlock) ) 

#define IAcadMInsertBlock_GetDynamicBlockProperties(This,dynamicPropertyArray)	\
    ( (This)->lpVtbl -> GetDynamicBlockProperties(This,dynamicPropertyArray) ) 

#define IAcadMInsertBlock_ResetBlock(This)	\
    ( (This)->lpVtbl -> ResetBlock(This) ) 

#define IAcadMInsertBlock_ConvertToAnonymousBlock(This)	\
    ( (This)->lpVtbl -> ConvertToAnonymousBlock(This) ) 

#define IAcadMInsertBlock_ConvertToStaticBlock(This,newBlockName)	\
    ( (This)->lpVtbl -> ConvertToStaticBlock(This,newBlockName) ) 

#define IAcadMInsertBlock_get_XEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_XEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_put_XEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_XEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_get_YEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_YEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_put_YEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_YEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_get_ZEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ZEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_put_ZEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ZEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadMInsertBlock_get_InsUnits(This,units)	\
    ( (This)->lpVtbl -> get_InsUnits(This,units) ) 

#define IAcadMInsertBlock_get_InsUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_InsUnitsFactor(This,factor) ) 


#define IAcadMInsertBlock_put_Columns(This,NumColumns)	\
    ( (This)->lpVtbl -> put_Columns(This,NumColumns) ) 

#define IAcadMInsertBlock_get_Columns(This,NumColumns)	\
    ( (This)->lpVtbl -> get_Columns(This,NumColumns) ) 

#define IAcadMInsertBlock_put_ColumnSpacing(This,Spacing)	\
    ( (This)->lpVtbl -> put_ColumnSpacing(This,Spacing) ) 

#define IAcadMInsertBlock_get_ColumnSpacing(This,Spacing)	\
    ( (This)->lpVtbl -> get_ColumnSpacing(This,Spacing) ) 

#define IAcadMInsertBlock_put_Rows(This,NumRows)	\
    ( (This)->lpVtbl -> put_Rows(This,NumRows) ) 

#define IAcadMInsertBlock_get_Rows(This,NumRows)	\
    ( (This)->lpVtbl -> get_Rows(This,NumRows) ) 

#define IAcadMInsertBlock_put_RowSpacing(This,Spacing)	\
    ( (This)->lpVtbl -> put_RowSpacing(This,Spacing) ) 

#define IAcadMInsertBlock_get_RowSpacing(This,Spacing)	\
    ( (This)->lpVtbl -> get_RowSpacing(This,Spacing) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMInsertBlock_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMInsertBlock,0xDC9F9832,0xEE66,0x400F,0x90,0x7F,0xB9,0x14,0x29,0x95,0xDF,0x17);

#ifdef __cplusplus

class DECLSPEC_UUID("DC9F9832-EE66-400F-907F-B9142995DF17")
AcadMInsertBlock;
#endif

#ifndef __IAcadPolyfaceMesh_INTERFACE_DEFINED__
#define __IAcadPolyfaceMesh_INTERFACE_DEFINED__

/* interface IAcadPolyfaceMesh */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPolyfaceMesh,0xC8139715,0x3C0E,0x4C5A,0x80,0xBE,0x33,0xE0,0x93,0x70,0x07,0x75);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C8139715-3C0E-4C5A-80BE-33E093700775")
    IAcadPolyfaceMesh : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT Vertices) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *Vertices) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfVertices( 
            /* [retval][out] */ long *NumVertices) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfFaces( 
            /* [retval][out] */ long *NumFaces) = 0;
        
        virtual /* [hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_Faces( 
            /* [in] */ VARIANT Faces) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPolyfaceMeshVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPolyfaceMesh * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPolyfaceMesh * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPolyfaceMesh * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPolyfaceMesh * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPolyfaceMesh * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadPolyfaceMesh * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadPolyfaceMesh * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT Vertices);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ VARIANT *Vertices);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfVertices )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ long *NumVertices);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfFaces )( 
            IAcadPolyfaceMesh * This,
            /* [retval][out] */ long *NumFaces);
        
        /* [hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Faces )( 
            IAcadPolyfaceMesh * This,
            /* [in] */ VARIANT Faces);
        
        END_INTERFACE
    } IAcadPolyfaceMeshVtbl;

    interface IAcadPolyfaceMesh
    {
        CONST_VTBL struct IAcadPolyfaceMeshVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPolyfaceMesh_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPolyfaceMesh_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPolyfaceMesh_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPolyfaceMesh_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPolyfaceMesh_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPolyfaceMesh_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPolyfaceMesh_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPolyfaceMesh_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPolyfaceMesh_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPolyfaceMesh_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPolyfaceMesh_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPolyfaceMesh_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPolyfaceMesh_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPolyfaceMesh_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPolyfaceMesh_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPolyfaceMesh_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPolyfaceMesh_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPolyfaceMesh_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPolyfaceMesh_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPolyfaceMesh_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPolyfaceMesh_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPolyfaceMesh_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPolyfaceMesh_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadPolyfaceMesh_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadPolyfaceMesh_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadPolyfaceMesh_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadPolyfaceMesh_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadPolyfaceMesh_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadPolyfaceMesh_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadPolyfaceMesh_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadPolyfaceMesh_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadPolyfaceMesh_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadPolyfaceMesh_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadPolyfaceMesh_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadPolyfaceMesh_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadPolyfaceMesh_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadPolyfaceMesh_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadPolyfaceMesh_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadPolyfaceMesh_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadPolyfaceMesh_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadPolyfaceMesh_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadPolyfaceMesh_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadPolyfaceMesh_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadPolyfaceMesh_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadPolyfaceMesh_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadPolyfaceMesh_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadPolyfaceMesh_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadPolyfaceMesh_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadPolyfaceMesh_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadPolyfaceMesh_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadPolyfaceMesh_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadPolyfaceMesh_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadPolyfaceMesh_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadPolyfaceMesh_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadPolyfaceMesh_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadPolyfaceMesh_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadPolyfaceMesh_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadPolyfaceMesh_put_Coordinates(This,Vertices)	\
    ( (This)->lpVtbl -> put_Coordinates(This,Vertices) ) 

#define IAcadPolyfaceMesh_get_Coordinates(This,Vertices)	\
    ( (This)->lpVtbl -> get_Coordinates(This,Vertices) ) 

#define IAcadPolyfaceMesh_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadPolyfaceMesh_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#define IAcadPolyfaceMesh_get_NumberOfVertices(This,NumVertices)	\
    ( (This)->lpVtbl -> get_NumberOfVertices(This,NumVertices) ) 

#define IAcadPolyfaceMesh_get_NumberOfFaces(This,NumFaces)	\
    ( (This)->lpVtbl -> get_NumberOfFaces(This,NumFaces) ) 

#define IAcadPolyfaceMesh_put_Faces(This,Faces)	\
    ( (This)->lpVtbl -> put_Faces(This,Faces) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPolyfaceMesh_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPolyfaceMesh,0xAC051ABE,0x78EF,0x4D28,0x92,0xC3,0x3B,0x30,0x1E,0x90,0x97,0x06);

#ifdef __cplusplus

class DECLSPEC_UUID("AC051ABE-78EF-4D28-92C3-3B301E909706")
AcadPolyfaceMesh;
#endif

#ifndef __IAcadMLine_INTERFACE_DEFINED__
#define __IAcadMLine_INTERFACE_DEFINED__

/* interface IAcadMLine */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadMLine,0x665BACBB,0xD863,0x4C2A,0xA8,0xE3,0xF9,0xC5,0xC0,0x3C,0xDC,0x08);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("665BACBB-D863-4C2A-A8E3-F9C5C03CDC08")
    IAcadMLine : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *vertices) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT vertices) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Justification( 
            /* [retval][out] */ AcMLineJustification *justification) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Justification( 
            /* [in] */ AcMLineJustification justification) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MLineScale( 
            /* [retval][out] */ double *scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MLineScale( 
            /* [in] */ double scale) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadMLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadMLine * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadMLine * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadMLine * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadMLine * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadMLine * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadMLine * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadMLine * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadMLine * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadMLine * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadMLine * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadMLine * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadMLine * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadMLine * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadMLine * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadMLine * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadMLine * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadMLine * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadMLine * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadMLine * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadMLine * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadMLine * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadMLine * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadMLine * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadMLine * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadMLine * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadMLine * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadMLine * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadMLine * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadMLine * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadMLine * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadMLine * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadMLine * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadMLine * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadMLine * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadMLine * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadMLine * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadMLine * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadMLine * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadMLine * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadMLine * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadMLine * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadMLine * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadMLine * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadMLine * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadMLine * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadMLine * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadMLine * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadMLine * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadMLine * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadMLine * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadMLine * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadMLine * This,
            /* [retval][out] */ VARIANT *vertices);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadMLine * This,
            /* [in] */ VARIANT vertices);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Justification )( 
            IAcadMLine * This,
            /* [retval][out] */ AcMLineJustification *justification);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Justification )( 
            IAcadMLine * This,
            /* [in] */ AcMLineJustification justification);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MLineScale )( 
            IAcadMLine * This,
            /* [retval][out] */ double *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MLineScale )( 
            IAcadMLine * This,
            /* [in] */ double scale);
        
        END_INTERFACE
    } IAcadMLineVtbl;

    interface IAcadMLine
    {
        CONST_VTBL struct IAcadMLineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadMLine_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadMLine_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadMLine_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadMLine_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadMLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadMLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadMLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadMLine_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadMLine_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadMLine_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadMLine_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadMLine_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadMLine_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadMLine_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadMLine_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadMLine_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadMLine_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadMLine_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadMLine_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadMLine_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadMLine_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadMLine_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadMLine_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadMLine_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadMLine_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadMLine_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadMLine_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadMLine_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadMLine_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadMLine_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadMLine_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadMLine_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadMLine_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadMLine_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadMLine_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadMLine_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadMLine_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadMLine_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadMLine_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadMLine_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadMLine_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadMLine_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadMLine_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadMLine_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadMLine_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadMLine_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadMLine_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadMLine_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadMLine_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadMLine_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadMLine_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadMLine_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadMLine_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadMLine_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadMLine_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadMLine_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadMLine_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadMLine_get_StyleName(This,Name)	\
    ( (This)->lpVtbl -> get_StyleName(This,Name) ) 

#define IAcadMLine_get_Coordinates(This,vertices)	\
    ( (This)->lpVtbl -> get_Coordinates(This,vertices) ) 

#define IAcadMLine_put_Coordinates(This,vertices)	\
    ( (This)->lpVtbl -> put_Coordinates(This,vertices) ) 

#define IAcadMLine_get_Justification(This,justification)	\
    ( (This)->lpVtbl -> get_Justification(This,justification) ) 

#define IAcadMLine_put_Justification(This,justification)	\
    ( (This)->lpVtbl -> put_Justification(This,justification) ) 

#define IAcadMLine_get_MLineScale(This,scale)	\
    ( (This)->lpVtbl -> get_MLineScale(This,scale) ) 

#define IAcadMLine_put_MLineScale(This,scale)	\
    ( (This)->lpVtbl -> put_MLineScale(This,scale) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadMLine_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadMLine,0x251A45DF,0x0CB6,0x4FB3,0xBD,0x02,0xC7,0x6B,0x3A,0x2A,0x1C,0x26);

#ifdef __cplusplus

class DECLSPEC_UUID("251A45DF-0CB6-4FB3-BD02-C76B3A2A1C26")
AcadMLine;
#endif

#ifndef __IAcadExternalReference_INTERFACE_DEFINED__
#define __IAcadExternalReference_INTERFACE_DEFINED__

/* interface IAcadExternalReference */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadExternalReference,0x374AF9E8,0x2B30,0x4F34,0x9B,0xE0,0x0E,0x60,0xDF,0xF1,0xEC,0xF5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("374AF9E8-2B30-4F34-9BE0-0E60DFF1ECF5")
    IAcadExternalReference : public IAcadBlockReference
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Path( 
            /* [in] */ BSTR bstrName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadExternalReferenceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadExternalReference * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadExternalReference * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadExternalReference * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadExternalReference * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadExternalReference * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadExternalReference * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadExternalReference * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadExternalReference * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadExternalReference * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadExternalReference * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadExternalReference * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadExternalReference * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadExternalReference * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadExternalReference * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadExternalReference * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadExternalReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadExternalReference * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadExternalReference * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadExternalReference * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadExternalReference * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadExternalReference * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XScaleFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XScaleFactor )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YScaleFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YScaleFactor )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ZScaleFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ZScaleFactor )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Explode )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAttributes )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT *pAttrObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetConstantAttributes )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT *pAttrObjs);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasAttributes )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT_BOOL *bHas);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EffectiveName )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *effectiveName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsDynamicBlock )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDynamicBlockProperties )( 
            IAcadExternalReference * This,
            /* [retval][out] */ VARIANT *dynamicPropertyArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ResetBlock )( 
            IAcadExternalReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertToAnonymousBlock )( 
            IAcadExternalReference * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertToStaticBlock )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR newBlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XEffectiveScaleFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XEffectiveScaleFactor )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_YEffectiveScaleFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_YEffectiveScaleFactor )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ZEffectiveScaleFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ZEffectiveScaleFactor )( 
            IAcadExternalReference * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsUnits )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsUnitsFactor )( 
            IAcadExternalReference * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IAcadExternalReference * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Path )( 
            IAcadExternalReference * This,
            /* [in] */ BSTR bstrName);
        
        END_INTERFACE
    } IAcadExternalReferenceVtbl;

    interface IAcadExternalReference
    {
        CONST_VTBL struct IAcadExternalReferenceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadExternalReference_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadExternalReference_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadExternalReference_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadExternalReference_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadExternalReference_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadExternalReference_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadExternalReference_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadExternalReference_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadExternalReference_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadExternalReference_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadExternalReference_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadExternalReference_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadExternalReference_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadExternalReference_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadExternalReference_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadExternalReference_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadExternalReference_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadExternalReference_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadExternalReference_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadExternalReference_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadExternalReference_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadExternalReference_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadExternalReference_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadExternalReference_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadExternalReference_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadExternalReference_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadExternalReference_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadExternalReference_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadExternalReference_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadExternalReference_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadExternalReference_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadExternalReference_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadExternalReference_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadExternalReference_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadExternalReference_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadExternalReference_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadExternalReference_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadExternalReference_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadExternalReference_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadExternalReference_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadExternalReference_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadExternalReference_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadExternalReference_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadExternalReference_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadExternalReference_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadExternalReference_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadExternalReference_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadExternalReference_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadExternalReference_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadExternalReference_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadExternalReference_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadExternalReference_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadExternalReference_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadExternalReference_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadExternalReference_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadExternalReference_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadExternalReference_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadExternalReference_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadExternalReference_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadExternalReference_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadExternalReference_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadExternalReference_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadExternalReference_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadExternalReference_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadExternalReference_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadExternalReference_get_XScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_XScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_put_XScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_XScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_get_YScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_YScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_put_YScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_YScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_get_ZScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ZScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_put_ZScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ZScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_Explode(This,pArrayObjs)	\
    ( (This)->lpVtbl -> Explode(This,pArrayObjs) ) 

#define IAcadExternalReference_GetAttributes(This,pAttrObjs)	\
    ( (This)->lpVtbl -> GetAttributes(This,pAttrObjs) ) 

#define IAcadExternalReference_GetConstantAttributes(This,pAttrObjs)	\
    ( (This)->lpVtbl -> GetConstantAttributes(This,pAttrObjs) ) 

#define IAcadExternalReference_get_HasAttributes(This,bHas)	\
    ( (This)->lpVtbl -> get_HasAttributes(This,bHas) ) 

#define IAcadExternalReference_get_EffectiveName(This,effectiveName)	\
    ( (This)->lpVtbl -> get_EffectiveName(This,effectiveName) ) 

#define IAcadExternalReference_get_IsDynamicBlock(This,pDynamicBlock)	\
    ( (This)->lpVtbl -> get_IsDynamicBlock(This,pDynamicBlock) ) 

#define IAcadExternalReference_GetDynamicBlockProperties(This,dynamicPropertyArray)	\
    ( (This)->lpVtbl -> GetDynamicBlockProperties(This,dynamicPropertyArray) ) 

#define IAcadExternalReference_ResetBlock(This)	\
    ( (This)->lpVtbl -> ResetBlock(This) ) 

#define IAcadExternalReference_ConvertToAnonymousBlock(This)	\
    ( (This)->lpVtbl -> ConvertToAnonymousBlock(This) ) 

#define IAcadExternalReference_ConvertToStaticBlock(This,newBlockName)	\
    ( (This)->lpVtbl -> ConvertToStaticBlock(This,newBlockName) ) 

#define IAcadExternalReference_get_XEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_XEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_put_XEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_XEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_get_YEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_YEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_put_YEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_YEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_get_ZEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ZEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_put_ZEffectiveScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ZEffectiveScaleFactor(This,scaleFactor) ) 

#define IAcadExternalReference_get_InsUnits(This,units)	\
    ( (This)->lpVtbl -> get_InsUnits(This,units) ) 

#define IAcadExternalReference_get_InsUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_InsUnitsFactor(This,factor) ) 


#define IAcadExternalReference_get_Path(This,bstrName)	\
    ( (This)->lpVtbl -> get_Path(This,bstrName) ) 

#define IAcadExternalReference_put_Path(This,bstrName)	\
    ( (This)->lpVtbl -> put_Path(This,bstrName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadExternalReference_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadExternalReference,0xE327FDF3,0xACD6,0x4511,0xB7,0x17,0x56,0x21,0x54,0xE7,0x5C,0x25);

#ifdef __cplusplus

class DECLSPEC_UUID("E327FDF3-ACD6-4511-B717-562154E75C25")
AcadExternalReference;
#endif

#ifndef __IAcadTable_INTERFACE_DEFINED__
#define __IAcadTable_INTERFACE_DEFINED__

/* interface IAcadTable */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadTable,0x12CC3C8D,0xAE9E,0x4DFE,0xB9,0x85,0xC5,0x51,0x85,0x84,0x58,0xAA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("12CC3C8D-AE9E-4DFE-B985-C551858458AA")
    IAcadTable : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rows( 
            /* [retval][out] */ int *pRows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rows( 
            /* [in] */ int nRows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
            /* [retval][out] */ int *pColumns) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Columns( 
            /* [in] */ int nColumns) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FlowDirection( 
            /* [retval][out] */ AcTableDirection *pFlow) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FlowDirection( 
            /* [in] */ AcTableDirection flow) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *pWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double fWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double fRowHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertCellMargin( 
            /* [retval][out] */ double *pGap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertCellMargin( 
            /* [in] */ double gap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorzCellMargin( 
            /* [retval][out] */ double *pGap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorzCellMargin( 
            /* [in] */ double gap) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetColumnWidth( 
            /* [in] */ int col,
            /* [retval][out] */ double *pWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetColumnWidth( 
            /* [in] */ int col,
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColumnWidth( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetRowHeight( 
            /* [in] */ int row,
            /* [retval][out] */ double *pheight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetRowHeight( 
            /* [in] */ int row,
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RowHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetMinimumColumnWidth( 
            /* [in] */ int col,
            /* [retval][out] */ double *pWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetMinimumRowHeight( 
            /* [in] */ int row,
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinimumTableWidth( 
            /* [retval][out] */ double *pWidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinimumTableHeight( 
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT *directionVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT directionVector) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TitleSuppressed( 
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TitleSuppressed( 
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HeaderSuppressed( 
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HeaderSuppressed( 
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAlignment( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ AcCellAlignment *pCellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetAlignment( 
            /* [in] */ int rowTypes,
            /* [in] */ AcCellAlignment cellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBackgroundColorNone( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBackgroundColorNone( 
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBackgroundColor( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBackgroundColor( 
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetContentColor( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetContentColor( 
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextStyle( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextStyle( 
            /* [in] */ int rowTypes,
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextHeight( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ double *pTextHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextHeight( 
            /* [in] */ int rowTypes,
            /* [in] */ double textHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLineWeight( 
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLineWeight( 
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridColor( 
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridColor( 
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridVisibility( 
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridVisibility( 
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TableStyleOverrides( 
            /* [retval][out] */ VARIANT *pIntArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ClearTableStyleOverrides( 
            /* [in] */ int flag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellType( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcCellType *pCellType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellType( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellType CellType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellExtents( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ VARIANT_BOOL bOuterCell,
            /* [retval][out] */ VARIANT *pPts) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAttachmentPoint( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT *pAttachmentPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellAlignment( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcCellAlignment *pCellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellAlignment( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellAlignment cellAlignment) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellBackgroundColorNone( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellBackgroundColorNone( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellBackgroundColor( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellBackgroundColor( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellContentColor( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellContentColor( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellStyleOverrides( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT *pIntArray) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteCellContent( 
            /* [in] */ int row,
            /* [in] */ int col) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetRowType( 
            /* [in] */ int row,
            /* [retval][out] */ AcRowType *pRowType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetText( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ BSTR *pStr) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetText( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ BSTR pStr) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellTextStyle( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellTextStyle( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellTextHeight( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ double *pTextHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellTextHeight( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ double textHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextRotation( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcRotationAngle *textRotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextRotation( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcRotationAngle textRotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAutoScale( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetAutoScale( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockTableRecordId( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG_PTR *blkId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockTableRecordId( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR blkId,
            /* [in] */ VARIANT_BOOL bAutoFit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockScale( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ double *blkScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockScale( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ double blkScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockRotation( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ double *blkRotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockRotation( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ double blkRotation) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockAttributeValue( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR attdefId,
            /* [retval][out] */ BSTR *bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockAttributeValue( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR attdefId,
            /* [in] */ BSTR bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellGridLineWeight( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellEdgeMask edge,
            /* [retval][out] */ ACAD_LWEIGHT *plineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellGridLineWeight( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ int edges,
            /* [in] */ ACAD_LWEIGHT lineweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellGridColor( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellEdgeMask edge,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellGridColor( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ int edges,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellGridVisibility( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellEdgeMask edge,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellGridVisibility( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ int edges,
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE InsertColumns( 
            /* [in] */ int col,
            /* [in] */ double width,
            /* [in] */ int cols) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteColumns( 
            /* [in] */ int col,
            /* [in] */ int cols) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE InsertRows( 
            /* [in] */ int row,
            /* [in] */ double height,
            /* [in] */ int rows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteRows( 
            /* [in] */ int row,
            /* [in] */ int rows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE MergeCells( 
            /* [in] */ int minRow,
            /* [in] */ int maxRow,
            /* [in] */ int minCol,
            /* [in] */ int maxCol) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE UnmergeCells( 
            /* [in] */ int minRow,
            /* [in] */ int maxRow,
            /* [in] */ int minCol,
            /* [in] */ int maxCol) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IsMergedCell( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [out] */ int *minRow,
            /* [out] */ int *maxRow,
            /* [out] */ int *minCol,
            /* [out] */ int *maxCol,
            /* [retval][out] */ VARIANT_BOOL *pbValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFieldId( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG_PTR *fieldId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFieldId( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR fieldId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GenerateLayout( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RecomputeTableBlock( 
            /* [in] */ VARIANT_BOOL bForceUpdate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE HitTest( 
            /* [in] */ VARIANT wpt,
            /* [in] */ VARIANT wviewVec,
            /* [out] */ int *resultRowIndex,
            /* [out] */ int *resultColumnIndex,
            /* [retval][out] */ VARIANT_BOOL *bReturn) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Select( 
            /* [in] */ VARIANT wpt,
            /* [in] */ VARIANT wvwVec,
            /* [in] */ VARIANT wvwxVec,
            /* [in] */ double wxaper,
            /* [in] */ double wyaper,
            /* [in] */ VARIANT_BOOL allowOutside,
            /* [out] */ int *resultRowIndex,
            /* [out] */ int *resultColumnIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SelectSubRegion( 
            /* [in] */ VARIANT wpt1,
            /* [in] */ VARIANT wpt2,
            /* [in] */ VARIANT wvwVec,
            /* [in] */ VARIANT wvwxVec,
            /* [in] */ AcSelectType seltype,
            /* [in] */ VARIANT_BOOL bIncludeCurrentSelection,
            /* [out] */ int *rowMin,
            /* [out] */ int *rowMax,
            /* [out] */ int *colMin,
            /* [out] */ int *colMax) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ReselectSubRegion( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetSubSelection( 
            /* [out] */ int *rowMin,
            /* [out] */ int *rowMax,
            /* [out] */ int *colMin,
            /* [out] */ int *colMax) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetSubSelection( 
            /* [in] */ int rowMin,
            /* [in] */ int rowMax,
            /* [in] */ int colMin,
            /* [in] */ int colMax) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ClearSubSelection( void) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasSubSelection( 
            /* [retval][out] */ VARIANT_BOOL *pbValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RegenerateTableSuppressed( 
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RegenerateTableSuppressed( 
            /* [in] */ VARIANT_BOOL bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDataType( 
            /* [in] */ AcRowType rowType,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetDataType( 
            /* [in] */ int rowTypes,
            /* [in] */ AcValueDataType dataType,
            /* [in] */ AcValueUnitType unitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFormat( 
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *pFormat) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFormat( 
            /* [in] */ int rowTypes,
            BSTR pFormat) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE FormatValue( 
            /* [in] */ int row,
            /* [in] */ int col,
            AcFormatOption nOption,
            BSTR *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellDataType( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellDataType( 
            /* [in] */ int row,
            /* [in] */ int col,
            AcValueDataType dataType,
            AcValueUnitType unitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellFormat( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ BSTR *pFormat) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellFormat( 
            /* [in] */ int row,
            /* [in] */ int col,
            BSTR pFormat) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellValue( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellValue( 
            /* [in] */ int row,
            /* [in] */ int col,
            VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellValueFromText( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ BSTR val,
            /* [in] */ AcParseOption nOption) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ResetCellValue( 
            /* [in] */ int row,
            /* [in] */ int col) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockTableRecordId32( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG *blkId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockTableRecordId32( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG blkId,
            /* [in] */ VARIANT_BOOL bAutoFit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockAttributeValue32( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG attdefId,
            /* [retval][out] */ BSTR *bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockAttributeValue32( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG attdefId,
            /* [in] */ BSTR bstrValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFieldId32( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG *fieldId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFieldId32( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG fieldId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IsEmpty( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreateContent( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nIndex,
            /* [retval][out] */ int *pInt) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE MoveContent( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nFromIndex,
            /* [in] */ int nToIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE DeleteContent( 
            /* [in] */ int nRow,
            /* [in] */ int nCol) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetValue( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ VARIANT *pAcValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetValue( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ VARIANT acValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetValueFromText( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR szText,
            /* [in] */ AcParseOption nOption) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDataFormat( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetDataFormat( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR szFormat) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextString( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pTextString) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextString( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR text) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFieldId2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG_PTR *pAcDbObjectId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFieldId2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR acDbObjectId,
            /* [in] */ AcCellOption nflag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockTableRecordId2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG_PTR *pAcDbObjectId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockTableRecordId2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR blkId,
            /* [in] */ VARIANT_BOOL autoFit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockAttributeValue2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR blkId,
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockAttributeValue2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR blkId,
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCustomData( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR szKey,
            /* [out] */ VARIANT *pData) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCustomData( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR szKey,
            /* [in] */ VARIANT data) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellStyle( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ BSTR *pCellStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellStyle( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR szCellStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetContentColor2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetContentColor2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetDataType2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetDataType2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ AcValueDataType dataType,
            /* [in] */ AcValueUnitType unitType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextStyle2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pbstrStyleName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextStyle2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR bstrStyleName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetTextHeight2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetTextHeight2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetRotation( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ double *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetRotation( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ double value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetAutoScale2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ VARIANT_BOOL *bAutoScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetAutoScale2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ VARIANT_BOOL bAutoFit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetScale( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ double *pScale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetScale( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ double scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveAllOverrides( 
            /* [in] */ int nRow,
            /* [in] */ int nCol) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLineWeight2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ ACAD_LWEIGHT *pLineWeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLineWeight2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ ACAD_LWEIGHT lineWeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLinetype( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ LONG_PTR *pacDbObjId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLinetype( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ LONG_PTR idLinetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridColor2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridColor2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridVisibility2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ VARIANT_BOOL *bVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridVisibility2( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ VARIANT_BOOL bVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridDoubleLineSpacing( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ double *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridDoubleLineSpacing( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ double fSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableBreak( 
            /* [in] */ VARIANT_BOOL bEnable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBreakHeight( 
            /* [in] */ int nIndex,
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBreakHeight( 
            /* [in] */ int nIndex,
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetContentType( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ AcCellContentType *pType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetMargin( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcCellMargin nMargin,
            /* [retval][out] */ double *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetMargin( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcCellMargin nMargins,
            /* [in] */ double fMargin) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetContentLayout( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcCellContentLayout *pLayout) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetContentLayout( 
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellContentLayout nLayout) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetOverride( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ AcCellProperty *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetOverride( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ AcCellProperty nProp) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLineStyle( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ AcGridLineStyle *pStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLineStyle( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineTypes,
            /* [in] */ AcGridLineStyle nLineStyle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE InsertRowsAndInherit( 
            /* [in] */ int nIndex,
            /* [in] */ int nInheritFrom,
            /* [in] */ int nNumRows) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE InsertColumnsAndInherit( 
            /* [in] */ int col,
            /* [in] */ int nInheritFrom,
            /* [in] */ int nNumCols) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetHasFormula( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFormula( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pszFormula) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFormula( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR pszFormula) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IsContentEditable( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IsFormatEditable( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCellState( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ AcCellState *pCellState) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCellState( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcCellState nLock) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE EnableMergeAll( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ VARIANT_BOOL bEnable) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IsMergeAllEnabled( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreaksEnabled( 
            /* [retval][out] */ VARIANT_BOOL *bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreaksEnabled( 
            /* [in] */ VARIANT_BOOL bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RepeatTopLabels( 
            /* [retval][out] */ VARIANT_BOOL *bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RepeatTopLabels( 
            /* [in] */ VARIANT_BOOL bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RepeatBottomLabels( 
            /* [retval][out] */ VARIANT_BOOL *bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RepeatBottomLabels( 
            /* [in] */ VARIANT_BOOL bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TableBreakFlowDirection( 
            /* [retval][out] */ AcTableFlowDirection *pDir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TableBreakFlowDirection( 
            /* [in] */ AcTableFlowDirection dir) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AllowManualPositions( 
            /* [retval][out] */ VARIANT_BOOL *bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AllowManualPositions( 
            /* [in] */ VARIANT_BOOL bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AllowManualHeights( 
            /* [retval][out] */ VARIANT_BOOL *bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AllowManualHeights( 
            /* [in] */ VARIANT_BOOL bEnabled) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TableBreakHeight( 
            /* [retval][out] */ double *pHeight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TableBreakHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakSpacing( 
            /* [retval][out] */ double *pSpacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakSpacing( 
            /* [in] */ double spacing) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetColumnName( 
            /* [in] */ int nIndex,
            /* [retval][out] */ BSTR *name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetColumnName( 
            /* [in] */ int nIndex,
            /* [in] */ BSTR name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetToolTip( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR tip) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetFieldId232( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG *pAcDbObjectId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetFieldId232( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG acDbObjectId,
            /* [in] */ AcCellOption nflag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockTableRecordId232( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG *pAcDbObjectId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockTableRecordId232( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG blkId,
            /* [in] */ VARIANT_BOOL autoFit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetBlockAttributeValue232( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG blkId,
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetBlockAttributeValue232( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG blkId,
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetGridLinetype32( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ LONG *pacDbObjId) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetGridLinetype32( 
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ LONG idLinetype) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadTableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadTable * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadTable * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadTable * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadTable * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadTable * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadTable * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadTable * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadTable * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadTable * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadTable * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadTable * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadTable * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadTable * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadTable * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadTable * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadTable * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadTable * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadTable * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadTable * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadTable * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadTable * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadTable * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadTable * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadTable * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadTable * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadTable * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadTable * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadTable * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadTable * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadTable * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadTable * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadTable * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadTable * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadTable * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadTable * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadTable * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadTable * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadTable * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadTable * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadTable * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadTable * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadTable * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadTable * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadTable * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadTable * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadTable * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadTable * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadTable * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rows )( 
            IAcadTable * This,
            /* [retval][out] */ int *pRows);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rows )( 
            IAcadTable * This,
            /* [in] */ int nRows);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Columns )( 
            IAcadTable * This,
            /* [retval][out] */ int *pColumns);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Columns )( 
            IAcadTable * This,
            /* [in] */ int nColumns);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FlowDirection )( 
            IAcadTable * This,
            /* [retval][out] */ AcTableDirection *pFlow);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FlowDirection )( 
            IAcadTable * This,
            /* [in] */ AcTableDirection flow);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadTable * This,
            /* [retval][out] */ double *pWidth);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadTable * This,
            /* [in] */ double fWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadTable * This,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadTable * This,
            /* [in] */ double fRowHeight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VertCellMargin )( 
            IAcadTable * This,
            /* [retval][out] */ double *pGap);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VertCellMargin )( 
            IAcadTable * This,
            /* [in] */ double gap);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorzCellMargin )( 
            IAcadTable * This,
            /* [retval][out] */ double *pGap);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorzCellMargin )( 
            IAcadTable * This,
            /* [in] */ double gap);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadTable * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetColumnWidth )( 
            IAcadTable * This,
            /* [in] */ int col,
            /* [retval][out] */ double *pWidth);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetColumnWidth )( 
            IAcadTable * This,
            /* [in] */ int col,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ColumnWidth )( 
            IAcadTable * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetRowHeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [retval][out] */ double *pheight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetRowHeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RowHeight )( 
            IAcadTable * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetMinimumColumnWidth )( 
            IAcadTable * This,
            /* [in] */ int col,
            /* [retval][out] */ double *pWidth);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetMinimumRowHeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinimumTableWidth )( 
            IAcadTable * This,
            /* [retval][out] */ double *pWidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinimumTableHeight )( 
            IAcadTable * This,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT *directionVector);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Direction )( 
            IAcadTable * This,
            /* [in] */ VARIANT directionVector);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TitleSuppressed )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TitleSuppressed )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HeaderSuppressed )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HeaderSuppressed )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAlignment )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ AcCellAlignment *pCellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetAlignment )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ AcCellAlignment cellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBackgroundColorNone )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBackgroundColorNone )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBackgroundColor )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBackgroundColor )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetContentColor )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetContentColor )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextStyle )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextStyle )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextHeight )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ double *pTextHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextHeight )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ double textHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLineWeight )( 
            IAcadTable * This,
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLineWeight )( 
            IAcadTable * This,
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridColor )( 
            IAcadTable * This,
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridColor )( 
            IAcadTable * This,
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridVisibility )( 
            IAcadTable * This,
            /* [in] */ AcGridLineType gridLineType,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridVisibility )( 
            IAcadTable * This,
            /* [in] */ int gridLineTypes,
            /* [in] */ int rowTypes,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TableStyleOverrides )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT *pIntArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ClearTableStyleOverrides )( 
            IAcadTable * This,
            /* [in] */ int flag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellType )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcCellType *pCellType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellType )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellType CellType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellExtents )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ VARIANT_BOOL bOuterCell,
            /* [retval][out] */ VARIANT *pPts);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAttachmentPoint )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT *pAttachmentPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellAlignment )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcCellAlignment *pCellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellAlignment )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellAlignment cellAlignment);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellBackgroundColorNone )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellBackgroundColorNone )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellBackgroundColor )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellBackgroundColor )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellContentColor )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellContentColor )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellStyleOverrides )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT *pIntArray);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteCellContent )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetRowType )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [retval][out] */ AcRowType *pRowType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetText )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ BSTR *pStr);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetText )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ BSTR pStr);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellTextStyle )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellTextStyle )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellTextHeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ double *pTextHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellTextHeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ double textHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextRotation )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcRotationAngle *textRotation);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextRotation )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcRotationAngle textRotation);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAutoScale )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetAutoScale )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockTableRecordId )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG_PTR *blkId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockTableRecordId )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR blkId,
            /* [in] */ VARIANT_BOOL bAutoFit);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockScale )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ double *blkScale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockScale )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ double blkScale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockRotation )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ double *blkRotation);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockRotation )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ double blkRotation);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockAttributeValue )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR attdefId,
            /* [retval][out] */ BSTR *bstrValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockAttributeValue )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR attdefId,
            /* [in] */ BSTR bstrValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellGridLineWeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellEdgeMask edge,
            /* [retval][out] */ ACAD_LWEIGHT *plineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellGridLineWeight )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ int edges,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellGridColor )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellEdgeMask edge,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellGridColor )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ int edges,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellGridVisibility )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellEdgeMask edge,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellGridVisibility )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ int edges,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertColumns )( 
            IAcadTable * This,
            /* [in] */ int col,
            /* [in] */ double width,
            /* [in] */ int cols);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteColumns )( 
            IAcadTable * This,
            /* [in] */ int col,
            /* [in] */ int cols);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertRows )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ double height,
            /* [in] */ int rows);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteRows )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int rows);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *MergeCells )( 
            IAcadTable * This,
            /* [in] */ int minRow,
            /* [in] */ int maxRow,
            /* [in] */ int minCol,
            /* [in] */ int maxCol);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *UnmergeCells )( 
            IAcadTable * This,
            /* [in] */ int minRow,
            /* [in] */ int maxRow,
            /* [in] */ int minCol,
            /* [in] */ int maxCol);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IsMergedCell )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [out] */ int *minRow,
            /* [out] */ int *maxRow,
            /* [out] */ int *minCol,
            /* [out] */ int *maxCol,
            /* [retval][out] */ VARIANT_BOOL *pbValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFieldId )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG_PTR *fieldId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFieldId )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG_PTR fieldId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GenerateLayout )( 
            IAcadTable * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RecomputeTableBlock )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bForceUpdate);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *HitTest )( 
            IAcadTable * This,
            /* [in] */ VARIANT wpt,
            /* [in] */ VARIANT wviewVec,
            /* [out] */ int *resultRowIndex,
            /* [out] */ int *resultColumnIndex,
            /* [retval][out] */ VARIANT_BOOL *bReturn);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Select )( 
            IAcadTable * This,
            /* [in] */ VARIANT wpt,
            /* [in] */ VARIANT wvwVec,
            /* [in] */ VARIANT wvwxVec,
            /* [in] */ double wxaper,
            /* [in] */ double wyaper,
            /* [in] */ VARIANT_BOOL allowOutside,
            /* [out] */ int *resultRowIndex,
            /* [out] */ int *resultColumnIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SelectSubRegion )( 
            IAcadTable * This,
            /* [in] */ VARIANT wpt1,
            /* [in] */ VARIANT wpt2,
            /* [in] */ VARIANT wvwVec,
            /* [in] */ VARIANT wvwxVec,
            /* [in] */ AcSelectType seltype,
            /* [in] */ VARIANT_BOOL bIncludeCurrentSelection,
            /* [out] */ int *rowMin,
            /* [out] */ int *rowMax,
            /* [out] */ int *colMin,
            /* [out] */ int *colMax);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ReselectSubRegion )( 
            IAcadTable * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetSubSelection )( 
            IAcadTable * This,
            /* [out] */ int *rowMin,
            /* [out] */ int *rowMax,
            /* [out] */ int *colMin,
            /* [out] */ int *colMax);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetSubSelection )( 
            IAcadTable * This,
            /* [in] */ int rowMin,
            /* [in] */ int rowMax,
            /* [in] */ int colMin,
            /* [in] */ int colMax);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ClearSubSelection )( 
            IAcadTable * This);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasSubSelection )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *pbValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RegenerateTableSuppressed )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RegenerateTableSuppressed )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDataType )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetDataType )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            /* [in] */ AcValueDataType dataType,
            /* [in] */ AcValueUnitType unitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormat )( 
            IAcadTable * This,
            /* [in] */ AcRowType rowType,
            /* [retval][out] */ BSTR *pFormat);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFormat )( 
            IAcadTable * This,
            /* [in] */ int rowTypes,
            BSTR pFormat);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *FormatValue )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            AcFormatOption nOption,
            BSTR *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellDataType )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellDataType )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            AcValueDataType dataType,
            AcValueUnitType unitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellFormat )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ BSTR *pFormat);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellFormat )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            BSTR pFormat);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellValue )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellValue )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            VARIANT val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellValueFromText )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ BSTR val,
            /* [in] */ AcParseOption nOption);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ResetCellValue )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockTableRecordId32 )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG *blkId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockTableRecordId32 )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG blkId,
            /* [in] */ VARIANT_BOOL bAutoFit);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockAttributeValue32 )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG attdefId,
            /* [retval][out] */ BSTR *bstrValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockAttributeValue32 )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG attdefId,
            /* [in] */ BSTR bstrValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFieldId32 )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ LONG *fieldId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFieldId32 )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ LONG fieldId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IsEmpty )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreateContent )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nIndex,
            /* [retval][out] */ int *pInt);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *MoveContent )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nFromIndex,
            /* [in] */ int nToIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DeleteContent )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetValue )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ VARIANT *pAcValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetValue )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ VARIANT acValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetValueFromText )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR szText,
            /* [in] */ AcParseOption nOption);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDataFormat )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetDataFormat )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR szFormat);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextString )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pTextString);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextString )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR text);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFieldId2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG_PTR *pAcDbObjectId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFieldId2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR acDbObjectId,
            /* [in] */ AcCellOption nflag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockTableRecordId2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG_PTR *pAcDbObjectId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockTableRecordId2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR blkId,
            /* [in] */ VARIANT_BOOL autoFit);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockAttributeValue2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR blkId,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockAttributeValue2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG_PTR blkId,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCustomData )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR szKey,
            /* [out] */ VARIANT *pData);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCustomData )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR szKey,
            /* [in] */ VARIANT data);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellStyle )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ BSTR *pCellStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellStyle )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR szCellStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetContentColor2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetContentColor2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetDataType2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [out] */ AcValueDataType *pDataType,
            /* [out] */ AcValueUnitType *pUnitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetDataType2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ AcValueDataType dataType,
            /* [in] */ AcValueUnitType unitType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextStyle2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pbstrStyleName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextStyle2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR bstrStyleName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextHeight2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetTextHeight2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetRotation )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ double *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetRotation )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ double value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetAutoScale2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ VARIANT_BOOL *bAutoScale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetAutoScale2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ VARIANT_BOOL bAutoFit);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetScale )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ double *pScale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetScale )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ double scale);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveAllOverrides )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLineWeight2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ ACAD_LWEIGHT *pLineWeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLineWeight2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ ACAD_LWEIGHT lineWeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLinetype )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ LONG_PTR *pacDbObjId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLinetype )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ LONG_PTR idLinetype);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridColor2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridColor2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridVisibility2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridVisibility2 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridDoubleLineSpacing )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ double *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridDoubleLineSpacing )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ double fSpacing);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnableBreak )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bEnable);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBreakHeight )( 
            IAcadTable * This,
            /* [in] */ int nIndex,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBreakHeight )( 
            IAcadTable * This,
            /* [in] */ int nIndex,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetContentType )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ AcCellContentType *pType);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetMargin )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcCellMargin nMargin,
            /* [retval][out] */ double *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetMargin )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcCellMargin nMargins,
            /* [in] */ double fMargin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetContentLayout )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [retval][out] */ AcCellContentLayout *pLayout);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetContentLayout )( 
            IAcadTable * This,
            /* [in] */ int row,
            /* [in] */ int col,
            /* [in] */ AcCellContentLayout nLayout);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetOverride )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ AcCellProperty *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetOverride )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ AcCellProperty nProp);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLineStyle )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ AcGridLineStyle *pStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLineStyle )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineTypes,
            /* [in] */ AcGridLineStyle nLineStyle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertRowsAndInherit )( 
            IAcadTable * This,
            /* [in] */ int nIndex,
            /* [in] */ int nInheritFrom,
            /* [in] */ int nNumRows);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertColumnsAndInherit )( 
            IAcadTable * This,
            /* [in] */ int col,
            /* [in] */ int nInheritFrom,
            /* [in] */ int nNumCols);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetHasFormula )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormula )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ BSTR *pszFormula);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFormula )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ BSTR pszFormula);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IsContentEditable )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IsFormatEditable )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCellState )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ AcCellState *pCellState);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCellState )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcCellState nLock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *EnableMergeAll )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ VARIANT_BOOL bEnable);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IsMergeAllEnabled )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [retval][out] */ VARIANT_BOOL *bValue);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BreaksEnabled )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BreaksEnabled )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RepeatTopLabels )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RepeatTopLabels )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RepeatBottomLabels )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RepeatBottomLabels )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TableBreakFlowDirection )( 
            IAcadTable * This,
            /* [retval][out] */ AcTableFlowDirection *pDir);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TableBreakFlowDirection )( 
            IAcadTable * This,
            /* [in] */ AcTableFlowDirection dir);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowManualPositions )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowManualPositions )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowManualHeights )( 
            IAcadTable * This,
            /* [retval][out] */ VARIANT_BOOL *bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowManualHeights )( 
            IAcadTable * This,
            /* [in] */ VARIANT_BOOL bEnabled);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TableBreakHeight )( 
            IAcadTable * This,
            /* [retval][out] */ double *pHeight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TableBreakHeight )( 
            IAcadTable * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BreakSpacing )( 
            IAcadTable * This,
            /* [retval][out] */ double *pSpacing);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BreakSpacing )( 
            IAcadTable * This,
            /* [in] */ double spacing);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetColumnName )( 
            IAcadTable * This,
            /* [in] */ int nIndex,
            /* [retval][out] */ BSTR *name);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetColumnName )( 
            IAcadTable * This,
            /* [in] */ int nIndex,
            /* [in] */ BSTR name);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetToolTip )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ BSTR tip);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetFieldId232 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG *pAcDbObjectId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetFieldId232 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG acDbObjectId,
            /* [in] */ AcCellOption nflag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockTableRecordId232 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [retval][out] */ LONG *pAcDbObjectId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockTableRecordId232 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG blkId,
            /* [in] */ VARIANT_BOOL autoFit);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlockAttributeValue232 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG blkId,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlockAttributeValue232 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ int nContent,
            /* [in] */ LONG blkId,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetGridLinetype32 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [retval][out] */ LONG *pacDbObjId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetGridLinetype32 )( 
            IAcadTable * This,
            /* [in] */ int nRow,
            /* [in] */ int nCol,
            /* [in] */ AcGridLineType nGridLineType,
            /* [in] */ LONG idLinetype);
        
        END_INTERFACE
    } IAcadTableVtbl;

    interface IAcadTable
    {
        CONST_VTBL struct IAcadTableVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadTable_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadTable_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadTable_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadTable_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadTable_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadTable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadTable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadTable_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadTable_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadTable_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadTable_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadTable_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadTable_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadTable_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadTable_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadTable_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadTable_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadTable_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadTable_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadTable_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadTable_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadTable_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadTable_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadTable_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadTable_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadTable_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadTable_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadTable_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadTable_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadTable_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadTable_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadTable_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadTable_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadTable_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadTable_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadTable_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadTable_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadTable_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadTable_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadTable_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadTable_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadTable_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadTable_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadTable_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadTable_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadTable_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadTable_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadTable_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadTable_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadTable_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadTable_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadTable_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadTable_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadTable_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadTable_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadTable_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadTable_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadTable_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadTable_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadTable_get_Rows(This,pRows)	\
    ( (This)->lpVtbl -> get_Rows(This,pRows) ) 

#define IAcadTable_put_Rows(This,nRows)	\
    ( (This)->lpVtbl -> put_Rows(This,nRows) ) 

#define IAcadTable_get_Columns(This,pColumns)	\
    ( (This)->lpVtbl -> get_Columns(This,pColumns) ) 

#define IAcadTable_put_Columns(This,nColumns)	\
    ( (This)->lpVtbl -> put_Columns(This,nColumns) ) 

#define IAcadTable_get_FlowDirection(This,pFlow)	\
    ( (This)->lpVtbl -> get_FlowDirection(This,pFlow) ) 

#define IAcadTable_put_FlowDirection(This,flow)	\
    ( (This)->lpVtbl -> put_FlowDirection(This,flow) ) 

#define IAcadTable_get_Width(This,pWidth)	\
    ( (This)->lpVtbl -> get_Width(This,pWidth) ) 

#define IAcadTable_put_Width(This,fWidth)	\
    ( (This)->lpVtbl -> put_Width(This,fWidth) ) 

#define IAcadTable_get_Height(This,pHeight)	\
    ( (This)->lpVtbl -> get_Height(This,pHeight) ) 

#define IAcadTable_put_Height(This,fRowHeight)	\
    ( (This)->lpVtbl -> put_Height(This,fRowHeight) ) 

#define IAcadTable_get_VertCellMargin(This,pGap)	\
    ( (This)->lpVtbl -> get_VertCellMargin(This,pGap) ) 

#define IAcadTable_put_VertCellMargin(This,gap)	\
    ( (This)->lpVtbl -> put_VertCellMargin(This,gap) ) 

#define IAcadTable_get_HorzCellMargin(This,pGap)	\
    ( (This)->lpVtbl -> get_HorzCellMargin(This,pGap) ) 

#define IAcadTable_put_HorzCellMargin(This,gap)	\
    ( (This)->lpVtbl -> put_HorzCellMargin(This,gap) ) 

#define IAcadTable_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadTable_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadTable_GetColumnWidth(This,col,pWidth)	\
    ( (This)->lpVtbl -> GetColumnWidth(This,col,pWidth) ) 

#define IAcadTable_SetColumnWidth(This,col,width)	\
    ( (This)->lpVtbl -> SetColumnWidth(This,col,width) ) 

#define IAcadTable_put_ColumnWidth(This,width)	\
    ( (This)->lpVtbl -> put_ColumnWidth(This,width) ) 

#define IAcadTable_GetRowHeight(This,row,pheight)	\
    ( (This)->lpVtbl -> GetRowHeight(This,row,pheight) ) 

#define IAcadTable_SetRowHeight(This,row,height)	\
    ( (This)->lpVtbl -> SetRowHeight(This,row,height) ) 

#define IAcadTable_put_RowHeight(This,height)	\
    ( (This)->lpVtbl -> put_RowHeight(This,height) ) 

#define IAcadTable_GetMinimumColumnWidth(This,col,pWidth)	\
    ( (This)->lpVtbl -> GetMinimumColumnWidth(This,col,pWidth) ) 

#define IAcadTable_GetMinimumRowHeight(This,row,pHeight)	\
    ( (This)->lpVtbl -> GetMinimumRowHeight(This,row,pHeight) ) 

#define IAcadTable_get_MinimumTableWidth(This,pWidth)	\
    ( (This)->lpVtbl -> get_MinimumTableWidth(This,pWidth) ) 

#define IAcadTable_get_MinimumTableHeight(This,pHeight)	\
    ( (This)->lpVtbl -> get_MinimumTableHeight(This,pHeight) ) 

#define IAcadTable_get_Direction(This,directionVector)	\
    ( (This)->lpVtbl -> get_Direction(This,directionVector) ) 

#define IAcadTable_put_Direction(This,directionVector)	\
    ( (This)->lpVtbl -> put_Direction(This,directionVector) ) 

#define IAcadTable_get_TitleSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> get_TitleSuppressed(This,bValue) ) 

#define IAcadTable_put_TitleSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> put_TitleSuppressed(This,bValue) ) 

#define IAcadTable_get_HeaderSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> get_HeaderSuppressed(This,bValue) ) 

#define IAcadTable_put_HeaderSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> put_HeaderSuppressed(This,bValue) ) 

#define IAcadTable_GetAlignment(This,rowType,pCellAlignment)	\
    ( (This)->lpVtbl -> GetAlignment(This,rowType,pCellAlignment) ) 

#define IAcadTable_SetAlignment(This,rowTypes,cellAlignment)	\
    ( (This)->lpVtbl -> SetAlignment(This,rowTypes,cellAlignment) ) 

#define IAcadTable_GetBackgroundColorNone(This,rowType,bValue)	\
    ( (This)->lpVtbl -> GetBackgroundColorNone(This,rowType,bValue) ) 

#define IAcadTable_SetBackgroundColorNone(This,rowTypes,bValue)	\
    ( (This)->lpVtbl -> SetBackgroundColorNone(This,rowTypes,bValue) ) 

#define IAcadTable_GetBackgroundColor(This,rowType,pColor)	\
    ( (This)->lpVtbl -> GetBackgroundColor(This,rowType,pColor) ) 

#define IAcadTable_SetBackgroundColor(This,rowTypes,pColor)	\
    ( (This)->lpVtbl -> SetBackgroundColor(This,rowTypes,pColor) ) 

#define IAcadTable_GetContentColor(This,rowType,pColor)	\
    ( (This)->lpVtbl -> GetContentColor(This,rowType,pColor) ) 

#define IAcadTable_SetContentColor(This,rowTypes,pColor)	\
    ( (This)->lpVtbl -> SetContentColor(This,rowTypes,pColor) ) 

#define IAcadTable_GetTextStyle(This,rowType,bstrName)	\
    ( (This)->lpVtbl -> GetTextStyle(This,rowType,bstrName) ) 

#define IAcadTable_SetTextStyle(This,rowTypes,bstrName)	\
    ( (This)->lpVtbl -> SetTextStyle(This,rowTypes,bstrName) ) 

#define IAcadTable_GetTextHeight(This,rowType,pTextHeight)	\
    ( (This)->lpVtbl -> GetTextHeight(This,rowType,pTextHeight) ) 

#define IAcadTable_SetTextHeight(This,rowTypes,textHeight)	\
    ( (This)->lpVtbl -> SetTextHeight(This,rowTypes,textHeight) ) 

#define IAcadTable_GetGridLineWeight(This,gridLineType,rowType,lineweight)	\
    ( (This)->lpVtbl -> GetGridLineWeight(This,gridLineType,rowType,lineweight) ) 

#define IAcadTable_SetGridLineWeight(This,gridLineTypes,rowTypes,lineweight)	\
    ( (This)->lpVtbl -> SetGridLineWeight(This,gridLineTypes,rowTypes,lineweight) ) 

#define IAcadTable_GetGridColor(This,gridLineType,rowType,pColor)	\
    ( (This)->lpVtbl -> GetGridColor(This,gridLineType,rowType,pColor) ) 

#define IAcadTable_SetGridColor(This,gridLineTypes,rowTypes,pColor)	\
    ( (This)->lpVtbl -> SetGridColor(This,gridLineTypes,rowTypes,pColor) ) 

#define IAcadTable_GetGridVisibility(This,gridLineType,rowType,bValue)	\
    ( (This)->lpVtbl -> GetGridVisibility(This,gridLineType,rowType,bValue) ) 

#define IAcadTable_SetGridVisibility(This,gridLineTypes,rowTypes,bValue)	\
    ( (This)->lpVtbl -> SetGridVisibility(This,gridLineTypes,rowTypes,bValue) ) 

#define IAcadTable_get_TableStyleOverrides(This,pIntArray)	\
    ( (This)->lpVtbl -> get_TableStyleOverrides(This,pIntArray) ) 

#define IAcadTable_ClearTableStyleOverrides(This,flag)	\
    ( (This)->lpVtbl -> ClearTableStyleOverrides(This,flag) ) 

#define IAcadTable_GetCellType(This,row,col,pCellType)	\
    ( (This)->lpVtbl -> GetCellType(This,row,col,pCellType) ) 

#define IAcadTable_SetCellType(This,row,col,CellType)	\
    ( (This)->lpVtbl -> SetCellType(This,row,col,CellType) ) 

#define IAcadTable_GetCellExtents(This,row,col,bOuterCell,pPts)	\
    ( (This)->lpVtbl -> GetCellExtents(This,row,col,bOuterCell,pPts) ) 

#define IAcadTable_GetAttachmentPoint(This,row,col,pAttachmentPoint)	\
    ( (This)->lpVtbl -> GetAttachmentPoint(This,row,col,pAttachmentPoint) ) 

#define IAcadTable_GetCellAlignment(This,row,col,pCellAlignment)	\
    ( (This)->lpVtbl -> GetCellAlignment(This,row,col,pCellAlignment) ) 

#define IAcadTable_SetCellAlignment(This,row,col,cellAlignment)	\
    ( (This)->lpVtbl -> SetCellAlignment(This,row,col,cellAlignment) ) 

#define IAcadTable_GetCellBackgroundColorNone(This,row,col,bValue)	\
    ( (This)->lpVtbl -> GetCellBackgroundColorNone(This,row,col,bValue) ) 

#define IAcadTable_SetCellBackgroundColorNone(This,row,col,bValue)	\
    ( (This)->lpVtbl -> SetCellBackgroundColorNone(This,row,col,bValue) ) 

#define IAcadTable_GetCellBackgroundColor(This,row,col,pColor)	\
    ( (This)->lpVtbl -> GetCellBackgroundColor(This,row,col,pColor) ) 

#define IAcadTable_SetCellBackgroundColor(This,row,col,pColor)	\
    ( (This)->lpVtbl -> SetCellBackgroundColor(This,row,col,pColor) ) 

#define IAcadTable_GetCellContentColor(This,row,col,pColor)	\
    ( (This)->lpVtbl -> GetCellContentColor(This,row,col,pColor) ) 

#define IAcadTable_SetCellContentColor(This,row,col,pColor)	\
    ( (This)->lpVtbl -> SetCellContentColor(This,row,col,pColor) ) 

#define IAcadTable_GetCellStyleOverrides(This,row,col,pIntArray)	\
    ( (This)->lpVtbl -> GetCellStyleOverrides(This,row,col,pIntArray) ) 

#define IAcadTable_DeleteCellContent(This,row,col)	\
    ( (This)->lpVtbl -> DeleteCellContent(This,row,col) ) 

#define IAcadTable_GetRowType(This,row,pRowType)	\
    ( (This)->lpVtbl -> GetRowType(This,row,pRowType) ) 

#define IAcadTable_GetText(This,row,col,pStr)	\
    ( (This)->lpVtbl -> GetText(This,row,col,pStr) ) 

#define IAcadTable_SetText(This,row,col,pStr)	\
    ( (This)->lpVtbl -> SetText(This,row,col,pStr) ) 

#define IAcadTable_GetCellTextStyle(This,row,col,bstrName)	\
    ( (This)->lpVtbl -> GetCellTextStyle(This,row,col,bstrName) ) 

#define IAcadTable_SetCellTextStyle(This,row,col,bstrName)	\
    ( (This)->lpVtbl -> SetCellTextStyle(This,row,col,bstrName) ) 

#define IAcadTable_GetCellTextHeight(This,row,col,pTextHeight)	\
    ( (This)->lpVtbl -> GetCellTextHeight(This,row,col,pTextHeight) ) 

#define IAcadTable_SetCellTextHeight(This,row,col,textHeight)	\
    ( (This)->lpVtbl -> SetCellTextHeight(This,row,col,textHeight) ) 

#define IAcadTable_GetTextRotation(This,row,col,textRotation)	\
    ( (This)->lpVtbl -> GetTextRotation(This,row,col,textRotation) ) 

#define IAcadTable_SetTextRotation(This,row,col,textRotation)	\
    ( (This)->lpVtbl -> SetTextRotation(This,row,col,textRotation) ) 

#define IAcadTable_GetAutoScale(This,row,col,bValue)	\
    ( (This)->lpVtbl -> GetAutoScale(This,row,col,bValue) ) 

#define IAcadTable_SetAutoScale(This,row,col,bValue)	\
    ( (This)->lpVtbl -> SetAutoScale(This,row,col,bValue) ) 

#define IAcadTable_GetBlockTableRecordId(This,row,col,blkId)	\
    ( (This)->lpVtbl -> GetBlockTableRecordId(This,row,col,blkId) ) 

#define IAcadTable_SetBlockTableRecordId(This,row,col,blkId,bAutoFit)	\
    ( (This)->lpVtbl -> SetBlockTableRecordId(This,row,col,blkId,bAutoFit) ) 

#define IAcadTable_GetBlockScale(This,row,col,blkScale)	\
    ( (This)->lpVtbl -> GetBlockScale(This,row,col,blkScale) ) 

#define IAcadTable_SetBlockScale(This,row,col,blkScale)	\
    ( (This)->lpVtbl -> SetBlockScale(This,row,col,blkScale) ) 

#define IAcadTable_GetBlockRotation(This,row,col,blkRotation)	\
    ( (This)->lpVtbl -> GetBlockRotation(This,row,col,blkRotation) ) 

#define IAcadTable_SetBlockRotation(This,row,col,blkRotation)	\
    ( (This)->lpVtbl -> SetBlockRotation(This,row,col,blkRotation) ) 

#define IAcadTable_GetBlockAttributeValue(This,row,col,attdefId,bstrValue)	\
    ( (This)->lpVtbl -> GetBlockAttributeValue(This,row,col,attdefId,bstrValue) ) 

#define IAcadTable_SetBlockAttributeValue(This,row,col,attdefId,bstrValue)	\
    ( (This)->lpVtbl -> SetBlockAttributeValue(This,row,col,attdefId,bstrValue) ) 

#define IAcadTable_GetCellGridLineWeight(This,row,col,edge,plineweight)	\
    ( (This)->lpVtbl -> GetCellGridLineWeight(This,row,col,edge,plineweight) ) 

#define IAcadTable_SetCellGridLineWeight(This,row,col,edges,lineweight)	\
    ( (This)->lpVtbl -> SetCellGridLineWeight(This,row,col,edges,lineweight) ) 

#define IAcadTable_GetCellGridColor(This,row,col,edge,pColor)	\
    ( (This)->lpVtbl -> GetCellGridColor(This,row,col,edge,pColor) ) 

#define IAcadTable_SetCellGridColor(This,row,col,edges,pColor)	\
    ( (This)->lpVtbl -> SetCellGridColor(This,row,col,edges,pColor) ) 

#define IAcadTable_GetCellGridVisibility(This,row,col,edge,bValue)	\
    ( (This)->lpVtbl -> GetCellGridVisibility(This,row,col,edge,bValue) ) 

#define IAcadTable_SetCellGridVisibility(This,row,col,edges,bValue)	\
    ( (This)->lpVtbl -> SetCellGridVisibility(This,row,col,edges,bValue) ) 

#define IAcadTable_InsertColumns(This,col,width,cols)	\
    ( (This)->lpVtbl -> InsertColumns(This,col,width,cols) ) 

#define IAcadTable_DeleteColumns(This,col,cols)	\
    ( (This)->lpVtbl -> DeleteColumns(This,col,cols) ) 

#define IAcadTable_InsertRows(This,row,height,rows)	\
    ( (This)->lpVtbl -> InsertRows(This,row,height,rows) ) 

#define IAcadTable_DeleteRows(This,row,rows)	\
    ( (This)->lpVtbl -> DeleteRows(This,row,rows) ) 

#define IAcadTable_MergeCells(This,minRow,maxRow,minCol,maxCol)	\
    ( (This)->lpVtbl -> MergeCells(This,minRow,maxRow,minCol,maxCol) ) 

#define IAcadTable_UnmergeCells(This,minRow,maxRow,minCol,maxCol)	\
    ( (This)->lpVtbl -> UnmergeCells(This,minRow,maxRow,minCol,maxCol) ) 

#define IAcadTable_IsMergedCell(This,row,col,minRow,maxRow,minCol,maxCol,pbValue)	\
    ( (This)->lpVtbl -> IsMergedCell(This,row,col,minRow,maxRow,minCol,maxCol,pbValue) ) 

#define IAcadTable_GetFieldId(This,row,col,fieldId)	\
    ( (This)->lpVtbl -> GetFieldId(This,row,col,fieldId) ) 

#define IAcadTable_SetFieldId(This,row,col,fieldId)	\
    ( (This)->lpVtbl -> SetFieldId(This,row,col,fieldId) ) 

#define IAcadTable_GenerateLayout(This)	\
    ( (This)->lpVtbl -> GenerateLayout(This) ) 

#define IAcadTable_RecomputeTableBlock(This,bForceUpdate)	\
    ( (This)->lpVtbl -> RecomputeTableBlock(This,bForceUpdate) ) 

#define IAcadTable_HitTest(This,wpt,wviewVec,resultRowIndex,resultColumnIndex,bReturn)	\
    ( (This)->lpVtbl -> HitTest(This,wpt,wviewVec,resultRowIndex,resultColumnIndex,bReturn) ) 

#define IAcadTable_Select(This,wpt,wvwVec,wvwxVec,wxaper,wyaper,allowOutside,resultRowIndex,resultColumnIndex)	\
    ( (This)->lpVtbl -> Select(This,wpt,wvwVec,wvwxVec,wxaper,wyaper,allowOutside,resultRowIndex,resultColumnIndex) ) 

#define IAcadTable_SelectSubRegion(This,wpt1,wpt2,wvwVec,wvwxVec,seltype,bIncludeCurrentSelection,rowMin,rowMax,colMin,colMax)	\
    ( (This)->lpVtbl -> SelectSubRegion(This,wpt1,wpt2,wvwVec,wvwxVec,seltype,bIncludeCurrentSelection,rowMin,rowMax,colMin,colMax) ) 

#define IAcadTable_ReselectSubRegion(This)	\
    ( (This)->lpVtbl -> ReselectSubRegion(This) ) 

#define IAcadTable_GetSubSelection(This,rowMin,rowMax,colMin,colMax)	\
    ( (This)->lpVtbl -> GetSubSelection(This,rowMin,rowMax,colMin,colMax) ) 

#define IAcadTable_SetSubSelection(This,rowMin,rowMax,colMin,colMax)	\
    ( (This)->lpVtbl -> SetSubSelection(This,rowMin,rowMax,colMin,colMax) ) 

#define IAcadTable_ClearSubSelection(This)	\
    ( (This)->lpVtbl -> ClearSubSelection(This) ) 

#define IAcadTable_get_HasSubSelection(This,pbValue)	\
    ( (This)->lpVtbl -> get_HasSubSelection(This,pbValue) ) 

#define IAcadTable_get_RegenerateTableSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> get_RegenerateTableSuppressed(This,bValue) ) 

#define IAcadTable_put_RegenerateTableSuppressed(This,bValue)	\
    ( (This)->lpVtbl -> put_RegenerateTableSuppressed(This,bValue) ) 

#define IAcadTable_GetDataType(This,rowType,pDataType,pUnitType)	\
    ( (This)->lpVtbl -> GetDataType(This,rowType,pDataType,pUnitType) ) 

#define IAcadTable_SetDataType(This,rowTypes,dataType,unitType)	\
    ( (This)->lpVtbl -> SetDataType(This,rowTypes,dataType,unitType) ) 

#define IAcadTable_GetFormat(This,rowType,pFormat)	\
    ( (This)->lpVtbl -> GetFormat(This,rowType,pFormat) ) 

#define IAcadTable_SetFormat(This,rowTypes,pFormat)	\
    ( (This)->lpVtbl -> SetFormat(This,rowTypes,pFormat) ) 

#define IAcadTable_FormatValue(This,row,col,nOption,pVal)	\
    ( (This)->lpVtbl -> FormatValue(This,row,col,nOption,pVal) ) 

#define IAcadTable_GetCellDataType(This,row,col,pDataType,pUnitType)	\
    ( (This)->lpVtbl -> GetCellDataType(This,row,col,pDataType,pUnitType) ) 

#define IAcadTable_SetCellDataType(This,row,col,dataType,unitType)	\
    ( (This)->lpVtbl -> SetCellDataType(This,row,col,dataType,unitType) ) 

#define IAcadTable_GetCellFormat(This,row,col,pFormat)	\
    ( (This)->lpVtbl -> GetCellFormat(This,row,col,pFormat) ) 

#define IAcadTable_SetCellFormat(This,row,col,pFormat)	\
    ( (This)->lpVtbl -> SetCellFormat(This,row,col,pFormat) ) 

#define IAcadTable_GetCellValue(This,row,col,pVal)	\
    ( (This)->lpVtbl -> GetCellValue(This,row,col,pVal) ) 

#define IAcadTable_SetCellValue(This,row,col,val)	\
    ( (This)->lpVtbl -> SetCellValue(This,row,col,val) ) 

#define IAcadTable_SetCellValueFromText(This,row,col,val,nOption)	\
    ( (This)->lpVtbl -> SetCellValueFromText(This,row,col,val,nOption) ) 

#define IAcadTable_ResetCellValue(This,row,col)	\
    ( (This)->lpVtbl -> ResetCellValue(This,row,col) ) 

#define IAcadTable_GetBlockTableRecordId32(This,row,col,blkId)	\
    ( (This)->lpVtbl -> GetBlockTableRecordId32(This,row,col,blkId) ) 

#define IAcadTable_SetBlockTableRecordId32(This,row,col,blkId,bAutoFit)	\
    ( (This)->lpVtbl -> SetBlockTableRecordId32(This,row,col,blkId,bAutoFit) ) 

#define IAcadTable_GetBlockAttributeValue32(This,row,col,attdefId,bstrValue)	\
    ( (This)->lpVtbl -> GetBlockAttributeValue32(This,row,col,attdefId,bstrValue) ) 

#define IAcadTable_SetBlockAttributeValue32(This,row,col,attdefId,bstrValue)	\
    ( (This)->lpVtbl -> SetBlockAttributeValue32(This,row,col,attdefId,bstrValue) ) 

#define IAcadTable_GetFieldId32(This,row,col,fieldId)	\
    ( (This)->lpVtbl -> GetFieldId32(This,row,col,fieldId) ) 

#define IAcadTable_SetFieldId32(This,row,col,fieldId)	\
    ( (This)->lpVtbl -> SetFieldId32(This,row,col,fieldId) ) 

#define IAcadTable_IsEmpty(This,nRow,nCol,bValue)	\
    ( (This)->lpVtbl -> IsEmpty(This,nRow,nCol,bValue) ) 

#define IAcadTable_CreateContent(This,nRow,nCol,nIndex,pInt)	\
    ( (This)->lpVtbl -> CreateContent(This,nRow,nCol,nIndex,pInt) ) 

#define IAcadTable_MoveContent(This,nRow,nCol,nFromIndex,nToIndex)	\
    ( (This)->lpVtbl -> MoveContent(This,nRow,nCol,nFromIndex,nToIndex) ) 

#define IAcadTable_DeleteContent(This,nRow,nCol)	\
    ( (This)->lpVtbl -> DeleteContent(This,nRow,nCol) ) 

#define IAcadTable_GetValue(This,nRow,nCol,nContent,pAcValue)	\
    ( (This)->lpVtbl -> GetValue(This,nRow,nCol,nContent,pAcValue) ) 

#define IAcadTable_SetValue(This,nRow,nCol,nContent,acValue)	\
    ( (This)->lpVtbl -> SetValue(This,nRow,nCol,nContent,acValue) ) 

#define IAcadTable_SetValueFromText(This,nRow,nCol,nContent,szText,nOption)	\
    ( (This)->lpVtbl -> SetValueFromText(This,nRow,nCol,nContent,szText,nOption) ) 

#define IAcadTable_GetDataFormat(This,nRow,nCol,nContent,pValue)	\
    ( (This)->lpVtbl -> GetDataFormat(This,nRow,nCol,nContent,pValue) ) 

#define IAcadTable_SetDataFormat(This,nRow,nCol,nContent,szFormat)	\
    ( (This)->lpVtbl -> SetDataFormat(This,nRow,nCol,nContent,szFormat) ) 

#define IAcadTable_GetTextString(This,nRow,nCol,nContent,pTextString)	\
    ( (This)->lpVtbl -> GetTextString(This,nRow,nCol,nContent,pTextString) ) 

#define IAcadTable_SetTextString(This,nRow,nCol,nContent,text)	\
    ( (This)->lpVtbl -> SetTextString(This,nRow,nCol,nContent,text) ) 

#define IAcadTable_GetFieldId2(This,nRow,nCol,nContent,pAcDbObjectId)	\
    ( (This)->lpVtbl -> GetFieldId2(This,nRow,nCol,nContent,pAcDbObjectId) ) 

#define IAcadTable_SetFieldId2(This,nRow,nCol,nContent,acDbObjectId,nflag)	\
    ( (This)->lpVtbl -> SetFieldId2(This,nRow,nCol,nContent,acDbObjectId,nflag) ) 

#define IAcadTable_GetBlockTableRecordId2(This,nRow,nCol,nContent,pAcDbObjectId)	\
    ( (This)->lpVtbl -> GetBlockTableRecordId2(This,nRow,nCol,nContent,pAcDbObjectId) ) 

#define IAcadTable_SetBlockTableRecordId2(This,nRow,nCol,nContent,blkId,autoFit)	\
    ( (This)->lpVtbl -> SetBlockTableRecordId2(This,nRow,nCol,nContent,blkId,autoFit) ) 

#define IAcadTable_GetBlockAttributeValue2(This,nRow,nCol,nContent,blkId,value)	\
    ( (This)->lpVtbl -> GetBlockAttributeValue2(This,nRow,nCol,nContent,blkId,value) ) 

#define IAcadTable_SetBlockAttributeValue2(This,nRow,nCol,nContent,blkId,value)	\
    ( (This)->lpVtbl -> SetBlockAttributeValue2(This,nRow,nCol,nContent,blkId,value) ) 

#define IAcadTable_GetCustomData(This,nRow,nCol,szKey,pData)	\
    ( (This)->lpVtbl -> GetCustomData(This,nRow,nCol,szKey,pData) ) 

#define IAcadTable_SetCustomData(This,nRow,nCol,szKey,data)	\
    ( (This)->lpVtbl -> SetCustomData(This,nRow,nCol,szKey,data) ) 

#define IAcadTable_GetCellStyle(This,nRow,nCol,pCellStyle)	\
    ( (This)->lpVtbl -> GetCellStyle(This,nRow,nCol,pCellStyle) ) 

#define IAcadTable_SetCellStyle(This,nRow,nCol,szCellStyle)	\
    ( (This)->lpVtbl -> SetCellStyle(This,nRow,nCol,szCellStyle) ) 

#define IAcadTable_GetContentColor2(This,nRow,nCol,nContent,pColor)	\
    ( (This)->lpVtbl -> GetContentColor2(This,nRow,nCol,nContent,pColor) ) 

#define IAcadTable_SetContentColor2(This,nRow,nCol,nContent,pColor)	\
    ( (This)->lpVtbl -> SetContentColor2(This,nRow,nCol,nContent,pColor) ) 

#define IAcadTable_GetDataType2(This,nRow,nCol,nContent,pDataType,pUnitType)	\
    ( (This)->lpVtbl -> GetDataType2(This,nRow,nCol,nContent,pDataType,pUnitType) ) 

#define IAcadTable_SetDataType2(This,nRow,nCol,nContent,dataType,unitType)	\
    ( (This)->lpVtbl -> SetDataType2(This,nRow,nCol,nContent,dataType,unitType) ) 

#define IAcadTable_GetTextStyle2(This,nRow,nCol,nContent,pbstrStyleName)	\
    ( (This)->lpVtbl -> GetTextStyle2(This,nRow,nCol,nContent,pbstrStyleName) ) 

#define IAcadTable_SetTextStyle2(This,nRow,nCol,nContent,bstrStyleName)	\
    ( (This)->lpVtbl -> SetTextStyle2(This,nRow,nCol,nContent,bstrStyleName) ) 

#define IAcadTable_GetTextHeight2(This,nRow,nCol,nContent,pHeight)	\
    ( (This)->lpVtbl -> GetTextHeight2(This,nRow,nCol,nContent,pHeight) ) 

#define IAcadTable_SetTextHeight2(This,nRow,nCol,nContent,height)	\
    ( (This)->lpVtbl -> SetTextHeight2(This,nRow,nCol,nContent,height) ) 

#define IAcadTable_GetRotation(This,nRow,nCol,nContent,pValue)	\
    ( (This)->lpVtbl -> GetRotation(This,nRow,nCol,nContent,pValue) ) 

#define IAcadTable_SetRotation(This,nRow,nCol,nContent,value)	\
    ( (This)->lpVtbl -> SetRotation(This,nRow,nCol,nContent,value) ) 

#define IAcadTable_GetAutoScale2(This,nRow,nCol,nContent,bAutoScale)	\
    ( (This)->lpVtbl -> GetAutoScale2(This,nRow,nCol,nContent,bAutoScale) ) 

#define IAcadTable_SetAutoScale2(This,nRow,nCol,nContent,bAutoFit)	\
    ( (This)->lpVtbl -> SetAutoScale2(This,nRow,nCol,nContent,bAutoFit) ) 

#define IAcadTable_GetScale(This,nRow,nCol,nContent,pScale)	\
    ( (This)->lpVtbl -> GetScale(This,nRow,nCol,nContent,pScale) ) 

#define IAcadTable_SetScale(This,nRow,nCol,nContent,scale)	\
    ( (This)->lpVtbl -> SetScale(This,nRow,nCol,nContent,scale) ) 

#define IAcadTable_RemoveAllOverrides(This,nRow,nCol)	\
    ( (This)->lpVtbl -> RemoveAllOverrides(This,nRow,nCol) ) 

#define IAcadTable_GetGridLineWeight2(This,nRow,nCol,nGridLineType,pLineWeight)	\
    ( (This)->lpVtbl -> GetGridLineWeight2(This,nRow,nCol,nGridLineType,pLineWeight) ) 

#define IAcadTable_SetGridLineWeight2(This,nRow,nCol,nGridLineType,lineWeight)	\
    ( (This)->lpVtbl -> SetGridLineWeight2(This,nRow,nCol,nGridLineType,lineWeight) ) 

#define IAcadTable_GetGridLinetype(This,nRow,nCol,nGridLineType,pacDbObjId)	\
    ( (This)->lpVtbl -> GetGridLinetype(This,nRow,nCol,nGridLineType,pacDbObjId) ) 

#define IAcadTable_SetGridLinetype(This,nRow,nCol,nGridLineType,idLinetype)	\
    ( (This)->lpVtbl -> SetGridLinetype(This,nRow,nCol,nGridLineType,idLinetype) ) 

#define IAcadTable_GetGridColor2(This,nRow,nCol,nGridLineType,pColor)	\
    ( (This)->lpVtbl -> GetGridColor2(This,nRow,nCol,nGridLineType,pColor) ) 

#define IAcadTable_SetGridColor2(This,nRow,nCol,nGridLineType,pColor)	\
    ( (This)->lpVtbl -> SetGridColor2(This,nRow,nCol,nGridLineType,pColor) ) 

#define IAcadTable_GetGridVisibility2(This,nRow,nCol,nGridLineType,bVisible)	\
    ( (This)->lpVtbl -> GetGridVisibility2(This,nRow,nCol,nGridLineType,bVisible) ) 

#define IAcadTable_SetGridVisibility2(This,nRow,nCol,nGridLineType,bVisible)	\
    ( (This)->lpVtbl -> SetGridVisibility2(This,nRow,nCol,nGridLineType,bVisible) ) 

#define IAcadTable_GetGridDoubleLineSpacing(This,nRow,nCol,nGridLineType,pValue)	\
    ( (This)->lpVtbl -> GetGridDoubleLineSpacing(This,nRow,nCol,nGridLineType,pValue) ) 

#define IAcadTable_SetGridDoubleLineSpacing(This,nRow,nCol,nGridLineType,fSpacing)	\
    ( (This)->lpVtbl -> SetGridDoubleLineSpacing(This,nRow,nCol,nGridLineType,fSpacing) ) 

#define IAcadTable_put_EnableBreak(This,bEnable)	\
    ( (This)->lpVtbl -> put_EnableBreak(This,bEnable) ) 

#define IAcadTable_GetBreakHeight(This,nIndex,pHeight)	\
    ( (This)->lpVtbl -> GetBreakHeight(This,nIndex,pHeight) ) 

#define IAcadTable_SetBreakHeight(This,nIndex,height)	\
    ( (This)->lpVtbl -> SetBreakHeight(This,nIndex,height) ) 

#define IAcadTable_GetContentType(This,nRow,nCol,pType)	\
    ( (This)->lpVtbl -> GetContentType(This,nRow,nCol,pType) ) 

#define IAcadTable_GetMargin(This,nRow,nCol,nMargin,pValue)	\
    ( (This)->lpVtbl -> GetMargin(This,nRow,nCol,nMargin,pValue) ) 

#define IAcadTable_SetMargin(This,nRow,nCol,nMargins,fMargin)	\
    ( (This)->lpVtbl -> SetMargin(This,nRow,nCol,nMargins,fMargin) ) 

#define IAcadTable_GetContentLayout(This,row,col,pLayout)	\
    ( (This)->lpVtbl -> GetContentLayout(This,row,col,pLayout) ) 

#define IAcadTable_SetContentLayout(This,row,col,nLayout)	\
    ( (This)->lpVtbl -> SetContentLayout(This,row,col,nLayout) ) 

#define IAcadTable_GetOverride(This,nRow,nCol,nContent,pValue)	\
    ( (This)->lpVtbl -> GetOverride(This,nRow,nCol,nContent,pValue) ) 

#define IAcadTable_SetOverride(This,nRow,nCol,nContent,nProp)	\
    ( (This)->lpVtbl -> SetOverride(This,nRow,nCol,nContent,nProp) ) 

#define IAcadTable_GetGridLineStyle(This,nRow,nCol,nGridLineType,pStyle)	\
    ( (This)->lpVtbl -> GetGridLineStyle(This,nRow,nCol,nGridLineType,pStyle) ) 

#define IAcadTable_SetGridLineStyle(This,nRow,nCol,nGridLineTypes,nLineStyle)	\
    ( (This)->lpVtbl -> SetGridLineStyle(This,nRow,nCol,nGridLineTypes,nLineStyle) ) 

#define IAcadTable_InsertRowsAndInherit(This,nIndex,nInheritFrom,nNumRows)	\
    ( (This)->lpVtbl -> InsertRowsAndInherit(This,nIndex,nInheritFrom,nNumRows) ) 

#define IAcadTable_InsertColumnsAndInherit(This,col,nInheritFrom,nNumCols)	\
    ( (This)->lpVtbl -> InsertColumnsAndInherit(This,col,nInheritFrom,nNumCols) ) 

#define IAcadTable_GetHasFormula(This,nRow,nCol,nContent,bValue)	\
    ( (This)->lpVtbl -> GetHasFormula(This,nRow,nCol,nContent,bValue) ) 

#define IAcadTable_GetFormula(This,nRow,nCol,nContent,pszFormula)	\
    ( (This)->lpVtbl -> GetFormula(This,nRow,nCol,nContent,pszFormula) ) 

#define IAcadTable_SetFormula(This,nRow,nCol,nContent,pszFormula)	\
    ( (This)->lpVtbl -> SetFormula(This,nRow,nCol,nContent,pszFormula) ) 

#define IAcadTable_IsContentEditable(This,nRow,nCol,bValue)	\
    ( (This)->lpVtbl -> IsContentEditable(This,nRow,nCol,bValue) ) 

#define IAcadTable_IsFormatEditable(This,nRow,nCol,bValue)	\
    ( (This)->lpVtbl -> IsFormatEditable(This,nRow,nCol,bValue) ) 

#define IAcadTable_GetCellState(This,nRow,nCol,pCellState)	\
    ( (This)->lpVtbl -> GetCellState(This,nRow,nCol,pCellState) ) 

#define IAcadTable_SetCellState(This,nRow,nCol,nLock)	\
    ( (This)->lpVtbl -> SetCellState(This,nRow,nCol,nLock) ) 

#define IAcadTable_EnableMergeAll(This,nRow,nCol,bEnable)	\
    ( (This)->lpVtbl -> EnableMergeAll(This,nRow,nCol,bEnable) ) 

#define IAcadTable_IsMergeAllEnabled(This,nRow,nCol,bValue)	\
    ( (This)->lpVtbl -> IsMergeAllEnabled(This,nRow,nCol,bValue) ) 

#define IAcadTable_get_BreaksEnabled(This,bEnabled)	\
    ( (This)->lpVtbl -> get_BreaksEnabled(This,bEnabled) ) 

#define IAcadTable_put_BreaksEnabled(This,bEnabled)	\
    ( (This)->lpVtbl -> put_BreaksEnabled(This,bEnabled) ) 

#define IAcadTable_get_RepeatTopLabels(This,bEnabled)	\
    ( (This)->lpVtbl -> get_RepeatTopLabels(This,bEnabled) ) 

#define IAcadTable_put_RepeatTopLabels(This,bEnabled)	\
    ( (This)->lpVtbl -> put_RepeatTopLabels(This,bEnabled) ) 

#define IAcadTable_get_RepeatBottomLabels(This,bEnabled)	\
    ( (This)->lpVtbl -> get_RepeatBottomLabels(This,bEnabled) ) 

#define IAcadTable_put_RepeatBottomLabels(This,bEnabled)	\
    ( (This)->lpVtbl -> put_RepeatBottomLabels(This,bEnabled) ) 

#define IAcadTable_get_TableBreakFlowDirection(This,pDir)	\
    ( (This)->lpVtbl -> get_TableBreakFlowDirection(This,pDir) ) 

#define IAcadTable_put_TableBreakFlowDirection(This,dir)	\
    ( (This)->lpVtbl -> put_TableBreakFlowDirection(This,dir) ) 

#define IAcadTable_get_AllowManualPositions(This,bEnabled)	\
    ( (This)->lpVtbl -> get_AllowManualPositions(This,bEnabled) ) 

#define IAcadTable_put_AllowManualPositions(This,bEnabled)	\
    ( (This)->lpVtbl -> put_AllowManualPositions(This,bEnabled) ) 

#define IAcadTable_get_AllowManualHeights(This,bEnabled)	\
    ( (This)->lpVtbl -> get_AllowManualHeights(This,bEnabled) ) 

#define IAcadTable_put_AllowManualHeights(This,bEnabled)	\
    ( (This)->lpVtbl -> put_AllowManualHeights(This,bEnabled) ) 

#define IAcadTable_get_TableBreakHeight(This,pHeight)	\
    ( (This)->lpVtbl -> get_TableBreakHeight(This,pHeight) ) 

#define IAcadTable_put_TableBreakHeight(This,height)	\
    ( (This)->lpVtbl -> put_TableBreakHeight(This,height) ) 

#define IAcadTable_get_BreakSpacing(This,pSpacing)	\
    ( (This)->lpVtbl -> get_BreakSpacing(This,pSpacing) ) 

#define IAcadTable_put_BreakSpacing(This,spacing)	\
    ( (This)->lpVtbl -> put_BreakSpacing(This,spacing) ) 

#define IAcadTable_GetColumnName(This,nIndex,name)	\
    ( (This)->lpVtbl -> GetColumnName(This,nIndex,name) ) 

#define IAcadTable_SetColumnName(This,nIndex,name)	\
    ( (This)->lpVtbl -> SetColumnName(This,nIndex,name) ) 

#define IAcadTable_SetToolTip(This,nRow,nCol,tip)	\
    ( (This)->lpVtbl -> SetToolTip(This,nRow,nCol,tip) ) 

#define IAcadTable_GetFieldId232(This,nRow,nCol,nContent,pAcDbObjectId)	\
    ( (This)->lpVtbl -> GetFieldId232(This,nRow,nCol,nContent,pAcDbObjectId) ) 

#define IAcadTable_SetFieldId232(This,nRow,nCol,nContent,acDbObjectId,nflag)	\
    ( (This)->lpVtbl -> SetFieldId232(This,nRow,nCol,nContent,acDbObjectId,nflag) ) 

#define IAcadTable_GetBlockTableRecordId232(This,nRow,nCol,nContent,pAcDbObjectId)	\
    ( (This)->lpVtbl -> GetBlockTableRecordId232(This,nRow,nCol,nContent,pAcDbObjectId) ) 

#define IAcadTable_SetBlockTableRecordId232(This,nRow,nCol,nContent,blkId,autoFit)	\
    ( (This)->lpVtbl -> SetBlockTableRecordId232(This,nRow,nCol,nContent,blkId,autoFit) ) 

#define IAcadTable_GetBlockAttributeValue232(This,nRow,nCol,nContent,blkId,value)	\
    ( (This)->lpVtbl -> GetBlockAttributeValue232(This,nRow,nCol,nContent,blkId,value) ) 

#define IAcadTable_SetBlockAttributeValue232(This,nRow,nCol,nContent,blkId,value)	\
    ( (This)->lpVtbl -> SetBlockAttributeValue232(This,nRow,nCol,nContent,blkId,value) ) 

#define IAcadTable_GetGridLinetype32(This,nRow,nCol,nGridLineType,pacDbObjId)	\
    ( (This)->lpVtbl -> GetGridLinetype32(This,nRow,nCol,nGridLineType,pacDbObjId) ) 

#define IAcadTable_SetGridLinetype32(This,nRow,nCol,nGridLineType,idLinetype)	\
    ( (This)->lpVtbl -> SetGridLinetype32(This,nRow,nCol,nGridLineType,idLinetype) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellTextStyle_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadTable_GetCellTextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellTextStyle_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadTable_SetCellTextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellTextHeight_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ double *pTextHeight);


void __RPC_STUB IAcadTable_GetCellTextHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellTextHeight_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ double textHeight);


void __RPC_STUB IAcadTable_SetCellTextHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetTextRotation_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ AcRotationAngle *textRotation);


void __RPC_STUB IAcadTable_GetTextRotation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetTextRotation_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ AcRotationAngle textRotation);


void __RPC_STUB IAcadTable_SetTextRotation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetAutoScale_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_GetAutoScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetAutoScale_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_SetAutoScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockTableRecordId_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ LONG_PTR *blkId);


void __RPC_STUB IAcadTable_GetBlockTableRecordId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockTableRecordId_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG_PTR blkId,
    /* [in] */ VARIANT_BOOL bAutoFit);


void __RPC_STUB IAcadTable_SetBlockTableRecordId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockScale_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ double *blkScale);


void __RPC_STUB IAcadTable_GetBlockScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockScale_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ double blkScale);


void __RPC_STUB IAcadTable_SetBlockScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockRotation_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ double *blkRotation);


void __RPC_STUB IAcadTable_GetBlockRotation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockRotation_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ double blkRotation);


void __RPC_STUB IAcadTable_SetBlockRotation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockAttributeValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG_PTR attdefId,
    /* [retval][out] */ BSTR *bstrValue);


void __RPC_STUB IAcadTable_GetBlockAttributeValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockAttributeValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG_PTR attdefId,
    /* [in] */ BSTR bstrValue);


void __RPC_STUB IAcadTable_SetBlockAttributeValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellGridLineWeight_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ AcCellEdgeMask edge,
    /* [retval][out] */ ACAD_LWEIGHT *plineweight);


void __RPC_STUB IAcadTable_GetCellGridLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellGridLineWeight_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ int edges,
    /* [in] */ ACAD_LWEIGHT lineweight);


void __RPC_STUB IAcadTable_SetCellGridLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellGridColor_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ AcCellEdgeMask edge,
    /* [retval][out] */ IAcadAcCmColor **pColor);


void __RPC_STUB IAcadTable_GetCellGridColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellGridColor_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ int edges,
    /* [in] */ IAcadAcCmColor *pColor);


void __RPC_STUB IAcadTable_SetCellGridColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellGridVisibility_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ AcCellEdgeMask edge,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_GetCellGridVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellGridVisibility_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ int edges,
    /* [in] */ VARIANT_BOOL bValue);


void __RPC_STUB IAcadTable_SetCellGridVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_InsertColumns_Proxy( 
    IAcadTable * This,
    /* [in] */ int col,
    /* [in] */ double width,
    /* [in] */ int cols);


void __RPC_STUB IAcadTable_InsertColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_DeleteColumns_Proxy( 
    IAcadTable * This,
    /* [in] */ int col,
    /* [in] */ int cols);


void __RPC_STUB IAcadTable_DeleteColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_InsertRows_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ double height,
    /* [in] */ int rows);


void __RPC_STUB IAcadTable_InsertRows_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_DeleteRows_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int rows);


void __RPC_STUB IAcadTable_DeleteRows_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_MergeCells_Proxy( 
    IAcadTable * This,
    /* [in] */ int minRow,
    /* [in] */ int maxRow,
    /* [in] */ int minCol,
    /* [in] */ int maxCol);


void __RPC_STUB IAcadTable_MergeCells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_UnmergeCells_Proxy( 
    IAcadTable * This,
    /* [in] */ int minRow,
    /* [in] */ int maxRow,
    /* [in] */ int minCol,
    /* [in] */ int maxCol);


void __RPC_STUB IAcadTable_UnmergeCells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_IsMergedCell_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [out] */ int *minRow,
    /* [out] */ int *maxRow,
    /* [out] */ int *minCol,
    /* [out] */ int *maxCol,
    /* [retval][out] */ VARIANT_BOOL *pbValue);


void __RPC_STUB IAcadTable_IsMergedCell_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetFieldId_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ LONG_PTR *fieldId);


void __RPC_STUB IAcadTable_GetFieldId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetFieldId_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG_PTR fieldId);


void __RPC_STUB IAcadTable_SetFieldId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GenerateLayout_Proxy( 
    IAcadTable * This);


void __RPC_STUB IAcadTable_GenerateLayout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_RecomputeTableBlock_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bForceUpdate);


void __RPC_STUB IAcadTable_RecomputeTableBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_HitTest_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT wpt,
    /* [in] */ VARIANT wviewVec,
    /* [out] */ int *resultRowIndex,
    /* [out] */ int *resultColumnIndex,
    /* [retval][out] */ VARIANT_BOOL *bReturn);


void __RPC_STUB IAcadTable_HitTest_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_Select_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT wpt,
    /* [in] */ VARIANT wvwVec,
    /* [in] */ VARIANT wvwxVec,
    /* [in] */ double wxaper,
    /* [in] */ double wyaper,
    /* [in] */ VARIANT_BOOL allowOutside,
    /* [out] */ int *resultRowIndex,
    /* [out] */ int *resultColumnIndex);


void __RPC_STUB IAcadTable_Select_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SelectSubRegion_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT wpt1,
    /* [in] */ VARIANT wpt2,
    /* [in] */ VARIANT wvwVec,
    /* [in] */ VARIANT wvwxVec,
    /* [in] */ AcSelectType seltype,
    /* [in] */ VARIANT_BOOL bIncludeCurrentSelection,
    /* [out] */ int *rowMin,
    /* [out] */ int *rowMax,
    /* [out] */ int *colMin,
    /* [out] */ int *colMax);


void __RPC_STUB IAcadTable_SelectSubRegion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_ReselectSubRegion_Proxy( 
    IAcadTable * This);


void __RPC_STUB IAcadTable_ReselectSubRegion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetSubSelection_Proxy( 
    IAcadTable * This,
    /* [out] */ int *rowMin,
    /* [out] */ int *rowMax,
    /* [out] */ int *colMin,
    /* [out] */ int *colMax);


void __RPC_STUB IAcadTable_GetSubSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetSubSelection_Proxy( 
    IAcadTable * This,
    /* [in] */ int rowMin,
    /* [in] */ int rowMax,
    /* [in] */ int colMin,
    /* [in] */ int colMax);


void __RPC_STUB IAcadTable_SetSubSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_ClearSubSelection_Proxy( 
    IAcadTable * This);


void __RPC_STUB IAcadTable_ClearSubSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_HasSubSelection_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *pbValue);


void __RPC_STUB IAcadTable_get_HasSubSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_RegenerateTableSuppressed_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_get_RegenerateTableSuppressed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_RegenerateTableSuppressed_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bValue);


void __RPC_STUB IAcadTable_put_RegenerateTableSuppressed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetDataType_Proxy( 
    IAcadTable * This,
    /* [in] */ AcRowType rowType,
    /* [out] */ AcValueDataType *pDataType,
    /* [out] */ AcValueUnitType *pUnitType);


void __RPC_STUB IAcadTable_GetDataType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetDataType_Proxy( 
    IAcadTable * This,
    /* [in] */ int rowTypes,
    /* [in] */ AcValueDataType dataType,
    /* [in] */ AcValueUnitType unitType);


void __RPC_STUB IAcadTable_SetDataType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetFormat_Proxy( 
    IAcadTable * This,
    /* [in] */ AcRowType rowType,
    /* [retval][out] */ BSTR *pFormat);


void __RPC_STUB IAcadTable_GetFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetFormat_Proxy( 
    IAcadTable * This,
    /* [in] */ int rowTypes,
    BSTR pFormat);


void __RPC_STUB IAcadTable_SetFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_FormatValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    AcFormatOption nOption,
    BSTR *pVal);


void __RPC_STUB IAcadTable_FormatValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellDataType_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [out] */ AcValueDataType *pDataType,
    /* [out] */ AcValueUnitType *pUnitType);


void __RPC_STUB IAcadTable_GetCellDataType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellDataType_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    AcValueDataType dataType,
    AcValueUnitType unitType);


void __RPC_STUB IAcadTable_SetCellDataType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellFormat_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ BSTR *pFormat);


void __RPC_STUB IAcadTable_GetCellFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellFormat_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    BSTR pFormat);


void __RPC_STUB IAcadTable_SetCellFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadTable_GetCellValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    VARIANT val);


void __RPC_STUB IAcadTable_SetCellValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellValueFromText_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ BSTR val,
    /* [in] */ AcParseOption nOption);


void __RPC_STUB IAcadTable_SetCellValueFromText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_ResetCellValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col);


void __RPC_STUB IAcadTable_ResetCellValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockTableRecordId32_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ LONG *blkId);


void __RPC_STUB IAcadTable_GetBlockTableRecordId32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockTableRecordId32_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG blkId,
    /* [in] */ VARIANT_BOOL bAutoFit);


void __RPC_STUB IAcadTable_SetBlockTableRecordId32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockAttributeValue32_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG attdefId,
    /* [retval][out] */ BSTR *bstrValue);


void __RPC_STUB IAcadTable_GetBlockAttributeValue32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockAttributeValue32_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG attdefId,
    /* [in] */ BSTR bstrValue);


void __RPC_STUB IAcadTable_SetBlockAttributeValue32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetFieldId32_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ LONG *fieldId);


void __RPC_STUB IAcadTable_GetFieldId32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetFieldId32_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ LONG fieldId);


void __RPC_STUB IAcadTable_SetFieldId32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_IsEmpty_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_IsEmpty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_CreateContent_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nIndex,
    /* [retval][out] */ int *pInt);


void __RPC_STUB IAcadTable_CreateContent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_MoveContent_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nFromIndex,
    /* [in] */ int nToIndex);


void __RPC_STUB IAcadTable_MoveContent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_DeleteContent_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol);


void __RPC_STUB IAcadTable_DeleteContent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ VARIANT *pAcValue);


void __RPC_STUB IAcadTable_GetValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetValue_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ VARIANT acValue);


void __RPC_STUB IAcadTable_SetValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetValueFromText_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ BSTR szText,
    /* [in] */ AcParseOption nOption);


void __RPC_STUB IAcadTable_SetValueFromText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetDataFormat_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ BSTR *pValue);


void __RPC_STUB IAcadTable_GetDataFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetDataFormat_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ BSTR szFormat);


void __RPC_STUB IAcadTable_SetDataFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetTextString_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ BSTR *pTextString);


void __RPC_STUB IAcadTable_GetTextString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetTextString_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ BSTR text);


void __RPC_STUB IAcadTable_SetTextString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetFieldId2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ LONG_PTR *pAcDbObjectId);


void __RPC_STUB IAcadTable_GetFieldId2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetFieldId2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG_PTR acDbObjectId,
    /* [in] */ AcCellOption nflag);


void __RPC_STUB IAcadTable_SetFieldId2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockTableRecordId2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ LONG_PTR *pAcDbObjectId);


void __RPC_STUB IAcadTable_GetBlockTableRecordId2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockTableRecordId2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG_PTR blkId,
    /* [in] */ VARIANT_BOOL autoFit);


void __RPC_STUB IAcadTable_SetBlockTableRecordId2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockAttributeValue2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG_PTR blkId,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadTable_GetBlockAttributeValue2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockAttributeValue2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG_PTR blkId,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadTable_SetBlockAttributeValue2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCustomData_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ BSTR szKey,
    /* [out] */ VARIANT *pData);


void __RPC_STUB IAcadTable_GetCustomData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCustomData_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ BSTR szKey,
    /* [in] */ VARIANT data);


void __RPC_STUB IAcadTable_SetCustomData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellStyle_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ BSTR *pCellStyle);


void __RPC_STUB IAcadTable_GetCellStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellStyle_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ BSTR szCellStyle);


void __RPC_STUB IAcadTable_SetCellStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetContentColor2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ IAcadAcCmColor **pColor);


void __RPC_STUB IAcadTable_GetContentColor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetContentColor2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ IAcadAcCmColor *pColor);


void __RPC_STUB IAcadTable_SetContentColor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetDataType2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [out] */ AcValueDataType *pDataType,
    /* [out] */ AcValueUnitType *pUnitType);


void __RPC_STUB IAcadTable_GetDataType2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetDataType2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ AcValueDataType dataType,
    /* [in] */ AcValueUnitType unitType);


void __RPC_STUB IAcadTable_SetDataType2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetTextStyle2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ BSTR *pbstrStyleName);


void __RPC_STUB IAcadTable_GetTextStyle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetTextStyle2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ BSTR bstrStyleName);


void __RPC_STUB IAcadTable_SetTextStyle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetTextHeight2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ double *pHeight);


void __RPC_STUB IAcadTable_GetTextHeight2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetTextHeight2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ double height);


void __RPC_STUB IAcadTable_SetTextHeight2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetRotation_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ double *pValue);


void __RPC_STUB IAcadTable_GetRotation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetRotation_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ double value);


void __RPC_STUB IAcadTable_SetRotation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetAutoScale2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ VARIANT_BOOL *bAutoScale);


void __RPC_STUB IAcadTable_GetAutoScale2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetAutoScale2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ VARIANT_BOOL bAutoFit);


void __RPC_STUB IAcadTable_SetAutoScale2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetScale_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ double *pScale);


void __RPC_STUB IAcadTable_GetScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetScale_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ double scale);


void __RPC_STUB IAcadTable_SetScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_RemoveAllOverrides_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol);


void __RPC_STUB IAcadTable_RemoveAllOverrides_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridLineWeight2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ ACAD_LWEIGHT *pLineWeight);


void __RPC_STUB IAcadTable_GetGridLineWeight2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridLineWeight2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [in] */ ACAD_LWEIGHT lineWeight);


void __RPC_STUB IAcadTable_SetGridLineWeight2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridLinetype_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ LONG_PTR *pacDbObjId);


void __RPC_STUB IAcadTable_GetGridLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridLinetype_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [in] */ LONG_PTR idLinetype);


void __RPC_STUB IAcadTable_SetGridLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridColor2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ IAcadAcCmColor **pColor);


void __RPC_STUB IAcadTable_GetGridColor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridColor2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [in] */ IAcadAcCmColor *pColor);


void __RPC_STUB IAcadTable_SetGridColor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridVisibility2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ VARIANT_BOOL *bVisible);


void __RPC_STUB IAcadTable_GetGridVisibility2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridVisibility2_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [in] */ VARIANT_BOOL bVisible);


void __RPC_STUB IAcadTable_SetGridVisibility2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridDoubleLineSpacing_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ double *pValue);


void __RPC_STUB IAcadTable_GetGridDoubleLineSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridDoubleLineSpacing_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [in] */ double fSpacing);


void __RPC_STUB IAcadTable_SetGridDoubleLineSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_EnableBreak_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bEnable);


void __RPC_STUB IAcadTable_put_EnableBreak_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBreakHeight_Proxy( 
    IAcadTable * This,
    /* [in] */ int nIndex,
    /* [retval][out] */ double *pHeight);


void __RPC_STUB IAcadTable_GetBreakHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBreakHeight_Proxy( 
    IAcadTable * This,
    /* [in] */ int nIndex,
    /* [in] */ double height);


void __RPC_STUB IAcadTable_SetBreakHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetContentType_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ AcCellContentType *pType);


void __RPC_STUB IAcadTable_GetContentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetMargin_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcCellMargin nMargin,
    /* [retval][out] */ double *pValue);


void __RPC_STUB IAcadTable_GetMargin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetMargin_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcCellMargin nMargins,
    /* [in] */ double fMargin);


void __RPC_STUB IAcadTable_SetMargin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetContentLayout_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [retval][out] */ AcCellContentLayout *pLayout);


void __RPC_STUB IAcadTable_GetContentLayout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetContentLayout_Proxy( 
    IAcadTable * This,
    /* [in] */ int row,
    /* [in] */ int col,
    /* [in] */ AcCellContentLayout nLayout);


void __RPC_STUB IAcadTable_SetContentLayout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetOverride_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ AcCellProperty *pValue);


void __RPC_STUB IAcadTable_GetOverride_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetOverride_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ AcCellProperty nProp);


void __RPC_STUB IAcadTable_SetOverride_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridLineStyle_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ AcGridLineStyle *pStyle);


void __RPC_STUB IAcadTable_GetGridLineStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridLineStyle_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineTypes,
    /* [in] */ AcGridLineStyle nLineStyle);


void __RPC_STUB IAcadTable_SetGridLineStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_InsertRowsAndInherit_Proxy( 
    IAcadTable * This,
    /* [in] */ int nIndex,
    /* [in] */ int nInheritFrom,
    /* [in] */ int nNumRows);


void __RPC_STUB IAcadTable_InsertRowsAndInherit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_InsertColumnsAndInherit_Proxy( 
    IAcadTable * This,
    /* [in] */ int col,
    /* [in] */ int nInheritFrom,
    /* [in] */ int nNumCols);


void __RPC_STUB IAcadTable_InsertColumnsAndInherit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetHasFormula_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_GetHasFormula_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetFormula_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ BSTR *pszFormula);


void __RPC_STUB IAcadTable_GetFormula_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetFormula_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ BSTR pszFormula);


void __RPC_STUB IAcadTable_SetFormula_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_IsContentEditable_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_IsContentEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_IsFormatEditable_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_IsFormatEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetCellState_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ AcCellState *pCellState);


void __RPC_STUB IAcadTable_GetCellState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetCellState_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcCellState nLock);


void __RPC_STUB IAcadTable_SetCellState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_EnableMergeAll_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ VARIANT_BOOL bEnable);


void __RPC_STUB IAcadTable_EnableMergeAll_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_IsMergeAllEnabled_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [retval][out] */ VARIANT_BOOL *bValue);


void __RPC_STUB IAcadTable_IsMergeAllEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_BreaksEnabled_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *bEnabled);


void __RPC_STUB IAcadTable_get_BreaksEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_BreaksEnabled_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bEnabled);


void __RPC_STUB IAcadTable_put_BreaksEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_RepeatTopLabels_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *bEnabled);


void __RPC_STUB IAcadTable_get_RepeatTopLabels_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_RepeatTopLabels_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bEnabled);


void __RPC_STUB IAcadTable_put_RepeatTopLabels_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_RepeatBottomLabels_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *bEnabled);


void __RPC_STUB IAcadTable_get_RepeatBottomLabels_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_RepeatBottomLabels_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bEnabled);


void __RPC_STUB IAcadTable_put_RepeatBottomLabels_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_TableBreakFlowDirection_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ AcTableFlowDirection *pDir);


void __RPC_STUB IAcadTable_get_TableBreakFlowDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_TableBreakFlowDirection_Proxy( 
    IAcadTable * This,
    /* [in] */ AcTableFlowDirection dir);


void __RPC_STUB IAcadTable_put_TableBreakFlowDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_AllowManualPositions_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *bEnabled);


void __RPC_STUB IAcadTable_get_AllowManualPositions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_AllowManualPositions_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bEnabled);


void __RPC_STUB IAcadTable_put_AllowManualPositions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_AllowManualHeights_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ VARIANT_BOOL *bEnabled);


void __RPC_STUB IAcadTable_get_AllowManualHeights_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_AllowManualHeights_Proxy( 
    IAcadTable * This,
    /* [in] */ VARIANT_BOOL bEnabled);


void __RPC_STUB IAcadTable_put_AllowManualHeights_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_TableBreakHeight_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ double *pHeight);


void __RPC_STUB IAcadTable_get_TableBreakHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_TableBreakHeight_Proxy( 
    IAcadTable * This,
    /* [in] */ double height);


void __RPC_STUB IAcadTable_put_TableBreakHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadTable_get_BreakSpacing_Proxy( 
    IAcadTable * This,
    /* [retval][out] */ double *pSpacing);


void __RPC_STUB IAcadTable_get_BreakSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadTable_put_BreakSpacing_Proxy( 
    IAcadTable * This,
    /* [in] */ double spacing);


void __RPC_STUB IAcadTable_put_BreakSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetColumnName_Proxy( 
    IAcadTable * This,
    /* [in] */ int nIndex,
    /* [retval][out] */ BSTR *name);


void __RPC_STUB IAcadTable_GetColumnName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetColumnName_Proxy( 
    IAcadTable * This,
    /* [in] */ int nIndex,
    /* [in] */ BSTR name);


void __RPC_STUB IAcadTable_SetColumnName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetToolTip_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ BSTR tip);


void __RPC_STUB IAcadTable_SetToolTip_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetFieldId232_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ LONG *pAcDbObjectId);


void __RPC_STUB IAcadTable_GetFieldId232_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetFieldId232_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG acDbObjectId,
    /* [in] */ AcCellOption nflag);


void __RPC_STUB IAcadTable_SetFieldId232_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockTableRecordId232_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [retval][out] */ LONG *pAcDbObjectId);


void __RPC_STUB IAcadTable_GetBlockTableRecordId232_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockTableRecordId232_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG blkId,
    /* [in] */ VARIANT_BOOL autoFit);


void __RPC_STUB IAcadTable_SetBlockTableRecordId232_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetBlockAttributeValue232_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG blkId,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadTable_GetBlockAttributeValue232_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetBlockAttributeValue232_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ int nContent,
    /* [in] */ LONG blkId,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadTable_SetBlockAttributeValue232_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_GetGridLinetype32_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [retval][out] */ LONG *pacDbObjId);


void __RPC_STUB IAcadTable_GetGridLinetype32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IAcadTable_SetGridLinetype32_Proxy( 
    IAcadTable * This,
    /* [in] */ int nRow,
    /* [in] */ int nCol,
    /* [in] */ AcGridLineType nGridLineType,
    /* [in] */ LONG idLinetype);


void __RPC_STUB IAcadTable_SetGridLinetype32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadTable_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadTable,0x9F7166C6,0x2E46,0x427C,0x99,0x56,0xD2,0x60,0x1D,0x0C,0x15,0x36);

#ifdef __cplusplus

class DECLSPEC_UUID("9F7166C6-2E46-427C-9956-D2601D0C1536")
AcadTable;
#endif

#ifndef __IAcadOle_INTERFACE_DEFINED__
#define __IAcadOle_INTERFACE_DEFINED__

/* interface IAcadOle */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadOle,0xC0B342AA,0x44C2,0x4121,0x84,0x7A,0x3B,0x2A,0xED,0x88,0x08,0xD7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C0B342AA-44C2-4121-847A-3B2AED8808D7")
    IAcadOle : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionPoint( 
            /* [retval][out] */ VARIANT *insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionPoint( 
            /* [in] */ VARIANT insPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rot) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rot) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleWidth( 
            /* [retval][out] */ double *swidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleWidth( 
            /* [in] */ double swidth) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleHeight( 
            /* [retval][out] */ double *sheight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleHeight( 
            /* [in] */ double sheight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LockAspectRatio( 
            /* [retval][out] */ VARIANT_BOOL *aspect) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LockAspectRatio( 
            /* [in] */ VARIANT_BOOL aspect) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OleItemType( 
            /* [retval][out] */ AcOleType *pType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_OleItemType( 
            /* [in] */ AcOleType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OlePlotQuality( 
            /* [retval][out] */ AcOlePlotQuality *pPQuality) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_OlePlotQuality( 
            /* [in] */ AcOlePlotQuality pQuality) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OleSourceApp( 
            /* [retval][out] */ BSTR *srcApp) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_OleSourceApp( 
            /* [in] */ BSTR srcApp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadOleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadOle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadOle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadOle * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadOle * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadOle * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadOle * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadOle * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadOle * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadOle * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadOle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadOle * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadOle * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadOle * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadOle * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadOle * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadOle * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadOle * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadOle * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadOle * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadOle * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadOle * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadOle * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadOle * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadOle * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadOle * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadOle * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadOle * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadOle * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadOle * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadOle * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadOle * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadOle * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadOle * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadOle * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadOle * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadOle * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadOle * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadOle * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadOle * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadOle * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadOle * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadOle * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadOle * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadOle * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadOle * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadOle * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadOle * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadOle * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadOle * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadOle * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InsertionPoint )( 
            IAcadOle * This,
            /* [retval][out] */ VARIANT *insPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InsertionPoint )( 
            IAcadOle * This,
            /* [in] */ VARIANT insPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadOle * This,
            /* [retval][out] */ ACAD_ANGLE *rot);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadOle * This,
            /* [in] */ ACAD_ANGLE rot);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadOle * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadOle * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadOle * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadOle * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleWidth )( 
            IAcadOle * This,
            /* [retval][out] */ double *swidth);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleWidth )( 
            IAcadOle * This,
            /* [in] */ double swidth);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleHeight )( 
            IAcadOle * This,
            /* [retval][out] */ double *sheight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleHeight )( 
            IAcadOle * This,
            /* [in] */ double sheight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LockAspectRatio )( 
            IAcadOle * This,
            /* [retval][out] */ VARIANT_BOOL *aspect);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LockAspectRatio )( 
            IAcadOle * This,
            /* [in] */ VARIANT_BOOL aspect);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OleItemType )( 
            IAcadOle * This,
            /* [retval][out] */ AcOleType *pType);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OleItemType )( 
            IAcadOle * This,
            /* [in] */ AcOleType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OlePlotQuality )( 
            IAcadOle * This,
            /* [retval][out] */ AcOlePlotQuality *pPQuality);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OlePlotQuality )( 
            IAcadOle * This,
            /* [in] */ AcOlePlotQuality pQuality);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OleSourceApp )( 
            IAcadOle * This,
            /* [retval][out] */ BSTR *srcApp);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OleSourceApp )( 
            IAcadOle * This,
            /* [in] */ BSTR srcApp);
        
        END_INTERFACE
    } IAcadOleVtbl;

    interface IAcadOle
    {
        CONST_VTBL struct IAcadOleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadOle_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadOle_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadOle_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadOle_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadOle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadOle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadOle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadOle_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadOle_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadOle_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadOle_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadOle_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadOle_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadOle_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadOle_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadOle_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadOle_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadOle_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadOle_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadOle_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadOle_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadOle_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadOle_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadOle_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadOle_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadOle_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadOle_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadOle_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadOle_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadOle_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadOle_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadOle_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadOle_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadOle_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadOle_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadOle_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadOle_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadOle_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadOle_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadOle_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadOle_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadOle_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadOle_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadOle_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadOle_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadOle_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadOle_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadOle_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadOle_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadOle_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadOle_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadOle_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadOle_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadOle_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadOle_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadOle_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadOle_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadOle_get_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> get_InsertionPoint(This,insPoint) ) 

#define IAcadOle_put_InsertionPoint(This,insPoint)	\
    ( (This)->lpVtbl -> put_InsertionPoint(This,insPoint) ) 

#define IAcadOle_get_Rotation(This,rot)	\
    ( (This)->lpVtbl -> get_Rotation(This,rot) ) 

#define IAcadOle_put_Rotation(This,rot)	\
    ( (This)->lpVtbl -> put_Rotation(This,rot) ) 

#define IAcadOle_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadOle_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadOle_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadOle_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadOle_get_ScaleWidth(This,swidth)	\
    ( (This)->lpVtbl -> get_ScaleWidth(This,swidth) ) 

#define IAcadOle_put_ScaleWidth(This,swidth)	\
    ( (This)->lpVtbl -> put_ScaleWidth(This,swidth) ) 

#define IAcadOle_get_ScaleHeight(This,sheight)	\
    ( (This)->lpVtbl -> get_ScaleHeight(This,sheight) ) 

#define IAcadOle_put_ScaleHeight(This,sheight)	\
    ( (This)->lpVtbl -> put_ScaleHeight(This,sheight) ) 

#define IAcadOle_get_LockAspectRatio(This,aspect)	\
    ( (This)->lpVtbl -> get_LockAspectRatio(This,aspect) ) 

#define IAcadOle_put_LockAspectRatio(This,aspect)	\
    ( (This)->lpVtbl -> put_LockAspectRatio(This,aspect) ) 

#define IAcadOle_get_OleItemType(This,pType)	\
    ( (This)->lpVtbl -> get_OleItemType(This,pType) ) 

#define IAcadOle_put_OleItemType(This,type)	\
    ( (This)->lpVtbl -> put_OleItemType(This,type) ) 

#define IAcadOle_get_OlePlotQuality(This,pPQuality)	\
    ( (This)->lpVtbl -> get_OlePlotQuality(This,pPQuality) ) 

#define IAcadOle_put_OlePlotQuality(This,pQuality)	\
    ( (This)->lpVtbl -> put_OlePlotQuality(This,pQuality) ) 

#define IAcadOle_get_OleSourceApp(This,srcApp)	\
    ( (This)->lpVtbl -> get_OleSourceApp(This,srcApp) ) 

#define IAcadOle_put_OleSourceApp(This,srcApp)	\
    ( (This)->lpVtbl -> put_OleSourceApp(This,srcApp) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadOle_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadOle,0x62D2AB7D,0x473A,0x48FF,0xA4,0x07,0x90,0xB3,0xC2,0xAA,0xB7,0x60);

#ifdef __cplusplus

class DECLSPEC_UUID("62D2AB7D-473A-48FF-A407-90B3C2AAB760")
AcadOle;
#endif

#ifndef __IAcadHelix_INTERFACE_DEFINED__
#define __IAcadHelix_INTERFACE_DEFINED__

/* interface IAcadHelix */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadHelix,0x54B8FA24,0x4971,0x4CC1,0xBD,0x9C,0xFB,0x3F,0xCA,0x98,0xE7,0xC5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("54B8FA24-4971-4CC1-BD9C-FB3FCA98E7C5")
    IAcadHelix : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Position( 
            /* [retval][out] */ VARIANT *startPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Position( 
            /* [in] */ VARIANT startPoint) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Constrain( 
            /* [retval][out] */ AcHelixConstrainType *constrainType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Constrain( 
            /* [in] */ AcHelixConstrainType constrainType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *length) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double length) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Turns( 
            /* [retval][out] */ ACAD_NOUNITS *turns) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Turns( 
            /* [in] */ ACAD_NOUNITS radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TurnHeight( 
            /* [retval][out] */ double *distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TurnHeight( 
            /* [in] */ double distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseRadius( 
            /* [retval][out] */ double *radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseRadius( 
            /* [in] */ double radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TopRadius( 
            /* [retval][out] */ double *radius) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TopRadius( 
            /* [in] */ double turns) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Twist( 
            /* [retval][out] */ AcHelixTwistType *twistType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Twist( 
            /* [in] */ AcHelixTwistType twistType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TurnSlope( 
            /* [retval][out] */ ACAD_ANGLE *slopeAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalLength( 
            /* [retval][out] */ double *totalLength) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadHelixVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadHelix * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadHelix * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadHelix * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadHelix * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadHelix * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadHelix * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadHelix * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadHelix * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadHelix * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadHelix * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadHelix * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadHelix * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadHelix * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadHelix * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadHelix * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadHelix * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadHelix * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadHelix * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadHelix * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadHelix * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadHelix * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadHelix * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadHelix * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadHelix * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadHelix * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadHelix * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadHelix * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadHelix * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadHelix * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadHelix * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadHelix * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadHelix * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadHelix * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadHelix * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadHelix * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadHelix * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadHelix * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadHelix * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadHelix * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadHelix * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadHelix * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadHelix * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadHelix * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadHelix * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadHelix * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadHelix * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadHelix * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadHelix * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadHelix * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadHelix * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadHelix * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Position )( 
            IAcadHelix * This,
            /* [retval][out] */ VARIANT *startPoint);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Position )( 
            IAcadHelix * This,
            /* [in] */ VARIANT startPoint);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Constrain )( 
            IAcadHelix * This,
            /* [retval][out] */ AcHelixConstrainType *constrainType);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Constrain )( 
            IAcadHelix * This,
            /* [in] */ AcHelixConstrainType constrainType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadHelix * This,
            /* [retval][out] */ double *length);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadHelix * This,
            /* [in] */ double length);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Turns )( 
            IAcadHelix * This,
            /* [retval][out] */ ACAD_NOUNITS *turns);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Turns )( 
            IAcadHelix * This,
            /* [in] */ ACAD_NOUNITS radius);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TurnHeight )( 
            IAcadHelix * This,
            /* [retval][out] */ double *distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TurnHeight )( 
            IAcadHelix * This,
            /* [in] */ double distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BaseRadius )( 
            IAcadHelix * This,
            /* [retval][out] */ double *radius);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BaseRadius )( 
            IAcadHelix * This,
            /* [in] */ double radius);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TopRadius )( 
            IAcadHelix * This,
            /* [retval][out] */ double *radius);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TopRadius )( 
            IAcadHelix * This,
            /* [in] */ double turns);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Twist )( 
            IAcadHelix * This,
            /* [retval][out] */ AcHelixTwistType *twistType);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Twist )( 
            IAcadHelix * This,
            /* [in] */ AcHelixTwistType twistType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TurnSlope )( 
            IAcadHelix * This,
            /* [retval][out] */ ACAD_ANGLE *slopeAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalLength )( 
            IAcadHelix * This,
            /* [retval][out] */ double *totalLength);
        
        END_INTERFACE
    } IAcadHelixVtbl;

    interface IAcadHelix
    {
        CONST_VTBL struct IAcadHelixVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadHelix_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadHelix_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadHelix_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadHelix_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadHelix_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadHelix_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadHelix_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadHelix_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadHelix_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadHelix_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadHelix_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadHelix_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadHelix_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadHelix_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadHelix_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadHelix_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadHelix_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadHelix_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadHelix_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadHelix_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadHelix_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadHelix_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadHelix_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadHelix_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadHelix_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadHelix_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadHelix_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadHelix_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadHelix_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadHelix_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadHelix_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadHelix_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadHelix_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadHelix_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadHelix_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadHelix_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadHelix_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadHelix_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadHelix_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadHelix_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadHelix_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadHelix_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadHelix_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadHelix_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadHelix_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadHelix_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadHelix_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadHelix_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadHelix_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadHelix_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadHelix_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadHelix_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadHelix_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadHelix_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadHelix_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadHelix_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadHelix_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadHelix_get_Position(This,startPoint)	\
    ( (This)->lpVtbl -> get_Position(This,startPoint) ) 

#define IAcadHelix_put_Position(This,startPoint)	\
    ( (This)->lpVtbl -> put_Position(This,startPoint) ) 

#define IAcadHelix_get_Constrain(This,constrainType)	\
    ( (This)->lpVtbl -> get_Constrain(This,constrainType) ) 

#define IAcadHelix_put_Constrain(This,constrainType)	\
    ( (This)->lpVtbl -> put_Constrain(This,constrainType) ) 

#define IAcadHelix_get_Height(This,length)	\
    ( (This)->lpVtbl -> get_Height(This,length) ) 

#define IAcadHelix_put_Height(This,length)	\
    ( (This)->lpVtbl -> put_Height(This,length) ) 

#define IAcadHelix_get_Turns(This,turns)	\
    ( (This)->lpVtbl -> get_Turns(This,turns) ) 

#define IAcadHelix_put_Turns(This,radius)	\
    ( (This)->lpVtbl -> put_Turns(This,radius) ) 

#define IAcadHelix_get_TurnHeight(This,distance)	\
    ( (This)->lpVtbl -> get_TurnHeight(This,distance) ) 

#define IAcadHelix_put_TurnHeight(This,distance)	\
    ( (This)->lpVtbl -> put_TurnHeight(This,distance) ) 

#define IAcadHelix_get_BaseRadius(This,radius)	\
    ( (This)->lpVtbl -> get_BaseRadius(This,radius) ) 

#define IAcadHelix_put_BaseRadius(This,radius)	\
    ( (This)->lpVtbl -> put_BaseRadius(This,radius) ) 

#define IAcadHelix_get_TopRadius(This,radius)	\
    ( (This)->lpVtbl -> get_TopRadius(This,radius) ) 

#define IAcadHelix_put_TopRadius(This,turns)	\
    ( (This)->lpVtbl -> put_TopRadius(This,turns) ) 

#define IAcadHelix_get_Twist(This,twistType)	\
    ( (This)->lpVtbl -> get_Twist(This,twistType) ) 

#define IAcadHelix_put_Twist(This,twistType)	\
    ( (This)->lpVtbl -> put_Twist(This,twistType) ) 

#define IAcadHelix_get_TurnSlope(This,slopeAngle)	\
    ( (This)->lpVtbl -> get_TurnSlope(This,slopeAngle) ) 

#define IAcadHelix_get_TotalLength(This,totalLength)	\
    ( (This)->lpVtbl -> get_TotalLength(This,totalLength) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadHelix_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadHelix,0x70E321A0,0xF2A1,0x4B96,0x9F,0x9D,0x82,0x72,0xD6,0x7D,0x6C,0xC0);

#ifdef __cplusplus

class DECLSPEC_UUID("70E321A0-F2A1-4B96-9F9D-8272D67D6CC0")
AcadHelix;
#endif

#ifndef __IAcadSurface_INTERFACE_DEFINED__
#define __IAcadSurface_INTERFACE_DEFINED__

/* interface IAcadSurface */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSurface,0x40CAE0C5,0xEE07,0x44A2,0xAF,0x05,0xA2,0xD9,0xCF,0x03,0x16,0x06);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("40CAE0C5-EE07-44A2-AF05-A2D9CF031606")
    IAcadSurface : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceType( 
            /* [retval][out] */ BSTR *surfaceType) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UIsolineDensity( 
            /* [retval][out] */ long *density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UIsolineDensity( 
            /* [in] */ long density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VIsolineDensity( 
            /* [retval][out] */ long *density) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VIsolineDensity( 
            /* [in] */ long density) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSurface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSurface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSurface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSurface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSurface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSurface * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSurface * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSurface * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSurface * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSurface * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSurface * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSurface * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSurface * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSurface * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSurface * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadSurface * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadSurface * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadSurface * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadSurface * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSurface * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadSurface * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadSurface * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadSurface * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadSurface * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadSurface * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadSurface * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadSurface * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadSurface * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadSurface * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadSurface * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadSurface * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadSurface * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadSurface * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSurface * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadSurface * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSurface * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSurface * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadSurface * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSurface * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSurface * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceType )( 
            IAcadSurface * This,
            /* [retval][out] */ BSTR *surfaceType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIsolineDensity )( 
            IAcadSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIsolineDensity )( 
            IAcadSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VIsolineDensity )( 
            IAcadSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VIsolineDensity )( 
            IAcadSurface * This,
            /* [in] */ long density);
        
        END_INTERFACE
    } IAcadSurfaceVtbl;

    interface IAcadSurface
    {
        CONST_VTBL struct IAcadSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSurface_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSurface_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSurface_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSurface_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSurface_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSurface_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSurface_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSurface_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSurface_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSurface_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSurface_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSurface_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSurface_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSurface_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSurface_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSurface_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSurface_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSurface_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSurface_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSurface_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadSurface_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadSurface_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSurface_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadSurface_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSurface_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadSurface_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSurface_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadSurface_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadSurface_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadSurface_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadSurface_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadSurface_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadSurface_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadSurface_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadSurface_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadSurface_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadSurface_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadSurface_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadSurface_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadSurface_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadSurface_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadSurface_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadSurface_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadSurface_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSurface_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadSurface_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSurface_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadSurface_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadSurface_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSurface_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSurface_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadSurface_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadSurface_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadSurface_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadSurface_get_SurfaceType(This,surfaceType)	\
    ( (This)->lpVtbl -> get_SurfaceType(This,surfaceType) ) 

#define IAcadSurface_get_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_UIsolineDensity(This,density) ) 

#define IAcadSurface_put_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_UIsolineDensity(This,density) ) 

#define IAcadSurface_get_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_VIsolineDensity(This,density) ) 

#define IAcadSurface_put_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_VIsolineDensity(This,density) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSurface_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSurface,0x0F7E0A1E,0x90C5,0x4043,0xA1,0x4E,0x49,0xD9,0xCC,0xCB,0xBC,0x01);

#ifdef __cplusplus

class DECLSPEC_UUID("0F7E0A1E-90C5-4043-A14E-49D9CCCBBC01")
AcadSurface;
#endif

#ifndef __IAcadPlaneSurface_INTERFACE_DEFINED__
#define __IAcadPlaneSurface_INTERFACE_DEFINED__

/* interface IAcadPlaneSurface */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPlaneSurface,0x196A47F4,0x9D29,0x4508,0xBC,0x0F,0x40,0x01,0x07,0x00,0x97,0xA1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("196A47F4-9D29-4508-BC0F-4001070097A1")
    IAcadPlaneSurface : public IAcadSurface
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAcadPlaneSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPlaneSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPlaneSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPlaneSurface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPlaneSurface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPlaneSurface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPlaneSurface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPlaneSurface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPlaneSurface * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPlaneSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPlaneSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadPlaneSurface * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadPlaneSurface * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadPlaneSurface * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadPlaneSurface * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadPlaneSurface * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadPlaneSurface * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadPlaneSurface * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadPlaneSurface * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadPlaneSurface * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadPlaneSurface * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadPlaneSurface * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadPlaneSurface * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadPlaneSurface * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadPlaneSurface * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceType )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ BSTR *surfaceType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIsolineDensity )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIsolineDensity )( 
            IAcadPlaneSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VIsolineDensity )( 
            IAcadPlaneSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VIsolineDensity )( 
            IAcadPlaneSurface * This,
            /* [in] */ long density);
        
        END_INTERFACE
    } IAcadPlaneSurfaceVtbl;

    interface IAcadPlaneSurface
    {
        CONST_VTBL struct IAcadPlaneSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPlaneSurface_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPlaneSurface_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPlaneSurface_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPlaneSurface_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPlaneSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPlaneSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPlaneSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPlaneSurface_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPlaneSurface_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPlaneSurface_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPlaneSurface_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPlaneSurface_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPlaneSurface_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPlaneSurface_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPlaneSurface_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPlaneSurface_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPlaneSurface_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPlaneSurface_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPlaneSurface_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPlaneSurface_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPlaneSurface_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPlaneSurface_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPlaneSurface_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadPlaneSurface_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadPlaneSurface_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadPlaneSurface_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadPlaneSurface_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadPlaneSurface_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadPlaneSurface_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadPlaneSurface_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadPlaneSurface_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadPlaneSurface_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadPlaneSurface_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadPlaneSurface_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadPlaneSurface_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadPlaneSurface_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadPlaneSurface_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadPlaneSurface_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadPlaneSurface_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadPlaneSurface_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadPlaneSurface_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadPlaneSurface_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadPlaneSurface_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadPlaneSurface_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadPlaneSurface_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadPlaneSurface_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadPlaneSurface_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadPlaneSurface_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadPlaneSurface_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadPlaneSurface_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadPlaneSurface_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadPlaneSurface_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadPlaneSurface_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadPlaneSurface_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadPlaneSurface_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadPlaneSurface_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadPlaneSurface_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadPlaneSurface_get_SurfaceType(This,surfaceType)	\
    ( (This)->lpVtbl -> get_SurfaceType(This,surfaceType) ) 

#define IAcadPlaneSurface_get_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_UIsolineDensity(This,density) ) 

#define IAcadPlaneSurface_put_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_UIsolineDensity(This,density) ) 

#define IAcadPlaneSurface_get_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_VIsolineDensity(This,density) ) 

#define IAcadPlaneSurface_put_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_VIsolineDensity(This,density) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPlaneSurface_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPlaneSurface,0x7A69115C,0x2631,0x4041,0x84,0x6A,0x9C,0x44,0x26,0xF8,0xC7,0x0C);

#ifdef __cplusplus

class DECLSPEC_UUID("7A69115C-2631-4041-846A-9C4426F8C70C")
AcadPlaneSurface;
#endif

#ifndef __IAcadExtrudedSurface_INTERFACE_DEFINED__
#define __IAcadExtrudedSurface_INTERFACE_DEFINED__

/* interface IAcadExtrudedSurface */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadExtrudedSurface,0x6BCEB5EE,0x126A,0x4813,0xA5,0x27,0x37,0x84,0xEE,0x4E,0x44,0xFC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6BCEB5EE-126A-4813-A527-3784EE4E44FC")
    IAcadExtrudedSurface : public IAcadSurface
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TaperAngle( 
            /* [retval][out] */ ACAD_ANGLE *taperAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TaperAngle( 
            /* [in] */ ACAD_ANGLE taperAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT *direction) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadExtrudedSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadExtrudedSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadExtrudedSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadExtrudedSurface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadExtrudedSurface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadExtrudedSurface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadExtrudedSurface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadExtrudedSurface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadExtrudedSurface * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadExtrudedSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadExtrudedSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadExtrudedSurface * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadExtrudedSurface * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadExtrudedSurface * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadExtrudedSurface * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadExtrudedSurface * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadExtrudedSurface * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadExtrudedSurface * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadExtrudedSurface * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadExtrudedSurface * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadExtrudedSurface * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadExtrudedSurface * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadExtrudedSurface * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadExtrudedSurface * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadExtrudedSurface * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceType )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ BSTR *surfaceType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIsolineDensity )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIsolineDensity )( 
            IAcadExtrudedSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VIsolineDensity )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VIsolineDensity )( 
            IAcadExtrudedSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadExtrudedSurface * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TaperAngle )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ ACAD_ANGLE *taperAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TaperAngle )( 
            IAcadExtrudedSurface * This,
            /* [in] */ ACAD_ANGLE taperAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
            IAcadExtrudedSurface * This,
            /* [retval][out] */ VARIANT *direction);
        
        END_INTERFACE
    } IAcadExtrudedSurfaceVtbl;

    interface IAcadExtrudedSurface
    {
        CONST_VTBL struct IAcadExtrudedSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadExtrudedSurface_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadExtrudedSurface_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadExtrudedSurface_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadExtrudedSurface_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadExtrudedSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadExtrudedSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadExtrudedSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadExtrudedSurface_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadExtrudedSurface_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadExtrudedSurface_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadExtrudedSurface_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadExtrudedSurface_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadExtrudedSurface_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadExtrudedSurface_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadExtrudedSurface_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadExtrudedSurface_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadExtrudedSurface_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadExtrudedSurface_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadExtrudedSurface_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadExtrudedSurface_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadExtrudedSurface_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadExtrudedSurface_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadExtrudedSurface_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadExtrudedSurface_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadExtrudedSurface_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadExtrudedSurface_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadExtrudedSurface_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadExtrudedSurface_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadExtrudedSurface_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadExtrudedSurface_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadExtrudedSurface_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadExtrudedSurface_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadExtrudedSurface_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadExtrudedSurface_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadExtrudedSurface_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadExtrudedSurface_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadExtrudedSurface_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadExtrudedSurface_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadExtrudedSurface_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadExtrudedSurface_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadExtrudedSurface_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadExtrudedSurface_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadExtrudedSurface_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadExtrudedSurface_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadExtrudedSurface_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadExtrudedSurface_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadExtrudedSurface_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadExtrudedSurface_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadExtrudedSurface_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadExtrudedSurface_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadExtrudedSurface_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadExtrudedSurface_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadExtrudedSurface_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadExtrudedSurface_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadExtrudedSurface_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadExtrudedSurface_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadExtrudedSurface_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadExtrudedSurface_get_SurfaceType(This,surfaceType)	\
    ( (This)->lpVtbl -> get_SurfaceType(This,surfaceType) ) 

#define IAcadExtrudedSurface_get_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_UIsolineDensity(This,density) ) 

#define IAcadExtrudedSurface_put_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_UIsolineDensity(This,density) ) 

#define IAcadExtrudedSurface_get_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_VIsolineDensity(This,density) ) 

#define IAcadExtrudedSurface_put_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_VIsolineDensity(This,density) ) 


#define IAcadExtrudedSurface_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadExtrudedSurface_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadExtrudedSurface_get_TaperAngle(This,taperAngle)	\
    ( (This)->lpVtbl -> get_TaperAngle(This,taperAngle) ) 

#define IAcadExtrudedSurface_put_TaperAngle(This,taperAngle)	\
    ( (This)->lpVtbl -> put_TaperAngle(This,taperAngle) ) 

#define IAcadExtrudedSurface_get_Direction(This,direction)	\
    ( (This)->lpVtbl -> get_Direction(This,direction) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadExtrudedSurface_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadExtrudedSurface,0xFF21C1A0,0xF55F,0x4F83,0xAA,0x07,0xFA,0x17,0xB1,0x9D,0xC5,0x54);

#ifdef __cplusplus

class DECLSPEC_UUID("FF21C1A0-F55F-4F83-AA07-FA17B19DC554")
AcadExtrudedSurface;
#endif

#ifndef __IAcadRevolvedSurface_INTERFACE_DEFINED__
#define __IAcadRevolvedSurface_INTERFACE_DEFINED__

/* interface IAcadRevolvedSurface */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadRevolvedSurface,0xBDB86C98,0x7974,0x453A,0xBB,0xB9,0x65,0xAE,0xD1,0x89,0x70,0xA5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BDB86C98-7974-453A-BBB9-65AED18970A5")
    IAcadRevolvedSurface : public IAcadSurface
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RevolutionAngle( 
            /* [retval][out] */ ACAD_ANGLE *revAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RevolutionAngle( 
            /* [in] */ ACAD_ANGLE revAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AxisPosition( 
            /* [retval][out] */ VARIANT *axisPosition) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AxisPosition( 
            /* [in] */ VARIANT axisPosition) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AxisDirection( 
            /* [retval][out] */ VARIANT *axisDirection) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadRevolvedSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadRevolvedSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadRevolvedSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadRevolvedSurface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadRevolvedSurface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadRevolvedSurface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadRevolvedSurface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadRevolvedSurface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadRevolvedSurface * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadRevolvedSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadRevolvedSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadRevolvedSurface * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadRevolvedSurface * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadRevolvedSurface * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadRevolvedSurface * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadRevolvedSurface * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadRevolvedSurface * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadRevolvedSurface * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadRevolvedSurface * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadRevolvedSurface * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadRevolvedSurface * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadRevolvedSurface * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadRevolvedSurface * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadRevolvedSurface * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceType )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ BSTR *surfaceType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIsolineDensity )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIsolineDensity )( 
            IAcadRevolvedSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VIsolineDensity )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VIsolineDensity )( 
            IAcadRevolvedSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RevolutionAngle )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ ACAD_ANGLE *revAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RevolutionAngle )( 
            IAcadRevolvedSurface * This,
            /* [in] */ ACAD_ANGLE revAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AxisPosition )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ VARIANT *axisPosition);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AxisPosition )( 
            IAcadRevolvedSurface * This,
            /* [in] */ VARIANT axisPosition);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AxisDirection )( 
            IAcadRevolvedSurface * This,
            /* [retval][out] */ VARIANT *axisDirection);
        
        END_INTERFACE
    } IAcadRevolvedSurfaceVtbl;

    interface IAcadRevolvedSurface
    {
        CONST_VTBL struct IAcadRevolvedSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadRevolvedSurface_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadRevolvedSurface_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadRevolvedSurface_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadRevolvedSurface_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadRevolvedSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadRevolvedSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadRevolvedSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadRevolvedSurface_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadRevolvedSurface_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadRevolvedSurface_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadRevolvedSurface_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadRevolvedSurface_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadRevolvedSurface_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadRevolvedSurface_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadRevolvedSurface_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadRevolvedSurface_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadRevolvedSurface_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadRevolvedSurface_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadRevolvedSurface_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadRevolvedSurface_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadRevolvedSurface_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadRevolvedSurface_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadRevolvedSurface_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadRevolvedSurface_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadRevolvedSurface_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadRevolvedSurface_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadRevolvedSurface_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadRevolvedSurface_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadRevolvedSurface_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadRevolvedSurface_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadRevolvedSurface_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadRevolvedSurface_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadRevolvedSurface_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadRevolvedSurface_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadRevolvedSurface_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadRevolvedSurface_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadRevolvedSurface_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadRevolvedSurface_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadRevolvedSurface_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadRevolvedSurface_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadRevolvedSurface_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadRevolvedSurface_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadRevolvedSurface_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadRevolvedSurface_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadRevolvedSurface_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadRevolvedSurface_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadRevolvedSurface_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadRevolvedSurface_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadRevolvedSurface_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadRevolvedSurface_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadRevolvedSurface_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadRevolvedSurface_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadRevolvedSurface_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadRevolvedSurface_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadRevolvedSurface_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadRevolvedSurface_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadRevolvedSurface_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadRevolvedSurface_get_SurfaceType(This,surfaceType)	\
    ( (This)->lpVtbl -> get_SurfaceType(This,surfaceType) ) 

#define IAcadRevolvedSurface_get_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_UIsolineDensity(This,density) ) 

#define IAcadRevolvedSurface_put_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_UIsolineDensity(This,density) ) 

#define IAcadRevolvedSurface_get_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_VIsolineDensity(This,density) ) 

#define IAcadRevolvedSurface_put_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_VIsolineDensity(This,density) ) 


#define IAcadRevolvedSurface_get_RevolutionAngle(This,revAngle)	\
    ( (This)->lpVtbl -> get_RevolutionAngle(This,revAngle) ) 

#define IAcadRevolvedSurface_put_RevolutionAngle(This,revAngle)	\
    ( (This)->lpVtbl -> put_RevolutionAngle(This,revAngle) ) 

#define IAcadRevolvedSurface_get_AxisPosition(This,axisPosition)	\
    ( (This)->lpVtbl -> get_AxisPosition(This,axisPosition) ) 

#define IAcadRevolvedSurface_put_AxisPosition(This,axisPosition)	\
    ( (This)->lpVtbl -> put_AxisPosition(This,axisPosition) ) 

#define IAcadRevolvedSurface_get_AxisDirection(This,axisDirection)	\
    ( (This)->lpVtbl -> get_AxisDirection(This,axisDirection) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadRevolvedSurface_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadRevolvedSurface,0x17C28199,0x8C6A,0x477C,0x9B,0x1E,0x31,0xC6,0xE1,0xBB,0x17,0xF9);

#ifdef __cplusplus

class DECLSPEC_UUID("17C28199-8C6A-477C-9B1E-31C6E1BB17F9")
AcadRevolvedSurface;
#endif

#ifndef __IAcadSweptSurface_INTERFACE_DEFINED__
#define __IAcadSweptSurface_INTERFACE_DEFINED__

/* interface IAcadSweptSurface */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSweptSurface,0x04B7592D,0x6CEF,0x4537,0x8F,0x76,0x71,0x2F,0x64,0xD6,0xF4,0x2A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("04B7592D-6CEF-4537-8F76-712F64D6F42A")
    IAcadSweptSurface : public IAcadSurface
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProfileRotation( 
            /* [retval][out] */ ACAD_ANGLE *profileRotationAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProfileRotation( 
            /* [in] */ ACAD_ANGLE profileRotationAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Bank( 
            /* [retval][out] */ VARIANT_BOOL *bBank) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Bank( 
            /* [in] */ VARIANT_BOOL bBank) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Twist( 
            /* [retval][out] */ ACAD_ANGLE *twistAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Twist( 
            /* [in] */ ACAD_ANGLE twistAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double *scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double *length) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSweptSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSweptSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSweptSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSweptSurface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSweptSurface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSweptSurface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSweptSurface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSweptSurface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSweptSurface * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSweptSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSweptSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadSweptSurface * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadSweptSurface * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadSweptSurface * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadSweptSurface * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadSweptSurface * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadSweptSurface * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadSweptSurface * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadSweptSurface * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadSweptSurface * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadSweptSurface * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadSweptSurface * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSweptSurface * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSweptSurface * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceType )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ BSTR *surfaceType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIsolineDensity )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIsolineDensity )( 
            IAcadSweptSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VIsolineDensity )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VIsolineDensity )( 
            IAcadSweptSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProfileRotation )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ ACAD_ANGLE *profileRotationAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ProfileRotation )( 
            IAcadSweptSurface * This,
            /* [in] */ ACAD_ANGLE profileRotationAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Bank )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bBank);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Bank )( 
            IAcadSweptSurface * This,
            /* [in] */ VARIANT_BOOL bBank);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Twist )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ ACAD_ANGLE *twistAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Twist )( 
            IAcadSweptSurface * This,
            /* [in] */ ACAD_ANGLE twistAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Scale )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ double *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Scale )( 
            IAcadSweptSurface * This,
            /* [in] */ double scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Length )( 
            IAcadSweptSurface * This,
            /* [retval][out] */ double *length);
        
        END_INTERFACE
    } IAcadSweptSurfaceVtbl;

    interface IAcadSweptSurface
    {
        CONST_VTBL struct IAcadSweptSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSweptSurface_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSweptSurface_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSweptSurface_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSweptSurface_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSweptSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSweptSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSweptSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSweptSurface_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSweptSurface_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSweptSurface_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSweptSurface_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSweptSurface_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSweptSurface_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSweptSurface_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSweptSurface_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSweptSurface_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSweptSurface_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSweptSurface_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSweptSurface_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSweptSurface_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSweptSurface_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSweptSurface_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSweptSurface_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadSweptSurface_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadSweptSurface_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSweptSurface_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadSweptSurface_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSweptSurface_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadSweptSurface_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSweptSurface_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadSweptSurface_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadSweptSurface_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadSweptSurface_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadSweptSurface_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadSweptSurface_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadSweptSurface_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadSweptSurface_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadSweptSurface_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadSweptSurface_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadSweptSurface_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadSweptSurface_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadSweptSurface_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadSweptSurface_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadSweptSurface_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadSweptSurface_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadSweptSurface_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadSweptSurface_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSweptSurface_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadSweptSurface_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSweptSurface_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadSweptSurface_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadSweptSurface_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSweptSurface_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSweptSurface_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadSweptSurface_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadSweptSurface_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadSweptSurface_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadSweptSurface_get_SurfaceType(This,surfaceType)	\
    ( (This)->lpVtbl -> get_SurfaceType(This,surfaceType) ) 

#define IAcadSweptSurface_get_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_UIsolineDensity(This,density) ) 

#define IAcadSweptSurface_put_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_UIsolineDensity(This,density) ) 

#define IAcadSweptSurface_get_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_VIsolineDensity(This,density) ) 

#define IAcadSweptSurface_put_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_VIsolineDensity(This,density) ) 


#define IAcadSweptSurface_get_ProfileRotation(This,profileRotationAngle)	\
    ( (This)->lpVtbl -> get_ProfileRotation(This,profileRotationAngle) ) 

#define IAcadSweptSurface_put_ProfileRotation(This,profileRotationAngle)	\
    ( (This)->lpVtbl -> put_ProfileRotation(This,profileRotationAngle) ) 

#define IAcadSweptSurface_get_Bank(This,bBank)	\
    ( (This)->lpVtbl -> get_Bank(This,bBank) ) 

#define IAcadSweptSurface_put_Bank(This,bBank)	\
    ( (This)->lpVtbl -> put_Bank(This,bBank) ) 

#define IAcadSweptSurface_get_Twist(This,twistAngle)	\
    ( (This)->lpVtbl -> get_Twist(This,twistAngle) ) 

#define IAcadSweptSurface_put_Twist(This,twistAngle)	\
    ( (This)->lpVtbl -> put_Twist(This,twistAngle) ) 

#define IAcadSweptSurface_get_Scale(This,scale)	\
    ( (This)->lpVtbl -> get_Scale(This,scale) ) 

#define IAcadSweptSurface_put_Scale(This,scale)	\
    ( (This)->lpVtbl -> put_Scale(This,scale) ) 

#define IAcadSweptSurface_get_Length(This,length)	\
    ( (This)->lpVtbl -> get_Length(This,length) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSweptSurface_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSweptSurface,0x01051767,0x3175,0x4B06,0x81,0xCF,0xF8,0xF5,0xCE,0x3B,0x0D,0x2B);

#ifdef __cplusplus

class DECLSPEC_UUID("01051767-3175-4B06-81CF-F8F5CE3B0D2B")
AcadSweptSurface;
#endif

#ifndef __IAcadLoftedSurface_INTERFACE_DEFINED__
#define __IAcadLoftedSurface_INTERFACE_DEFINED__

/* interface IAcadLoftedSurface */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLoftedSurface,0x0585CAEB,0x38E3,0x453D,0xB2,0x6C,0x9E,0x17,0x8D,0xC4,0x5F,0x2B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0585CAEB-38E3-453D-B26C-9E178DC45F2B")
    IAcadLoftedSurface : public IAcadSurface
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumCrossSections( 
            /* [retval][out] */ long *numCrossSections) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumGuidePaths( 
            /* [retval][out] */ long *numGuidePaths) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceNormals( 
            /* [retval][out] */ AcLoftedSurfaceNormalType *surfaceNormal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SurfaceNormals( 
            /* [in] */ AcLoftedSurfaceNormalType surfaceNormal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartDraftAngle( 
            /* [retval][out] */ ACAD_ANGLE *startDraftAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartDraftAngle( 
            /* [in] */ ACAD_ANGLE startDraftAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartDraftMagnitude( 
            /* [retval][out] */ double *startDraftMag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartDraftMagnitude( 
            /* [in] */ double startDraftMag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndDraftAngle( 
            /* [retval][out] */ ACAD_ANGLE *endDraftAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndDraftAngle( 
            /* [in] */ ACAD_ANGLE endDraftAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndDraftMagnitude( 
            /* [retval][out] */ double *endDraftMag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndDraftMagnitude( 
            /* [in] */ double endDraftMag) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL *bClosed) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL bClosed) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLoftedSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLoftedSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLoftedSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLoftedSurface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLoftedSurface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLoftedSurface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLoftedSurface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLoftedSurface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadLoftedSurface * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLoftedSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadLoftedSurface * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadLoftedSurface * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadLoftedSurface * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadLoftedSurface * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadLoftedSurface * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadLoftedSurface * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadLoftedSurface * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadLoftedSurface * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadLoftedSurface * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadLoftedSurface * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadLoftedSurface * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadLoftedSurface * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadLoftedSurface * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadLoftedSurface * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceType )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ BSTR *surfaceType);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIsolineDensity )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIsolineDensity )( 
            IAcadLoftedSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VIsolineDensity )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ long *density);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VIsolineDensity )( 
            IAcadLoftedSurface * This,
            /* [in] */ long density);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumCrossSections )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ long *numCrossSections);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumGuidePaths )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ long *numGuidePaths);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SurfaceNormals )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ AcLoftedSurfaceNormalType *surfaceNormal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SurfaceNormals )( 
            IAcadLoftedSurface * This,
            /* [in] */ AcLoftedSurfaceNormalType surfaceNormal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartDraftAngle )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ ACAD_ANGLE *startDraftAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartDraftAngle )( 
            IAcadLoftedSurface * This,
            /* [in] */ ACAD_ANGLE startDraftAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartDraftMagnitude )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ double *startDraftMag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartDraftMagnitude )( 
            IAcadLoftedSurface * This,
            /* [in] */ double startDraftMag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndDraftAngle )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ ACAD_ANGLE *endDraftAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndDraftAngle )( 
            IAcadLoftedSurface * This,
            /* [in] */ ACAD_ANGLE endDraftAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndDraftMagnitude )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ double *endDraftMag);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndDraftMagnitude )( 
            IAcadLoftedSurface * This,
            /* [in] */ double endDraftMag);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Closed )( 
            IAcadLoftedSurface * This,
            /* [retval][out] */ VARIANT_BOOL *bClosed);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Closed )( 
            IAcadLoftedSurface * This,
            /* [in] */ VARIANT_BOOL bClosed);
        
        END_INTERFACE
    } IAcadLoftedSurfaceVtbl;

    interface IAcadLoftedSurface
    {
        CONST_VTBL struct IAcadLoftedSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLoftedSurface_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLoftedSurface_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLoftedSurface_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLoftedSurface_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLoftedSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLoftedSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLoftedSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLoftedSurface_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadLoftedSurface_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadLoftedSurface_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadLoftedSurface_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadLoftedSurface_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadLoftedSurface_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadLoftedSurface_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadLoftedSurface_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadLoftedSurface_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadLoftedSurface_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadLoftedSurface_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadLoftedSurface_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadLoftedSurface_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadLoftedSurface_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadLoftedSurface_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadLoftedSurface_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadLoftedSurface_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadLoftedSurface_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadLoftedSurface_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadLoftedSurface_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadLoftedSurface_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadLoftedSurface_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadLoftedSurface_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadLoftedSurface_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadLoftedSurface_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadLoftedSurface_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadLoftedSurface_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadLoftedSurface_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadLoftedSurface_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadLoftedSurface_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadLoftedSurface_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadLoftedSurface_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadLoftedSurface_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadLoftedSurface_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadLoftedSurface_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadLoftedSurface_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadLoftedSurface_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadLoftedSurface_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadLoftedSurface_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadLoftedSurface_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadLoftedSurface_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadLoftedSurface_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadLoftedSurface_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadLoftedSurface_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadLoftedSurface_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadLoftedSurface_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadLoftedSurface_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadLoftedSurface_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadLoftedSurface_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadLoftedSurface_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadLoftedSurface_get_SurfaceType(This,surfaceType)	\
    ( (This)->lpVtbl -> get_SurfaceType(This,surfaceType) ) 

#define IAcadLoftedSurface_get_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_UIsolineDensity(This,density) ) 

#define IAcadLoftedSurface_put_UIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_UIsolineDensity(This,density) ) 

#define IAcadLoftedSurface_get_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> get_VIsolineDensity(This,density) ) 

#define IAcadLoftedSurface_put_VIsolineDensity(This,density)	\
    ( (This)->lpVtbl -> put_VIsolineDensity(This,density) ) 


#define IAcadLoftedSurface_get_NumCrossSections(This,numCrossSections)	\
    ( (This)->lpVtbl -> get_NumCrossSections(This,numCrossSections) ) 

#define IAcadLoftedSurface_get_NumGuidePaths(This,numGuidePaths)	\
    ( (This)->lpVtbl -> get_NumGuidePaths(This,numGuidePaths) ) 

#define IAcadLoftedSurface_get_SurfaceNormals(This,surfaceNormal)	\
    ( (This)->lpVtbl -> get_SurfaceNormals(This,surfaceNormal) ) 

#define IAcadLoftedSurface_put_SurfaceNormals(This,surfaceNormal)	\
    ( (This)->lpVtbl -> put_SurfaceNormals(This,surfaceNormal) ) 

#define IAcadLoftedSurface_get_StartDraftAngle(This,startDraftAngle)	\
    ( (This)->lpVtbl -> get_StartDraftAngle(This,startDraftAngle) ) 

#define IAcadLoftedSurface_put_StartDraftAngle(This,startDraftAngle)	\
    ( (This)->lpVtbl -> put_StartDraftAngle(This,startDraftAngle) ) 

#define IAcadLoftedSurface_get_StartDraftMagnitude(This,startDraftMag)	\
    ( (This)->lpVtbl -> get_StartDraftMagnitude(This,startDraftMag) ) 

#define IAcadLoftedSurface_put_StartDraftMagnitude(This,startDraftMag)	\
    ( (This)->lpVtbl -> put_StartDraftMagnitude(This,startDraftMag) ) 

#define IAcadLoftedSurface_get_EndDraftAngle(This,endDraftAngle)	\
    ( (This)->lpVtbl -> get_EndDraftAngle(This,endDraftAngle) ) 

#define IAcadLoftedSurface_put_EndDraftAngle(This,endDraftAngle)	\
    ( (This)->lpVtbl -> put_EndDraftAngle(This,endDraftAngle) ) 

#define IAcadLoftedSurface_get_EndDraftMagnitude(This,endDraftMag)	\
    ( (This)->lpVtbl -> get_EndDraftMagnitude(This,endDraftMag) ) 

#define IAcadLoftedSurface_put_EndDraftMagnitude(This,endDraftMag)	\
    ( (This)->lpVtbl -> put_EndDraftMagnitude(This,endDraftMag) ) 

#define IAcadLoftedSurface_get_Closed(This,bClosed)	\
    ( (This)->lpVtbl -> get_Closed(This,bClosed) ) 

#define IAcadLoftedSurface_put_Closed(This,bClosed)	\
    ( (This)->lpVtbl -> put_Closed(This,bClosed) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLoftedSurface_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLoftedSurface,0xD3BB6333,0xB4CE,0x48DA,0xBF,0x1B,0x19,0x8E,0x9E,0x8B,0x95,0xAF);

#ifdef __cplusplus

class DECLSPEC_UUID("D3BB6333-B4CE-48DA-BF1B-198E9E8B95AF")
AcadLoftedSurface;
#endif

#ifndef __IAcadSection_INTERFACE_DEFINED__
#define __IAcadSection_INTERFACE_DEFINED__

/* interface IAcadSection */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSection,0x96FEBB41,0xF125,0x4CC1,0x8F,0x09,0x1D,0xBB,0x51,0x4C,0xD2,0x1C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("96FEBB41-F125-4CC1-8F09-1DBB514CD21C")
    IAcadSection : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *pbstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR pbstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ AcSectionState *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_State( 
            /* [in] */ AcSectionState val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewingDirection( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ViewingDirection( 
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalDirection( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalDirection( 
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LiveSectionEnabled( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LiveSectionEnabled( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IndicatorTransparency( 
            /* [retval][out] */ int *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IndicatorTransparency( 
            /* [in] */ int val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IndicatorFillColor( 
            /* [retval][out] */ IAcadAcCmColor **pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IndicatorFillColor( 
            /* [in] */ IAcadAcCmColor *pColor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Elevation( 
            /* [retval][out] */ double *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Elevation( 
            /* [in] */ double val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TopHeight( 
            /* [retval][out] */ double *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TopHeight( 
            /* [in] */ double val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_BottomHeight( 
            /* [retval][out] */ double *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_BottomHeight( 
            /* [in] */ double val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumVertices( 
            /* [retval][out] */ int *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Vertices( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Vertices( 
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddVertex( 
            /* [in] */ int nIndex,
            /* [in] */ VARIANT val) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveVertex( 
            /* [in] */ int nIndex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE HitTest( 
            /* [in] */ VARIANT varPtHit,
            /* [out] */ VARIANT_BOOL *pHit,
            /* [out] */ int *pSegmentIndex,
            /* [out] */ VARIANT *pPtOnSegment,
            /* [out] */ AcSectionSubItem *pSubItem) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreateJog( 
            /* [in] */ VARIANT varPt) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Settings( 
            /* [retval][out] */ IAcadSectionSettings **pUnk) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GenerateSectionGeometry( 
            /* [in] */ IAcadEntity *pEntity,
            /* [out] */ VARIANT *pIntersectionBoundaryObjs,
            /* [out] */ VARIANT *pIntersectionFillObjs,
            /* [out] */ VARIANT *pBackgroudnObjs,
            /* [out] */ VARIANT *pForegroudObjs,
            /* [out] */ VARIANT *pCurveTangencyObjs) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSection * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSection * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSection * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSection * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSection * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSection * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSection * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSection * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSection * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSection * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSection * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSection * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSection * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSection * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSection * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSection * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSection * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSection * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSection * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadSection * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadSection * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadSection * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadSection * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSection * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadSection * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadSection * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadSection * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadSection * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadSection * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadSection * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadSection * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadSection * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadSection * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadSection * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadSection * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadSection * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadSection * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadSection * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadSection * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadSection * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadSection * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSection * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadSection * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSection * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSection * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadSection * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSection * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSection * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadSection * This,
            /* [retval][out] */ BSTR *pbstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadSection * This,
            /* [in] */ BSTR pbstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IAcadSection * This,
            /* [retval][out] */ AcSectionState *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_State )( 
            IAcadSection * This,
            /* [in] */ AcSectionState val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ViewingDirection )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ViewingDirection )( 
            IAcadSection * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalDirection )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalDirection )( 
            IAcadSection * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LiveSectionEnabled )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LiveSectionEnabled )( 
            IAcadSection * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IndicatorTransparency )( 
            IAcadSection * This,
            /* [retval][out] */ int *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IndicatorTransparency )( 
            IAcadSection * This,
            /* [in] */ int val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IndicatorFillColor )( 
            IAcadSection * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IndicatorFillColor )( 
            IAcadSection * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Elevation )( 
            IAcadSection * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Elevation )( 
            IAcadSection * This,
            /* [in] */ double val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TopHeight )( 
            IAcadSection * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TopHeight )( 
            IAcadSection * This,
            /* [in] */ double val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BottomHeight )( 
            IAcadSection * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BottomHeight )( 
            IAcadSection * This,
            /* [in] */ double val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumVertices )( 
            IAcadSection * This,
            /* [retval][out] */ int *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Vertices )( 
            IAcadSection * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Vertices )( 
            IAcadSection * This,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadSection * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadSection * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddVertex )( 
            IAcadSection * This,
            /* [in] */ int nIndex,
            /* [in] */ VARIANT val);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveVertex )( 
            IAcadSection * This,
            /* [in] */ int nIndex);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *HitTest )( 
            IAcadSection * This,
            /* [in] */ VARIANT varPtHit,
            /* [out] */ VARIANT_BOOL *pHit,
            /* [out] */ int *pSegmentIndex,
            /* [out] */ VARIANT *pPtOnSegment,
            /* [out] */ AcSectionSubItem *pSubItem);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreateJog )( 
            IAcadSection * This,
            /* [in] */ VARIANT varPt);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Settings )( 
            IAcadSection * This,
            /* [retval][out] */ IAcadSectionSettings **pUnk);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GenerateSectionGeometry )( 
            IAcadSection * This,
            /* [in] */ IAcadEntity *pEntity,
            /* [out] */ VARIANT *pIntersectionBoundaryObjs,
            /* [out] */ VARIANT *pIntersectionFillObjs,
            /* [out] */ VARIANT *pBackgroudnObjs,
            /* [out] */ VARIANT *pForegroudObjs,
            /* [out] */ VARIANT *pCurveTangencyObjs);
        
        END_INTERFACE
    } IAcadSectionVtbl;

    interface IAcadSection
    {
        CONST_VTBL struct IAcadSectionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSection_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSection_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSection_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSection_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSection_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSection_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSection_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSection_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSection_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSection_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSection_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSection_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSection_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSection_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSection_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSection_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSection_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSection_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSection_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSection_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadSection_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadSection_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSection_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadSection_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSection_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadSection_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSection_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadSection_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadSection_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadSection_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadSection_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadSection_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadSection_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadSection_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadSection_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadSection_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadSection_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadSection_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadSection_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadSection_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadSection_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadSection_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadSection_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadSection_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSection_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadSection_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSection_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadSection_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadSection_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSection_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSection_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadSection_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadSection_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadSection_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadSection_get_Name(This,pbstrName)	\
    ( (This)->lpVtbl -> get_Name(This,pbstrName) ) 

#define IAcadSection_put_Name(This,pbstrName)	\
    ( (This)->lpVtbl -> put_Name(This,pbstrName) ) 

#define IAcadSection_get_State(This,pVal)	\
    ( (This)->lpVtbl -> get_State(This,pVal) ) 

#define IAcadSection_put_State(This,val)	\
    ( (This)->lpVtbl -> put_State(This,val) ) 

#define IAcadSection_get_ViewingDirection(This,pVal)	\
    ( (This)->lpVtbl -> get_ViewingDirection(This,pVal) ) 

#define IAcadSection_put_ViewingDirection(This,val)	\
    ( (This)->lpVtbl -> put_ViewingDirection(This,val) ) 

#define IAcadSection_get_VerticalDirection(This,pVal)	\
    ( (This)->lpVtbl -> get_VerticalDirection(This,pVal) ) 

#define IAcadSection_put_VerticalDirection(This,val)	\
    ( (This)->lpVtbl -> put_VerticalDirection(This,val) ) 

#define IAcadSection_get_Normal(This,pVal)	\
    ( (This)->lpVtbl -> get_Normal(This,pVal) ) 

#define IAcadSection_get_LiveSectionEnabled(This,pVal)	\
    ( (This)->lpVtbl -> get_LiveSectionEnabled(This,pVal) ) 

#define IAcadSection_put_LiveSectionEnabled(This,val)	\
    ( (This)->lpVtbl -> put_LiveSectionEnabled(This,val) ) 

#define IAcadSection_get_IndicatorTransparency(This,pVal)	\
    ( (This)->lpVtbl -> get_IndicatorTransparency(This,pVal) ) 

#define IAcadSection_put_IndicatorTransparency(This,val)	\
    ( (This)->lpVtbl -> put_IndicatorTransparency(This,val) ) 

#define IAcadSection_get_IndicatorFillColor(This,pColor)	\
    ( (This)->lpVtbl -> get_IndicatorFillColor(This,pColor) ) 

#define IAcadSection_put_IndicatorFillColor(This,pColor)	\
    ( (This)->lpVtbl -> put_IndicatorFillColor(This,pColor) ) 

#define IAcadSection_get_Elevation(This,pVal)	\
    ( (This)->lpVtbl -> get_Elevation(This,pVal) ) 

#define IAcadSection_put_Elevation(This,val)	\
    ( (This)->lpVtbl -> put_Elevation(This,val) ) 

#define IAcadSection_get_TopHeight(This,pVal)	\
    ( (This)->lpVtbl -> get_TopHeight(This,pVal) ) 

#define IAcadSection_put_TopHeight(This,val)	\
    ( (This)->lpVtbl -> put_TopHeight(This,val) ) 

#define IAcadSection_get_BottomHeight(This,pVal)	\
    ( (This)->lpVtbl -> get_BottomHeight(This,pVal) ) 

#define IAcadSection_put_BottomHeight(This,val)	\
    ( (This)->lpVtbl -> put_BottomHeight(This,val) ) 

#define IAcadSection_get_NumVertices(This,pVal)	\
    ( (This)->lpVtbl -> get_NumVertices(This,pVal) ) 

#define IAcadSection_get_Vertices(This,pVal)	\
    ( (This)->lpVtbl -> get_Vertices(This,pVal) ) 

#define IAcadSection_put_Vertices(This,val)	\
    ( (This)->lpVtbl -> put_Vertices(This,val) ) 

#define IAcadSection_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadSection_put_Coordinate(This,Index,val)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,val) ) 

#define IAcadSection_AddVertex(This,nIndex,val)	\
    ( (This)->lpVtbl -> AddVertex(This,nIndex,val) ) 

#define IAcadSection_RemoveVertex(This,nIndex)	\
    ( (This)->lpVtbl -> RemoveVertex(This,nIndex) ) 

#define IAcadSection_HitTest(This,varPtHit,pHit,pSegmentIndex,pPtOnSegment,pSubItem)	\
    ( (This)->lpVtbl -> HitTest(This,varPtHit,pHit,pSegmentIndex,pPtOnSegment,pSubItem) ) 

#define IAcadSection_CreateJog(This,varPt)	\
    ( (This)->lpVtbl -> CreateJog(This,varPt) ) 

#define IAcadSection_get_Settings(This,pUnk)	\
    ( (This)->lpVtbl -> get_Settings(This,pUnk) ) 

#define IAcadSection_GenerateSectionGeometry(This,pEntity,pIntersectionBoundaryObjs,pIntersectionFillObjs,pBackgroudnObjs,pForegroudObjs,pCurveTangencyObjs)	\
    ( (This)->lpVtbl -> GenerateSectionGeometry(This,pEntity,pIntersectionBoundaryObjs,pIntersectionFillObjs,pBackgroudnObjs,pForegroudObjs,pCurveTangencyObjs) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSection_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSection,0x85668C5B,0x36EE,0x4DBE,0xB4,0xC6,0xA2,0xB4,0xD3,0xF3,0x91,0x64);

#ifdef __cplusplus

class DECLSPEC_UUID("85668C5B-36EE-4DBE-B4C6-A2B4D3F39164")
AcadSection;
#endif

#ifndef __IAcadSectionManager_INTERFACE_DEFINED__
#define __IAcadSectionManager_INTERFACE_DEFINED__

/* interface IAcadSectionManager */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSectionManager,0xA28DABB3,0xDDC0,0x4713,0xA9,0xE9,0x87,0xF0,0x3C,0xC9,0x2A,0xF1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A28DABB3-DDC0-4713-A9E9-87F03CC92AF1")
    IAcadSectionManager : public IAcadObject
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadSection **pSection) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetLiveSection( 
            /* [retval][out] */ IAcadSection **pSection) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetUniqueSectionName( 
            /* [in] */ BSTR pBaseName,
            /* [retval][out] */ BSTR *ppUniqueName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSectionManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSectionManager * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSectionManager * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSectionManager * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSectionManager * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSectionManager * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSectionManager * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSectionManager * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSectionManager * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSectionManager * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSectionManager * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSectionManager * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSectionManager * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSectionManager * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSectionManager * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSectionManager * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSectionManager * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadSectionManager * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadSection **pSection);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadSectionManager * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadSectionManager * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetLiveSection )( 
            IAcadSectionManager * This,
            /* [retval][out] */ IAcadSection **pSection);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetUniqueSectionName )( 
            IAcadSectionManager * This,
            /* [in] */ BSTR pBaseName,
            /* [retval][out] */ BSTR *ppUniqueName);
        
        END_INTERFACE
    } IAcadSectionManagerVtbl;

    interface IAcadSectionManager
    {
        CONST_VTBL struct IAcadSectionManagerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSectionManager_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSectionManager_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSectionManager_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSectionManager_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSectionManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSectionManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSectionManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSectionManager_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSectionManager_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSectionManager_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSectionManager_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSectionManager_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSectionManager_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSectionManager_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSectionManager_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSectionManager_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSectionManager_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSectionManager_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSectionManager_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSectionManager_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSectionManager_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSectionManager_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSectionManager_Item(This,Index,pSection)	\
    ( (This)->lpVtbl -> Item(This,Index,pSection) ) 

#define IAcadSectionManager_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadSectionManager_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadSectionManager_GetLiveSection(This,pSection)	\
    ( (This)->lpVtbl -> GetLiveSection(This,pSection) ) 

#define IAcadSectionManager_GetUniqueSectionName(This,pBaseName,ppUniqueName)	\
    ( (This)->lpVtbl -> GetUniqueSectionName(This,pBaseName,ppUniqueName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSectionManager_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSectionManager,0xCC734C6C,0xD4EE,0x4D24,0xB6,0x88,0x0D,0xF9,0x9D,0xDC,0xCF,0xA5);

#ifdef __cplusplus

class DECLSPEC_UUID("CC734C6C-D4EE-4D24-B688-0DF99DDCCFA5")
AcadSectionManager;
#endif

#ifndef __IAcadUnderlay_INTERFACE_DEFINED__
#define __IAcadUnderlay_INTERFACE_DEFINED__

/* interface IAcadUnderlay */
/* [unique][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadUnderlay,0xA9B5B4BA,0x81F7,0x4F02,0x9C,0xC0,0x19,0xB5,0x24,0x52,0x3D,0xAA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A9B5B4BA-81F7-4F02-9CC0-19B524523DAA")
    IAcadUnderlay : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Contrast( 
            /* [retval][out] */ long *contrast) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Contrast( 
            /* [in] */ long contrast) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fade( 
            /* [retval][out] */ long *fade) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fade( 
            /* [in] */ long fade) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Position( 
            /* [retval][out] */ VARIANT *pos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Position( 
            /* [in] */ VARIANT pos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double *width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double width) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnderlayName( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnderlayName( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ItemName( 
            /* [in] */ BSTR sheetName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemName( 
            /* [retval][out] */ BSTR *sheetName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Monochrome( 
            /* [retval][out] */ VARIANT_BOOL *bMono) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Monochrome( 
            /* [in] */ VARIANT_BOOL bMono) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdjustForBackground( 
            /* [retval][out] */ VARIANT_BOOL *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AdjustForBackground( 
            /* [in] */ VARIANT_BOOL value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ClipBoundary( 
            /* [in] */ VARIANT boundry) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS scaleFactor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_File( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_File( 
            /* [in] */ BSTR Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnderlayVisibility( 
            /* [retval][out] */ VARIANT_BOOL *fVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnderlayVisibility( 
            /* [in] */ VARIANT_BOOL fVisible) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClippingEnabled( 
            /* [retval][out] */ VARIANT_BOOL *kClip) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClippingEnabled( 
            /* [in] */ VARIANT_BOOL kClip) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnderlayLayerOverrideApplied( 
            /* [retval][out] */ AcUnderlayLayerOverrideType *bOverride) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnderlayLayerOverrideApplied( 
            /* [in] */ AcUnderlayLayerOverrideType bOverride) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadUnderlayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadUnderlay * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadUnderlay * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadUnderlay * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadUnderlay * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadUnderlay * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadUnderlay * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadUnderlay * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadUnderlay * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadUnderlay * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadUnderlay * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadUnderlay * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadUnderlay * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadUnderlay * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadUnderlay * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadUnderlay * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadUnderlay * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadUnderlay * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadUnderlay * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadUnderlay * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadUnderlay * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadUnderlay * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadUnderlay * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadUnderlay * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadUnderlay * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadUnderlay * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadUnderlay * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadUnderlay * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Contrast )( 
            IAcadUnderlay * This,
            /* [retval][out] */ long *contrast);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Contrast )( 
            IAcadUnderlay * This,
            /* [in] */ long contrast);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fade )( 
            IAcadUnderlay * This,
            /* [retval][out] */ long *fade);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fade )( 
            IAcadUnderlay * This,
            /* [in] */ long fade);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Position )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT *pos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Position )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT pos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadUnderlay * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadUnderlay * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadUnderlay * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadUnderlay * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadUnderlay * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadUnderlay * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlayName )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnderlayName )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ItemName )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR sheetName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ItemName )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *sheetName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Monochrome )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *bMono);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Monochrome )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT_BOOL bMono);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdjustForBackground )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AdjustForBackground )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT_BOOL value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ClipBoundary )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT boundry);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadUnderlay * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadUnderlay * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_File )( 
            IAcadUnderlay * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_File )( 
            IAcadUnderlay * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlayVisibility )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *fVisible);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnderlayVisibility )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT_BOOL fVisible);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClippingEnabled )( 
            IAcadUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *kClip);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClippingEnabled )( 
            IAcadUnderlay * This,
            /* [in] */ VARIANT_BOOL kClip);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlayLayerOverrideApplied )( 
            IAcadUnderlay * This,
            /* [retval][out] */ AcUnderlayLayerOverrideType *bOverride);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnderlayLayerOverrideApplied )( 
            IAcadUnderlay * This,
            /* [in] */ AcUnderlayLayerOverrideType bOverride);
        
        END_INTERFACE
    } IAcadUnderlayVtbl;

    interface IAcadUnderlay
    {
        CONST_VTBL struct IAcadUnderlayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadUnderlay_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadUnderlay_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadUnderlay_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadUnderlay_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadUnderlay_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadUnderlay_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadUnderlay_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadUnderlay_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadUnderlay_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadUnderlay_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadUnderlay_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadUnderlay_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadUnderlay_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadUnderlay_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadUnderlay_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadUnderlay_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadUnderlay_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadUnderlay_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadUnderlay_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadUnderlay_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadUnderlay_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadUnderlay_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadUnderlay_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadUnderlay_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadUnderlay_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadUnderlay_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadUnderlay_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadUnderlay_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadUnderlay_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadUnderlay_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadUnderlay_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadUnderlay_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadUnderlay_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadUnderlay_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadUnderlay_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadUnderlay_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadUnderlay_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadUnderlay_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadUnderlay_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadUnderlay_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadUnderlay_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadUnderlay_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadUnderlay_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadUnderlay_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadUnderlay_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadUnderlay_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadUnderlay_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadUnderlay_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadUnderlay_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadUnderlay_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadUnderlay_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadUnderlay_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadUnderlay_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadUnderlay_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadUnderlay_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadUnderlay_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadUnderlay_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadUnderlay_get_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> get_Contrast(This,contrast) ) 

#define IAcadUnderlay_put_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> put_Contrast(This,contrast) ) 

#define IAcadUnderlay_get_Fade(This,fade)	\
    ( (This)->lpVtbl -> get_Fade(This,fade) ) 

#define IAcadUnderlay_put_Fade(This,fade)	\
    ( (This)->lpVtbl -> put_Fade(This,fade) ) 

#define IAcadUnderlay_get_Position(This,pos)	\
    ( (This)->lpVtbl -> get_Position(This,pos) ) 

#define IAcadUnderlay_put_Position(This,pos)	\
    ( (This)->lpVtbl -> put_Position(This,pos) ) 

#define IAcadUnderlay_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadUnderlay_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadUnderlay_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadUnderlay_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadUnderlay_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadUnderlay_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadUnderlay_get_UnderlayName(This,Name)	\
    ( (This)->lpVtbl -> get_UnderlayName(This,Name) ) 

#define IAcadUnderlay_put_UnderlayName(This,Name)	\
    ( (This)->lpVtbl -> put_UnderlayName(This,Name) ) 

#define IAcadUnderlay_put_ItemName(This,sheetName)	\
    ( (This)->lpVtbl -> put_ItemName(This,sheetName) ) 

#define IAcadUnderlay_get_ItemName(This,sheetName)	\
    ( (This)->lpVtbl -> get_ItemName(This,sheetName) ) 

#define IAcadUnderlay_get_Monochrome(This,bMono)	\
    ( (This)->lpVtbl -> get_Monochrome(This,bMono) ) 

#define IAcadUnderlay_put_Monochrome(This,bMono)	\
    ( (This)->lpVtbl -> put_Monochrome(This,bMono) ) 

#define IAcadUnderlay_get_AdjustForBackground(This,value)	\
    ( (This)->lpVtbl -> get_AdjustForBackground(This,value) ) 

#define IAcadUnderlay_put_AdjustForBackground(This,value)	\
    ( (This)->lpVtbl -> put_AdjustForBackground(This,value) ) 

#define IAcadUnderlay_ClipBoundary(This,boundry)	\
    ( (This)->lpVtbl -> ClipBoundary(This,boundry) ) 

#define IAcadUnderlay_get_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scaleFactor) ) 

#define IAcadUnderlay_put_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scaleFactor) ) 

#define IAcadUnderlay_get_File(This,Name)	\
    ( (This)->lpVtbl -> get_File(This,Name) ) 

#define IAcadUnderlay_put_File(This,Name)	\
    ( (This)->lpVtbl -> put_File(This,Name) ) 

#define IAcadUnderlay_get_UnderlayVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> get_UnderlayVisibility(This,fVisible) ) 

#define IAcadUnderlay_put_UnderlayVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> put_UnderlayVisibility(This,fVisible) ) 

#define IAcadUnderlay_get_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> get_ClippingEnabled(This,kClip) ) 

#define IAcadUnderlay_put_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> put_ClippingEnabled(This,kClip) ) 

#define IAcadUnderlay_get_UnderlayLayerOverrideApplied(This,bOverride)	\
    ( (This)->lpVtbl -> get_UnderlayLayerOverrideApplied(This,bOverride) ) 

#define IAcadUnderlay_put_UnderlayLayerOverrideApplied(This,bOverride)	\
    ( (This)->lpVtbl -> put_UnderlayLayerOverrideApplied(This,bOverride) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadUnderlay_INTERFACE_DEFINED__ */


#ifndef __IAcadDwfUnderlay_INTERFACE_DEFINED__
#define __IAcadDwfUnderlay_INTERFACE_DEFINED__

/* interface IAcadDwfUnderlay */
/* [unique][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDwfUnderlay,0x22FE4523,0xB650,0x4DB4,0xAD,0x11,0x93,0x3C,0x9C,0x5E,0x56,0xB1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("22FE4523-B650-4DB4-AD11-933C9C5E56B1")
    IAcadDwfUnderlay : public IAcadUnderlay
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DWFFormat( 
            /* [retval][out] */ BSTR *Name) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DWFFormat( 
            /* [in] */ BSTR Name) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDwfUnderlayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDwfUnderlay * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDwfUnderlay * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDwfUnderlay * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDwfUnderlay * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDwfUnderlay * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDwfUnderlay * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDwfUnderlay * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDwfUnderlay * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDwfUnderlay * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDwfUnderlay * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDwfUnderlay * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDwfUnderlay * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDwfUnderlay * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDwfUnderlay * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDwfUnderlay * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDwfUnderlay * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDwfUnderlay * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDwfUnderlay * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Contrast )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ long *contrast);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Contrast )( 
            IAcadDwfUnderlay * This,
            /* [in] */ long contrast);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fade )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ long *fade);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fade )( 
            IAcadDwfUnderlay * This,
            /* [in] */ long fade);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Position )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT *pos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Position )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT pos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDwfUnderlay * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Width )( 
            IAcadDwfUnderlay * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Height )( 
            IAcadDwfUnderlay * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlayName )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnderlayName )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ItemName )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR sheetName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ItemName )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *sheetName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Monochrome )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *bMono);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Monochrome )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT_BOOL bMono);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdjustForBackground )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AdjustForBackground )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT_BOOL value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ClipBoundary )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT boundry);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDwfUnderlay * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_File )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_File )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlayVisibility )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *fVisible);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnderlayVisibility )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT_BOOL fVisible);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClippingEnabled )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ VARIANT_BOOL *kClip);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClippingEnabled )( 
            IAcadDwfUnderlay * This,
            /* [in] */ VARIANT_BOOL kClip);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlayLayerOverrideApplied )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ AcUnderlayLayerOverrideType *bOverride);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnderlayLayerOverrideApplied )( 
            IAcadDwfUnderlay * This,
            /* [in] */ AcUnderlayLayerOverrideType bOverride);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DWFFormat )( 
            IAcadDwfUnderlay * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DWFFormat )( 
            IAcadDwfUnderlay * This,
            /* [in] */ BSTR Name);
        
        END_INTERFACE
    } IAcadDwfUnderlayVtbl;

    interface IAcadDwfUnderlay
    {
        CONST_VTBL struct IAcadDwfUnderlayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDwfUnderlay_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDwfUnderlay_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDwfUnderlay_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDwfUnderlay_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDwfUnderlay_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDwfUnderlay_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDwfUnderlay_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDwfUnderlay_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDwfUnderlay_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDwfUnderlay_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDwfUnderlay_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDwfUnderlay_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDwfUnderlay_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDwfUnderlay_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDwfUnderlay_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDwfUnderlay_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDwfUnderlay_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDwfUnderlay_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDwfUnderlay_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDwfUnderlay_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDwfUnderlay_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDwfUnderlay_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDwfUnderlay_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDwfUnderlay_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDwfUnderlay_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDwfUnderlay_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDwfUnderlay_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDwfUnderlay_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDwfUnderlay_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDwfUnderlay_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDwfUnderlay_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDwfUnderlay_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDwfUnderlay_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDwfUnderlay_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDwfUnderlay_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDwfUnderlay_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDwfUnderlay_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDwfUnderlay_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDwfUnderlay_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDwfUnderlay_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDwfUnderlay_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDwfUnderlay_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDwfUnderlay_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDwfUnderlay_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDwfUnderlay_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDwfUnderlay_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDwfUnderlay_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDwfUnderlay_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDwfUnderlay_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDwfUnderlay_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDwfUnderlay_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDwfUnderlay_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDwfUnderlay_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDwfUnderlay_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDwfUnderlay_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDwfUnderlay_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDwfUnderlay_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDwfUnderlay_get_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> get_Contrast(This,contrast) ) 

#define IAcadDwfUnderlay_put_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> put_Contrast(This,contrast) ) 

#define IAcadDwfUnderlay_get_Fade(This,fade)	\
    ( (This)->lpVtbl -> get_Fade(This,fade) ) 

#define IAcadDwfUnderlay_put_Fade(This,fade)	\
    ( (This)->lpVtbl -> put_Fade(This,fade) ) 

#define IAcadDwfUnderlay_get_Position(This,pos)	\
    ( (This)->lpVtbl -> get_Position(This,pos) ) 

#define IAcadDwfUnderlay_put_Position(This,pos)	\
    ( (This)->lpVtbl -> put_Position(This,pos) ) 

#define IAcadDwfUnderlay_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDwfUnderlay_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDwfUnderlay_get_Width(This,width)	\
    ( (This)->lpVtbl -> get_Width(This,width) ) 

#define IAcadDwfUnderlay_put_Width(This,width)	\
    ( (This)->lpVtbl -> put_Width(This,width) ) 

#define IAcadDwfUnderlay_get_Height(This,height)	\
    ( (This)->lpVtbl -> get_Height(This,height) ) 

#define IAcadDwfUnderlay_put_Height(This,height)	\
    ( (This)->lpVtbl -> put_Height(This,height) ) 

#define IAcadDwfUnderlay_get_UnderlayName(This,Name)	\
    ( (This)->lpVtbl -> get_UnderlayName(This,Name) ) 

#define IAcadDwfUnderlay_put_UnderlayName(This,Name)	\
    ( (This)->lpVtbl -> put_UnderlayName(This,Name) ) 

#define IAcadDwfUnderlay_put_ItemName(This,sheetName)	\
    ( (This)->lpVtbl -> put_ItemName(This,sheetName) ) 

#define IAcadDwfUnderlay_get_ItemName(This,sheetName)	\
    ( (This)->lpVtbl -> get_ItemName(This,sheetName) ) 

#define IAcadDwfUnderlay_get_Monochrome(This,bMono)	\
    ( (This)->lpVtbl -> get_Monochrome(This,bMono) ) 

#define IAcadDwfUnderlay_put_Monochrome(This,bMono)	\
    ( (This)->lpVtbl -> put_Monochrome(This,bMono) ) 

#define IAcadDwfUnderlay_get_AdjustForBackground(This,value)	\
    ( (This)->lpVtbl -> get_AdjustForBackground(This,value) ) 

#define IAcadDwfUnderlay_put_AdjustForBackground(This,value)	\
    ( (This)->lpVtbl -> put_AdjustForBackground(This,value) ) 

#define IAcadDwfUnderlay_ClipBoundary(This,boundry)	\
    ( (This)->lpVtbl -> ClipBoundary(This,boundry) ) 

#define IAcadDwfUnderlay_get_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scaleFactor) ) 

#define IAcadDwfUnderlay_put_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scaleFactor) ) 

#define IAcadDwfUnderlay_get_File(This,Name)	\
    ( (This)->lpVtbl -> get_File(This,Name) ) 

#define IAcadDwfUnderlay_put_File(This,Name)	\
    ( (This)->lpVtbl -> put_File(This,Name) ) 

#define IAcadDwfUnderlay_get_UnderlayVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> get_UnderlayVisibility(This,fVisible) ) 

#define IAcadDwfUnderlay_put_UnderlayVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> put_UnderlayVisibility(This,fVisible) ) 

#define IAcadDwfUnderlay_get_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> get_ClippingEnabled(This,kClip) ) 

#define IAcadDwfUnderlay_put_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> put_ClippingEnabled(This,kClip) ) 

#define IAcadDwfUnderlay_get_UnderlayLayerOverrideApplied(This,bOverride)	\
    ( (This)->lpVtbl -> get_UnderlayLayerOverrideApplied(This,bOverride) ) 

#define IAcadDwfUnderlay_put_UnderlayLayerOverrideApplied(This,bOverride)	\
    ( (This)->lpVtbl -> put_UnderlayLayerOverrideApplied(This,bOverride) ) 


#define IAcadDwfUnderlay_get_DWFFormat(This,Name)	\
    ( (This)->lpVtbl -> get_DWFFormat(This,Name) ) 

#define IAcadDwfUnderlay_put_DWFFormat(This,Name)	\
    ( (This)->lpVtbl -> put_DWFFormat(This,Name) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDwfUnderlay_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDwfUnderlay,0x7EC3558C,0xE1A0,0x4E0B,0x92,0xBD,0x17,0xCE,0xA1,0x90,0x2A,0x6B);

#ifdef __cplusplus

class DECLSPEC_UUID("7EC3558C-E1A0-4E0B-92BD-17CEA1902A6B")
AcadDwfUnderlay;
#endif

DEFINE_GUID(CLSID_AcadDgnUnderlay,0x6FA2D697,0x24E2,0x46EF,0x94,0x1E,0x15,0xD4,0x01,0x9C,0xDB,0x8A);

#ifdef __cplusplus

class DECLSPEC_UUID("6FA2D697-24E2-46EF-941E-15D4019CDB8A")
AcadDgnUnderlay;
#endif

DEFINE_GUID(CLSID_AcadPdfUnderlay,0x2F256D6B,0x9FF7,0x4062,0xB7,0x13,0x4D,0xFD,0xE2,0x8C,0x4F,0xC9);

#ifdef __cplusplus

class DECLSPEC_UUID("2F256D6B-9FF7-4062-B713-4DFDE28C4FC9")
AcadPdfUnderlay;
#endif

DEFINE_GUID(CLSID_AcadSubEntity,0x7692C10F,0x3AA7,0x4F73,0xBE,0x25,0x08,0x5A,0x18,0xA1,0x40,0x66);

#ifdef __cplusplus

class DECLSPEC_UUID("7692C10F-3AA7-4F73-BE25-085A18A14066")
AcadSubEntity;
#endif

#ifndef __IAcadSubEntSolidFace_INTERFACE_DEFINED__
#define __IAcadSubEntSolidFace_INTERFACE_DEFINED__

/* interface IAcadSubEntSolidFace */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubEntSolidFace,0xCBB27EFD,0x4292,0x4DFB,0x98,0xF9,0x95,0x93,0xE3,0xD7,0xBC,0x6C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CBB27EFD-4292-4DFB-98F9-9593E3D7BC6C")
    IAcadSubEntSolidFace : public IAcadSubEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Material( 
            /* [retval][out] */ BSTR *Material) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Material( 
            /* [in] */ BSTR Material) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubEntSolidFaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubEntSolidFace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubEntSolidFace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubEntSolidFace * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubEntSolidFace * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubEntSolidFace * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubEntSolidFace * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubEntSolidFace * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubEntSolidFace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubEntSolidFace * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSubEntSolidFace * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSubEntSolidFace * This,
            /* [in] */ BSTR Material);
        
        END_INTERFACE
    } IAcadSubEntSolidFaceVtbl;

    interface IAcadSubEntSolidFace
    {
        CONST_VTBL struct IAcadSubEntSolidFaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubEntSolidFace_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubEntSolidFace_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubEntSolidFace_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubEntSolidFace_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubEntSolidFace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubEntSolidFace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubEntSolidFace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubEntSolidFace_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubEntSolidFace_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubEntSolidFace_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubEntSolidFace_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubEntSolidFace_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubEntSolidFace_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubEntSolidFace_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubEntSolidFace_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubEntSolidFace_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubEntSolidFace_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#define IAcadSubEntSolidFace_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSubEntSolidFace_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubEntSolidFace_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubEntSolidFace,0x6EA4F0E3,0x5198,0x43EB,0x90,0xDD,0xA0,0x1C,0x48,0x08,0xEC,0x44);

#ifdef __cplusplus

class DECLSPEC_UUID("6EA4F0E3-5198-43EB-90DD-A01C4808EC44")
AcadSubEntSolidFace;
#endif

#ifndef __IAcadSubEntSolidEdge_INTERFACE_DEFINED__
#define __IAcadSubEntSolidEdge_INTERFACE_DEFINED__

/* interface IAcadSubEntSolidEdge */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubEntSolidEdge,0x15CF0663,0x0E86,0x4628,0xB9,0xFE,0xDE,0xD3,0x2A,0x22,0xFA,0x10);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("15CF0663-0E86-4628-B9FE-DED32A22FA10")
    IAcadSubEntSolidEdge : public IAcadSubEntity
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubEntSolidEdgeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubEntSolidEdge * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubEntSolidEdge * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubEntSolidEdge * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubEntSolidEdge * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubEntSolidEdge * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubEntSolidEdge * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubEntSolidEdge * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubEntSolidEdge * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubEntSolidEdge * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubEntSolidEdge * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        END_INTERFACE
    } IAcadSubEntSolidEdgeVtbl;

    interface IAcadSubEntSolidEdge
    {
        CONST_VTBL struct IAcadSubEntSolidEdgeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubEntSolidEdge_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubEntSolidEdge_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubEntSolidEdge_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubEntSolidEdge_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubEntSolidEdge_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubEntSolidEdge_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubEntSolidEdge_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubEntSolidEdge_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubEntSolidEdge_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubEntSolidEdge_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubEntSolidEdge_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubEntSolidEdge_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubEntSolidEdge_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubEntSolidEdge_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubEntSolidEdge_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubEntSolidEdge_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubEntSolidEdge_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubEntSolidEdge_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubEntSolidEdge,0x6D445A1D,0x718B,0x4C13,0x86,0xF8,0xF9,0x54,0x1E,0x20,0xE0,0xED);

#ifdef __cplusplus

class DECLSPEC_UUID("6D445A1D-718B-4C13-86F8-F9541E20E0ED")
AcadSubEntSolidEdge;
#endif

#ifndef __IAcadSubEntSolidVertex_INTERFACE_DEFINED__
#define __IAcadSubEntSolidVertex_INTERFACE_DEFINED__

/* interface IAcadSubEntSolidVertex */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubEntSolidVertex,0x7DDA2E7F,0x17B8,0x468B,0xA8,0xD6,0x3D,0xE0,0x66,0xB3,0xCB,0x4C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7DDA2E7F-17B8-468B-A8D6-3DE066B3CB4C")
    IAcadSubEntSolidVertex : public IAcadSubEntity
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubEntSolidVertexVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubEntSolidVertex * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubEntSolidVertex * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubEntSolidVertex * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubEntSolidVertex * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubEntSolidVertex * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubEntSolidVertex * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubEntSolidVertex * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubEntSolidVertex * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubEntSolidVertex * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubEntSolidVertex * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        END_INTERFACE
    } IAcadSubEntSolidVertexVtbl;

    interface IAcadSubEntSolidVertex
    {
        CONST_VTBL struct IAcadSubEntSolidVertexVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubEntSolidVertex_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubEntSolidVertex_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubEntSolidVertex_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubEntSolidVertex_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubEntSolidVertex_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubEntSolidVertex_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubEntSolidVertex_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubEntSolidVertex_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubEntSolidVertex_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubEntSolidVertex_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubEntSolidVertex_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubEntSolidVertex_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubEntSolidVertex_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubEntSolidVertex_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubEntSolidVertex_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubEntSolidVertex_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubEntSolidVertex_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubEntSolidVertex_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubEntSolidVertex,0xA9C5C44C,0xE820,0x44EE,0x8F,0xAA,0xD2,0x3F,0x5D,0x06,0xCE,0x80);

#ifdef __cplusplus

class DECLSPEC_UUID("A9C5C44C-E820-44EE-8FAA-D23F5D06CE80")
AcadSubEntSolidVertex;
#endif

#ifndef __IAcadSubEntSolidNode_INTERFACE_DEFINED__
#define __IAcadSubEntSolidNode_INTERFACE_DEFINED__

/* interface IAcadSubEntSolidNode */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubEntSolidNode,0x2B120F0D,0x7F90,0x40E3,0xA9,0x1C,0x55,0x71,0x29,0x61,0x9D,0x2D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2B120F0D-7F90-40E3-A91C-557129619D2D")
    IAcadSubEntSolidNode : public IAcadSubEntity
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubEntSolidNodeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubEntSolidNode * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubEntSolidNode * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubEntSolidNode * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubEntSolidNode * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubEntSolidNode * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubEntSolidNode * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubEntSolidNode * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubEntSolidNode * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubEntSolidNode * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubEntSolidNode * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        END_INTERFACE
    } IAcadSubEntSolidNodeVtbl;

    interface IAcadSubEntSolidNode
    {
        CONST_VTBL struct IAcadSubEntSolidNodeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubEntSolidNode_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubEntSolidNode_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubEntSolidNode_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubEntSolidNode_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubEntSolidNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubEntSolidNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubEntSolidNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubEntSolidNode_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubEntSolidNode_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubEntSolidNode_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubEntSolidNode_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubEntSolidNode_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubEntSolidNode_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubEntSolidNode_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubEntSolidNode_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubEntSolidNode_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubEntSolidNode_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubEntSolidNode_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubEntSolidNode,0xE6FCE1EB,0x59C7,0x409A,0x9D,0xC3,0x0D,0x47,0x87,0xF3,0xD4,0x82);

#ifdef __cplusplus

class DECLSPEC_UUID("E6FCE1EB-59C7-409A-9DC3-0D4787F3D482")
AcadSubEntSolidNode;
#endif

#ifndef __IAcadWipeout_INTERFACE_DEFINED__
#define __IAcadWipeout_INTERFACE_DEFINED__

/* interface IAcadWipeout */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadWipeout,0x62B2E053,0xC836,0x4513,0xB0,0x7E,0x22,0xC1,0xF8,0xE7,0x82,0x36);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("62B2E053-C836-4513-B07E-22C1F8E78236")
    IAcadWipeout : public IAcadRasterImage
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAcadWipeoutVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadWipeout * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadWipeout * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadWipeout * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadWipeout * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadWipeout * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadWipeout * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadWipeout * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadWipeout * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadWipeout * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadWipeout * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadWipeout * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadWipeout * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadWipeout * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadWipeout * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadWipeout * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadWipeout * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadWipeout * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadWipeout * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadWipeout * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadWipeout * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadWipeout * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadWipeout * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadWipeout * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadWipeout * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadWipeout * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadWipeout * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadWipeout * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadWipeout * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadWipeout * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadWipeout * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadWipeout * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadWipeout * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadWipeout * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadWipeout * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadWipeout * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadWipeout * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadWipeout * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadWipeout * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Brightness )( 
            IAcadWipeout * This,
            /* [retval][out] */ long *brightness);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Brightness )( 
            IAcadWipeout * This,
            /* [in] */ long brightness);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Contrast )( 
            IAcadWipeout * This,
            /* [retval][out] */ long *contrast);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Contrast )( 
            IAcadWipeout * This,
            /* [in] */ long contrast);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fade )( 
            IAcadWipeout * This,
            /* [retval][out] */ long *fade);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fade )( 
            IAcadWipeout * This,
            /* [in] */ long fade);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT Origin);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadWipeout * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadWipeout * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageWidth )( 
            IAcadWipeout * This,
            /* [retval][out] */ double *width);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageWidth )( 
            IAcadWipeout * This,
            /* [in] */ double width);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageHeight )( 
            IAcadWipeout * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageHeight )( 
            IAcadWipeout * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadWipeout * This,
            /* [in] */ BSTR Name);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageFile )( 
            IAcadWipeout * This,
            /* [in] */ BSTR imageFileName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageFile )( 
            IAcadWipeout * This,
            /* [retval][out] */ BSTR *imageFileName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageVisibility )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT_BOOL *fVisible);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageVisibility )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT_BOOL fVisible);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClippingEnabled )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT_BOOL *kClip);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClippingEnabled )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT_BOOL kClip);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Transparency )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT_BOOL *bTransp);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Transparency )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT_BOOL bTransp);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ClipBoundary )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT boundry);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IAcadWipeout * This,
            /* [retval][out] */ double *pixelHeight);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IAcadWipeout * This,
            /* [retval][out] */ double *pixelWidth);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowRotation )( 
            IAcadWipeout * This,
            /* [retval][out] */ VARIANT_BOOL *bShow);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShowRotation )( 
            IAcadWipeout * This,
            /* [in] */ VARIANT_BOOL bShow);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadWipeout * This,
            /* [retval][out] */ ACAD_NOUNITS *scaleFactor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadWipeout * This,
            /* [in] */ ACAD_NOUNITS scaleFactor);
        
        END_INTERFACE
    } IAcadWipeoutVtbl;

    interface IAcadWipeout
    {
        CONST_VTBL struct IAcadWipeoutVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadWipeout_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadWipeout_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadWipeout_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadWipeout_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadWipeout_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadWipeout_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadWipeout_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadWipeout_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadWipeout_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadWipeout_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadWipeout_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadWipeout_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadWipeout_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadWipeout_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadWipeout_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadWipeout_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadWipeout_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadWipeout_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadWipeout_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadWipeout_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadWipeout_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadWipeout_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadWipeout_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadWipeout_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadWipeout_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadWipeout_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadWipeout_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadWipeout_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadWipeout_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadWipeout_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadWipeout_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadWipeout_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadWipeout_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadWipeout_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadWipeout_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadWipeout_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadWipeout_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadWipeout_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadWipeout_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadWipeout_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadWipeout_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadWipeout_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadWipeout_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadWipeout_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadWipeout_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadWipeout_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadWipeout_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadWipeout_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadWipeout_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadWipeout_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadWipeout_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadWipeout_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadWipeout_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadWipeout_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadWipeout_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadWipeout_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadWipeout_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadWipeout_get_Brightness(This,brightness)	\
    ( (This)->lpVtbl -> get_Brightness(This,brightness) ) 

#define IAcadWipeout_put_Brightness(This,brightness)	\
    ( (This)->lpVtbl -> put_Brightness(This,brightness) ) 

#define IAcadWipeout_get_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> get_Contrast(This,contrast) ) 

#define IAcadWipeout_put_Contrast(This,contrast)	\
    ( (This)->lpVtbl -> put_Contrast(This,contrast) ) 

#define IAcadWipeout_get_Fade(This,fade)	\
    ( (This)->lpVtbl -> get_Fade(This,fade) ) 

#define IAcadWipeout_put_Fade(This,fade)	\
    ( (This)->lpVtbl -> put_Fade(This,fade) ) 

#define IAcadWipeout_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadWipeout_put_Origin(This,Origin)	\
    ( (This)->lpVtbl -> put_Origin(This,Origin) ) 

#define IAcadWipeout_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadWipeout_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadWipeout_get_ImageWidth(This,width)	\
    ( (This)->lpVtbl -> get_ImageWidth(This,width) ) 

#define IAcadWipeout_put_ImageWidth(This,width)	\
    ( (This)->lpVtbl -> put_ImageWidth(This,width) ) 

#define IAcadWipeout_get_ImageHeight(This,height)	\
    ( (This)->lpVtbl -> get_ImageHeight(This,height) ) 

#define IAcadWipeout_put_ImageHeight(This,height)	\
    ( (This)->lpVtbl -> put_ImageHeight(This,height) ) 

#define IAcadWipeout_get_Name(This,Name)	\
    ( (This)->lpVtbl -> get_Name(This,Name) ) 

#define IAcadWipeout_put_Name(This,Name)	\
    ( (This)->lpVtbl -> put_Name(This,Name) ) 

#define IAcadWipeout_put_ImageFile(This,imageFileName)	\
    ( (This)->lpVtbl -> put_ImageFile(This,imageFileName) ) 

#define IAcadWipeout_get_ImageFile(This,imageFileName)	\
    ( (This)->lpVtbl -> get_ImageFile(This,imageFileName) ) 

#define IAcadWipeout_get_ImageVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> get_ImageVisibility(This,fVisible) ) 

#define IAcadWipeout_put_ImageVisibility(This,fVisible)	\
    ( (This)->lpVtbl -> put_ImageVisibility(This,fVisible) ) 

#define IAcadWipeout_get_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> get_ClippingEnabled(This,kClip) ) 

#define IAcadWipeout_put_ClippingEnabled(This,kClip)	\
    ( (This)->lpVtbl -> put_ClippingEnabled(This,kClip) ) 

#define IAcadWipeout_get_Transparency(This,bTransp)	\
    ( (This)->lpVtbl -> get_Transparency(This,bTransp) ) 

#define IAcadWipeout_put_Transparency(This,bTransp)	\
    ( (This)->lpVtbl -> put_Transparency(This,bTransp) ) 

#define IAcadWipeout_ClipBoundary(This,boundry)	\
    ( (This)->lpVtbl -> ClipBoundary(This,boundry) ) 

#define IAcadWipeout_get_Height(This,pixelHeight)	\
    ( (This)->lpVtbl -> get_Height(This,pixelHeight) ) 

#define IAcadWipeout_get_Width(This,pixelWidth)	\
    ( (This)->lpVtbl -> get_Width(This,pixelWidth) ) 

#define IAcadWipeout_get_ShowRotation(This,bShow)	\
    ( (This)->lpVtbl -> get_ShowRotation(This,bShow) ) 

#define IAcadWipeout_put_ShowRotation(This,bShow)	\
    ( (This)->lpVtbl -> put_ShowRotation(This,bShow) ) 

#define IAcadWipeout_get_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,scaleFactor) ) 

#define IAcadWipeout_put_ScaleFactor(This,scaleFactor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,scaleFactor) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadWipeout_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadWipeout,0x264A30A0,0x3779,0x4244,0x85,0x8E,0xDF,0x0B,0xB3,0x1B,0x52,0x5C);

#ifdef __cplusplus

class DECLSPEC_UUID("264A30A0-3779-4244-858E-DF0BB31B525C")
AcadWipeout;
#endif

#ifndef __IAcadSubDMesh_INTERFACE_DEFINED__
#define __IAcadSubDMesh_INTERFACE_DEFINED__

/* interface IAcadSubDMesh */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubDMesh,0x0198A43F,0x876E,0x418c,0xBF,0xDD,0x84,0x1E,0xD6,0x1B,0x88,0xE8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0198A43F-876E-418c-BFDD-841ED61B88E8")
    IAcadSubDMesh : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Smoothness( 
            /* [retval][out] */ int *level) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Smoothness( 
            /* [in] */ int level) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT corners) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinate( 
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinate( 
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexCount( 
            /* [retval][out] */ int *count) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FaceCount( 
            /* [retval][out] */ int *count) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubDMeshVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubDMesh * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubDMesh * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubDMesh * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubDMesh * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubDMesh * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubDMesh * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubDMesh * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadSubDMesh * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadSubDMesh * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadSubDMesh * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadSubDMesh * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadSubDMesh * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadSubDMesh * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadSubDMesh * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadSubDMesh * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadSubDMesh * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadSubDMesh * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadSubDMesh * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadSubDMesh * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadSubDMesh * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadSubDMesh * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSubDMesh * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubDMesh * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Smoothness )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ int *level);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Smoothness )( 
            IAcadSubDMesh * This,
            /* [in] */ int level);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ VARIANT *corners);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadSubDMesh * This,
            /* [in] */ VARIANT corners);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinate )( 
            IAcadSubDMesh * This,
            /* [in] */ int Index,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinate )( 
            IAcadSubDMesh * This,
            /* [in] */ int Index,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VertexCount )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ int *count);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FaceCount )( 
            IAcadSubDMesh * This,
            /* [retval][out] */ int *count);
        
        END_INTERFACE
    } IAcadSubDMeshVtbl;

    interface IAcadSubDMesh
    {
        CONST_VTBL struct IAcadSubDMeshVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubDMesh_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubDMesh_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubDMesh_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubDMesh_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubDMesh_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubDMesh_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubDMesh_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubDMesh_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadSubDMesh_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubDMesh_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadSubDMesh_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadSubDMesh_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadSubDMesh_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadSubDMesh_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadSubDMesh_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadSubDMesh_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadSubDMesh_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadSubDMesh_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadSubDMesh_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadSubDMesh_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadSubDMesh_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadSubDMesh_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadSubDMesh_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadSubDMesh_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadSubDMesh_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubDMesh_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadSubDMesh_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubDMesh_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadSubDMesh_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubDMesh_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadSubDMesh_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadSubDMesh_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadSubDMesh_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadSubDMesh_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadSubDMesh_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadSubDMesh_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadSubDMesh_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadSubDMesh_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadSubDMesh_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadSubDMesh_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadSubDMesh_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadSubDMesh_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadSubDMesh_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadSubDMesh_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadSubDMesh_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadSubDMesh_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadSubDMesh_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubDMesh_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadSubDMesh_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubDMesh_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadSubDMesh_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadSubDMesh_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSubDMesh_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSubDMesh_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadSubDMesh_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadSubDMesh_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadSubDMesh_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadSubDMesh_get_Smoothness(This,level)	\
    ( (This)->lpVtbl -> get_Smoothness(This,level) ) 

#define IAcadSubDMesh_put_Smoothness(This,level)	\
    ( (This)->lpVtbl -> put_Smoothness(This,level) ) 

#define IAcadSubDMesh_get_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> get_Coordinates(This,corners) ) 

#define IAcadSubDMesh_put_Coordinates(This,corners)	\
    ( (This)->lpVtbl -> put_Coordinates(This,corners) ) 

#define IAcadSubDMesh_get_Coordinate(This,Index,pVal)	\
    ( (This)->lpVtbl -> get_Coordinate(This,Index,pVal) ) 

#define IAcadSubDMesh_put_Coordinate(This,Index,newVal)	\
    ( (This)->lpVtbl -> put_Coordinate(This,Index,newVal) ) 

#define IAcadSubDMesh_get_VertexCount(This,count)	\
    ( (This)->lpVtbl -> get_VertexCount(This,count) ) 

#define IAcadSubDMesh_get_FaceCount(This,count)	\
    ( (This)->lpVtbl -> get_FaceCount(This,count) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubDMesh_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubDMesh,0xF1D4AB28,0xA403,0x4FFB,0xB7,0x3A,0x1F,0x67,0xDD,0xBE,0x69,0x6A);

#ifdef __cplusplus

class DECLSPEC_UUID("F1D4AB28-A403-4FFB-B73A-1F67DDBE696A")
AcadSubDMesh;
#endif

#ifndef __IAcadSubDMeshFace_INTERFACE_DEFINED__
#define __IAcadSubDMeshFace_INTERFACE_DEFINED__

/* interface IAcadSubDMeshFace */
/* [unique][helpcontext][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubDMeshFace,0xB47B379F,0x4F9F,0x4347,0xBE,0x75,0xBC,0x06,0x2D,0x81,0x2C,0x99);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B47B379F-4F9F-4347-BE75-BC062D812C99")
    IAcadSubDMeshFace : public IAcadSubEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Material( 
            /* [retval][out] */ BSTR *Material) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Material( 
            /* [in] */ BSTR Material) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreaseType( 
            /* [retval][out] */ AcMeshCreaseType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreaseType( 
            /* [in] */ AcMeshCreaseType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreaseLevel( 
            /* [retval][out] */ double *level) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreaseLevel( 
            /* [in] */ double level) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubDMeshFaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubDMeshFace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubDMeshFace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubDMeshFace * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubDMeshFace * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubDMeshFace * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubDMeshFace * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubDMeshFace * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubDMeshFace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubDMeshFace * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadSubDMeshFace * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CreaseType )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ AcMeshCreaseType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CreaseType )( 
            IAcadSubDMeshFace * This,
            /* [in] */ AcMeshCreaseType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CreaseLevel )( 
            IAcadSubDMeshFace * This,
            /* [retval][out] */ double *level);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CreaseLevel )( 
            IAcadSubDMeshFace * This,
            /* [in] */ double level);
        
        END_INTERFACE
    } IAcadSubDMeshFaceVtbl;

    interface IAcadSubDMeshFace
    {
        CONST_VTBL struct IAcadSubDMeshFaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubDMeshFace_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubDMeshFace_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubDMeshFace_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubDMeshFace_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubDMeshFace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubDMeshFace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubDMeshFace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubDMeshFace_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubDMeshFace_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubDMeshFace_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubDMeshFace_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubDMeshFace_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubDMeshFace_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubDMeshFace_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubDMeshFace_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubDMeshFace_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubDMeshFace_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#define IAcadSubDMeshFace_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadSubDMeshFace_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadSubDMeshFace_get_CreaseType(This,type)	\
    ( (This)->lpVtbl -> get_CreaseType(This,type) ) 

#define IAcadSubDMeshFace_put_CreaseType(This,type)	\
    ( (This)->lpVtbl -> put_CreaseType(This,type) ) 

#define IAcadSubDMeshFace_get_CreaseLevel(This,level)	\
    ( (This)->lpVtbl -> get_CreaseLevel(This,level) ) 

#define IAcadSubDMeshFace_put_CreaseLevel(This,level)	\
    ( (This)->lpVtbl -> put_CreaseLevel(This,level) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubDMeshFace_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubDMeshFace,0xF2136C59,0x8155,0x45D9,0xB0,0xFB,0xC5,0xA8,0xA8,0x84,0x64,0x7A);

#ifdef __cplusplus

class DECLSPEC_UUID("F2136C59-8155-45D9-B0FB-C5A8A884647A")
AcadSubDMeshFace;
#endif

#ifndef __IAcadSubDMeshEdge_INTERFACE_DEFINED__
#define __IAcadSubDMeshEdge_INTERFACE_DEFINED__

/* interface IAcadSubDMeshEdge */
/* [unique][helpcontext][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubDMeshEdge,0x3BD0F0E6,0x3766,0x4aae,0xBD,0x35,0x1F,0xAC,0x7D,0x82,0x21,0x5D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3BD0F0E6-3766-4aae-BD35-1FAC7D82215D")
    IAcadSubDMeshEdge : public IAcadSubEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreaseType( 
            /* [retval][out] */ AcMeshCreaseType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreaseType( 
            /* [in] */ AcMeshCreaseType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreaseLevel( 
            /* [retval][out] */ double *level) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreaseLevel( 
            /* [in] */ double level) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubDMeshEdgeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubDMeshEdge * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubDMeshEdge * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubDMeshEdge * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubDMeshEdge * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CreaseType )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ AcMeshCreaseType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CreaseType )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ AcMeshCreaseType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CreaseLevel )( 
            IAcadSubDMeshEdge * This,
            /* [retval][out] */ double *level);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CreaseLevel )( 
            IAcadSubDMeshEdge * This,
            /* [in] */ double level);
        
        END_INTERFACE
    } IAcadSubDMeshEdgeVtbl;

    interface IAcadSubDMeshEdge
    {
        CONST_VTBL struct IAcadSubDMeshEdgeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubDMeshEdge_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubDMeshEdge_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubDMeshEdge_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubDMeshEdge_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubDMeshEdge_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubDMeshEdge_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubDMeshEdge_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubDMeshEdge_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubDMeshEdge_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubDMeshEdge_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubDMeshEdge_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubDMeshEdge_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubDMeshEdge_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubDMeshEdge_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubDMeshEdge_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubDMeshEdge_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubDMeshEdge_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#define IAcadSubDMeshEdge_get_CreaseType(This,type)	\
    ( (This)->lpVtbl -> get_CreaseType(This,type) ) 

#define IAcadSubDMeshEdge_put_CreaseType(This,type)	\
    ( (This)->lpVtbl -> put_CreaseType(This,type) ) 

#define IAcadSubDMeshEdge_get_CreaseLevel(This,level)	\
    ( (This)->lpVtbl -> get_CreaseLevel(This,level) ) 

#define IAcadSubDMeshEdge_put_CreaseLevel(This,level)	\
    ( (This)->lpVtbl -> put_CreaseLevel(This,level) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubDMeshEdge_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubDMeshEdge,0xA0291F02,0xC52F,0x4521,0x92,0x5D,0x9B,0xED,0x61,0x01,0xD2,0xB5);

#ifdef __cplusplus

class DECLSPEC_UUID("A0291F02-C52F-4521-925D-9BED6101D2B5")
AcadSubDMeshEdge;
#endif

#ifndef __IAcadSubDMeshVertex_INTERFACE_DEFINED__
#define __IAcadSubDMeshVertex_INTERFACE_DEFINED__

/* interface IAcadSubDMeshVertex */
/* [unique][helpcontext][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSubDMeshVertex,0x8D839860,0x8124,0x4a1d,0xB2,0x15,0xCD,0x7B,0xE0,0xCF,0x71,0x20);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8D839860-8124-4a1d-B215-CD7BE0CF7120")
    IAcadSubDMeshVertex : public IAcadSubEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Coordinates( 
            /* [retval][out] */ VARIANT *coord) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Coordinates( 
            /* [in] */ VARIANT coord) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreaseType( 
            /* [retval][out] */ AcMeshCreaseType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreaseType( 
            /* [in] */ AcMeshCreaseType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreaseLevel( 
            /* [retval][out] */ double *level) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreaseLevel( 
            /* [in] */ double level) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSubDMeshVertexVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSubDMeshVertex * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSubDMeshVertex * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSubDMeshVertex * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [nonbrowsable][id] */ HRESULT ( STDMETHODCALLTYPE *OnModified )( 
            IAcadSubDMeshVertex * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Coordinates )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ VARIANT *coord);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Coordinates )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ VARIANT coord);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CreaseType )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ AcMeshCreaseType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CreaseType )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ AcMeshCreaseType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CreaseLevel )( 
            IAcadSubDMeshVertex * This,
            /* [retval][out] */ double *level);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CreaseLevel )( 
            IAcadSubDMeshVertex * This,
            /* [in] */ double level);
        
        END_INTERFACE
    } IAcadSubDMeshVertexVtbl;

    interface IAcadSubDMeshVertex
    {
        CONST_VTBL struct IAcadSubDMeshVertexVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSubDMeshVertex_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSubDMeshVertex_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSubDMeshVertex_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSubDMeshVertex_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSubDMeshVertex_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSubDMeshVertex_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSubDMeshVertex_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSubDMeshVertex_OnModified(This)	\
    ( (This)->lpVtbl -> OnModified(This) ) 

#define IAcadSubDMeshVertex_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadSubDMeshVertex_get_Color(This,pColor)	\
    ( (This)->lpVtbl -> get_Color(This,pColor) ) 

#define IAcadSubDMeshVertex_put_Color(This,pColor)	\
    ( (This)->lpVtbl -> put_Color(This,pColor) ) 

#define IAcadSubDMeshVertex_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadSubDMeshVertex_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadSubDMeshVertex_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadSubDMeshVertex_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadSubDMeshVertex_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadSubDMeshVertex_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 


#define IAcadSubDMeshVertex_get_Coordinates(This,coord)	\
    ( (This)->lpVtbl -> get_Coordinates(This,coord) ) 

#define IAcadSubDMeshVertex_put_Coordinates(This,coord)	\
    ( (This)->lpVtbl -> put_Coordinates(This,coord) ) 

#define IAcadSubDMeshVertex_get_CreaseType(This,type)	\
    ( (This)->lpVtbl -> get_CreaseType(This,type) ) 

#define IAcadSubDMeshVertex_put_CreaseType(This,type)	\
    ( (This)->lpVtbl -> put_CreaseType(This,type) ) 

#define IAcadSubDMeshVertex_get_CreaseLevel(This,level)	\
    ( (This)->lpVtbl -> get_CreaseLevel(This,level) ) 

#define IAcadSubDMeshVertex_put_CreaseLevel(This,level)	\
    ( (This)->lpVtbl -> put_CreaseLevel(This,level) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSubDMeshVertex_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSubDMeshVertex,0xBA5E6315,0x1CCB,0x420A,0x89,0xE7,0xB2,0x0A,0x7C,0xF9,0xF8,0x22);

#ifdef __cplusplus

class DECLSPEC_UUID("BA5E6315-1CCB-420A-89E7-B20A7CF9F822")
AcadSubDMeshVertex;
#endif

#ifndef __IAcadDimension_INTERFACE_DEFINED__
#define __IAcadDimension_INTERFACE_DEFINED__

/* interface IAcadDimension */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimension,0x70A7C241,0xF067,0x4BBA,0x8B,0x62,0x4A,0x69,0xB9,0xA0,0x88,0x45);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("70A7C241-F067-4BBA-8B62-4A69B9A08845")
    IAcadDimension : public IAcadEntity
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Normal( 
            /* [retval][out] */ VARIANT *normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Normal( 
            /* [in] */ VARIANT normal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextPosition( 
            /* [retval][out] */ VARIANT *textPos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextPosition( 
            /* [in] */ VARIANT textPos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextRotation( 
            /* [retval][out] */ ACAD_ANGLE *rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextRotation( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOverride( 
            /* [retval][out] */ BSTR *bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOverride( 
            /* [in] */ BSTR bstrText) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextColor( 
            /* [retval][out] */ ACAD_COLOR *Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextColor( 
            /* [in] */ ACAD_COLOR Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DecimalSeparator( 
            /* [retval][out] */ BSTR *character) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DecimalSeparator( 
            /* [in] */ BSTR character) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextGap( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextGap( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextPrefix( 
            /* [retval][out] */ BSTR *prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextPrefix( 
            /* [in] */ BSTR prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ScaleFactor( 
            /* [in] */ ACAD_NOUNITS factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalTextPosition( 
            /* [retval][out] */ AcDimVerticalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalTextPosition( 
            /* [in] */ AcDimVerticalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TolerancePrecision( 
            /* [in] */ AcDimPrecision precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceHeightScale( 
            /* [retval][out] */ ACAD_NOUNITS *scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceHeightScale( 
            /* [in] */ ACAD_NOUNITS scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceLowerLimit( 
            /* [retval][out] */ double *lower) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceLowerLimit( 
            /* [in] */ double lower) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextMovement( 
            /* [retval][out] */ AcDimTextMovement *move) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextMovement( 
            /* [in] */ AcDimTextMovement move) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceDisplay( 
            /* [retval][out] */ AcDimToleranceMethod *method) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceDisplay( 
            /* [in] */ AcDimToleranceMethod method) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceJustification( 
            /* [retval][out] */ AcDimToleranceJustify *method) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceJustification( 
            /* [in] */ AcDimToleranceJustify method) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceUpperLimit( 
            /* [retval][out] */ double *upper) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceUpperLimit( 
            /* [in] */ double upper) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextStyle( 
            /* [retval][out] */ BSTR *style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextStyle( 
            /* [in] */ BSTR style) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextHeight( 
            /* [retval][out] */ double *height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextHeight( 
            /* [in] */ double height) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextFill( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextFill( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextFillColor( 
            /* [retval][out] */ ACAD_COLOR *Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextFillColor( 
            /* [in] */ ACAD_COLOR Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimTxtDirection( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimTxtDirection( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimension * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimension * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimension * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimension * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimension * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimension * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimension * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimension * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimension * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimension * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimension * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimension * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimension * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimension * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimension * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimension * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimension * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimension * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimension * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimension * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimension * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimension * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimension * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimension * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimension * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimension * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimension * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimension * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimension * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimension * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimension * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimension * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimension * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimension * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimension * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimension * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimension * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimension * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimension * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimension * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimension * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimension * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimension * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimension * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimension * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimension * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimension * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimension * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimension * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimension * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimension * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimension * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimension * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimension * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimension * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimension * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimension * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimension * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimension * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimension * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimension * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimension * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimension * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimension * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimension * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimension * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimension * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimension * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimension * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimension * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimension * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimension * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimension * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimension * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimension * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimension * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimension * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimension * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimension * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        END_INTERFACE
    } IAcadDimensionVtbl;

    interface IAcadDimension
    {
        CONST_VTBL struct IAcadDimensionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimension_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimension_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimension_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimension_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimension_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimension_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimension_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimension_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimension_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimension_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimension_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimension_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimension_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimension_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimension_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimension_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimension_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimension_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimension_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimension_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimension_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimension_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimension_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimension_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimension_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimension_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimension_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimension_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimension_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimension_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimension_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimension_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimension_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimension_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimension_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimension_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimension_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimension_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimension_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimension_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimension_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimension_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimension_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimension_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimension_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimension_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimension_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimension_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimension_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimension_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimension_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimension_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimension_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimension_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimension_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimension_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimension_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimension_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimension_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimension_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimension_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimension_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimension_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimension_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimension_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimension_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimension_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimension_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimension_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimension_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimension_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimension_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimension_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimension_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimension_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimension_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimension_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimension_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimension_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimension_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimension_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimension_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimension_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimension_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimension_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimension_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimension_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimension_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimension_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimension_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimension_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimension_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimension_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimension_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimension_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimension_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimension_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimension_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimension_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimension_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimension_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimension_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimension_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimension_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimension_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimension_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimension_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimension_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimension_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimension_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimension_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimension_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDimension_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimension,0x3ACEB335,0x09B8,0x4843,0xBA,0x8C,0x15,0x03,0x6F,0x91,0xE5,0x55);

#ifdef __cplusplus

class DECLSPEC_UUID("3ACEB335-09B8-4843-BA8C-15036F91E555")
AcadDimension;
#endif

#ifndef __IAcadDimAligned_INTERFACE_DEFINED__
#define __IAcadDimAligned_INTERFACE_DEFINED__

/* interface IAcadDimAligned */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimAligned,0x528DF772,0xD0A1,0x4D34,0x95,0xA2,0xE6,0x43,0xE3,0x9A,0x65,0x37);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("528DF772-D0A1-4D34-95A2-E643E39A6537")
    IAcadDimAligned : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Point( 
            /* [retval][out] */ VARIANT *xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Point( 
            /* [in] */ VARIANT xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Point( 
            /* [retval][out] */ VARIANT *xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Point( 
            /* [in] */ VARIANT xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineColor( 
            /* [in] */ ACAD_COLOR Color) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalTextPosition( 
            /* [retval][out] */ AcDimHorizontalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalTextPosition( 
            /* [in] */ AcDimHorizontalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineOffset( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineOffset( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLenSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLenSuppress( 
            /* [in] */ VARIANT_BOOL bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLen( 
            /* [retval][out] */ double *FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLen( 
            /* [in] */ double FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrForm( 
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrForm( 
            /* [in] */ VARIANT_BOOL bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrReference( 
            /* [retval][out] */ VARIANT_BOOL *bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrReference( 
            /* [in] */ VARIANT_BOOL bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrExpression( 
            /* [retval][out] */ BSTR *bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrExpression( 
            /* [in] */ BSTR bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrValue( 
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrValue( 
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrDesc( 
            /* [retval][out] */ BSTR *bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrDesc( 
            /* [in] */ BSTR bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimAlignedVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimAligned * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimAligned * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimAligned * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimAligned * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimAligned * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimAligned * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimAligned * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimAligned * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimAligned * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimAligned * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimAligned * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimAligned * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimAligned * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimAligned * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimAligned * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimAligned * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimAligned * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimAligned * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimAligned * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimAligned * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimAligned * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimAligned * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimAligned * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimAligned * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Point )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT *xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Point )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Point )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT *xLine2Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Point )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT xLine2Point);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimAligned * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineColor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineColor )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineExtend )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineExtend )( 
            IAcadDimAligned * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineExtend )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineExtend )( 
            IAcadDimAligned * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalTextPosition )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimHorizontalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalTextPosition )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimHorizontalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineWeight )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_LWEIGHT *lweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineWeight )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_LWEIGHT lweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimAligned * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine1Suppress )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine1Suppress )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine2Suppress )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine2Suppress )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Suppress )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Suppress )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Suppress )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Suppress )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineInside )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineInside )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineOffset )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineOffset )( 
            IAcadDimAligned * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimAligned * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimAligned * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimAligned * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Type )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Type )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Type )( 
            IAcadDimAligned * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Type )( 
            IAcadDimAligned * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Block )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Block )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Block )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Block )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Linetype )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Linetype )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Linetype )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Linetype )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLenSuppress )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLenSuppress )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLen )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLen )( 
            IAcadDimAligned * This,
            /* [in] */ double FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrForm )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrForm )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrReference )( 
            IAcadDimAligned * This,
            /* [retval][out] */ VARIANT_BOOL *bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrReference )( 
            IAcadDimAligned * This,
            /* [in] */ VARIANT_BOOL bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrName )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrName )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrExpression )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrExpression )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrValue )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrValue )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrDesc )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrDesc )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsSuffix )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsSuffix )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsFactor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsFactor )( 
            IAcadDimAligned * This,
            /* [in] */ double factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsSuffix )( 
            IAcadDimAligned * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsSuffix )( 
            IAcadDimAligned * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsFactor )( 
            IAcadDimAligned * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsFactor )( 
            IAcadDimAligned * This,
            /* [in] */ double factor);
        
        END_INTERFACE
    } IAcadDimAlignedVtbl;

    interface IAcadDimAligned
    {
        CONST_VTBL struct IAcadDimAlignedVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimAligned_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimAligned_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimAligned_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimAligned_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimAligned_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimAligned_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimAligned_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimAligned_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimAligned_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimAligned_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimAligned_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimAligned_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimAligned_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimAligned_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimAligned_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimAligned_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimAligned_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimAligned_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimAligned_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimAligned_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimAligned_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimAligned_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimAligned_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimAligned_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimAligned_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimAligned_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimAligned_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimAligned_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimAligned_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimAligned_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimAligned_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimAligned_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimAligned_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimAligned_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimAligned_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimAligned_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimAligned_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimAligned_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimAligned_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimAligned_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimAligned_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimAligned_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimAligned_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimAligned_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimAligned_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimAligned_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimAligned_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimAligned_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimAligned_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimAligned_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimAligned_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimAligned_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimAligned_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimAligned_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimAligned_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimAligned_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimAligned_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimAligned_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimAligned_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimAligned_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimAligned_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimAligned_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimAligned_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimAligned_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimAligned_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimAligned_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimAligned_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimAligned_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimAligned_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimAligned_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimAligned_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimAligned_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimAligned_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimAligned_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimAligned_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimAligned_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimAligned_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimAligned_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimAligned_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimAligned_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimAligned_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimAligned_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimAligned_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimAligned_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimAligned_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimAligned_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimAligned_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimAligned_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimAligned_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimAligned_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimAligned_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimAligned_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimAligned_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimAligned_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimAligned_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimAligned_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimAligned_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimAligned_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimAligned_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimAligned_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimAligned_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimAligned_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimAligned_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimAligned_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimAligned_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimAligned_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimAligned_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimAligned_get_ExtLine1Point(This,xLine1Point)	\
    ( (This)->lpVtbl -> get_ExtLine1Point(This,xLine1Point) ) 

#define IAcadDimAligned_put_ExtLine1Point(This,xLine1Point)	\
    ( (This)->lpVtbl -> put_ExtLine1Point(This,xLine1Point) ) 

#define IAcadDimAligned_get_ExtLine2Point(This,xLine2Point)	\
    ( (This)->lpVtbl -> get_ExtLine2Point(This,xLine2Point) ) 

#define IAcadDimAligned_put_ExtLine2Point(This,xLine2Point)	\
    ( (This)->lpVtbl -> put_ExtLine2Point(This,xLine2Point) ) 

#define IAcadDimAligned_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimAligned_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimAligned_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimAligned_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimAligned_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimAligned_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimAligned_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimAligned_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimAligned_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimAligned_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimAligned_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimAligned_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimAligned_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimAligned_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimAligned_get_AltTextSuffix(This,Suffix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Suffix) ) 

#define IAcadDimAligned_put_AltTextSuffix(This,Suffix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Suffix) ) 

#define IAcadDimAligned_get_DimensionLineColor(This,Color)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Color) ) 

#define IAcadDimAligned_put_DimensionLineColor(This,Color)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Color) ) 

#define IAcadDimAligned_get_ExtensionLineColor(This,Color)	\
    ( (This)->lpVtbl -> get_ExtensionLineColor(This,Color) ) 

#define IAcadDimAligned_put_ExtensionLineColor(This,Color)	\
    ( (This)->lpVtbl -> put_ExtensionLineColor(This,Color) ) 

#define IAcadDimAligned_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimAligned_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimAligned_get_DimensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_DimensionLineExtend(This,extend) ) 

#define IAcadDimAligned_put_DimensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_DimensionLineExtend(This,extend) ) 

#define IAcadDimAligned_get_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_ExtensionLineExtend(This,extend) ) 

#define IAcadDimAligned_put_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_ExtensionLineExtend(This,extend) ) 

#define IAcadDimAligned_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimAligned_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimAligned_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimAligned_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimAligned_get_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_HorizontalTextPosition(This,type) ) 

#define IAcadDimAligned_put_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_HorizontalTextPosition(This,type) ) 

#define IAcadDimAligned_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimAligned_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimAligned_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimAligned_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimAligned_get_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> get_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimAligned_put_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> put_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimAligned_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimAligned_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimAligned_get_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimAligned_put_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimAligned_get_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimAligned_put_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimAligned_get_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimAligned_put_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimAligned_get_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimAligned_put_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimAligned_get_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_DimLineInside(This,bInside) ) 

#define IAcadDimAligned_put_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_DimLineInside(This,bInside) ) 

#define IAcadDimAligned_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimAligned_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimAligned_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimAligned_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimAligned_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimAligned_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimAligned_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimAligned_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimAligned_get_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> get_ExtensionLineOffset(This,offset) ) 

#define IAcadDimAligned_put_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> put_ExtensionLineOffset(This,offset) ) 

#define IAcadDimAligned_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAligned_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAligned_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimAligned_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimAligned_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimAligned_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimAligned_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimAligned_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimAligned_get_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead1Type(This,Type) ) 

#define IAcadDimAligned_put_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead1Type(This,Type) ) 

#define IAcadDimAligned_get_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead2Type(This,Type) ) 

#define IAcadDimAligned_put_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead2Type(This,Type) ) 

#define IAcadDimAligned_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimAligned_get_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimAligned_put_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimAligned_get_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimAligned_put_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimAligned_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimAligned_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDimAligned_get_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimAligned_put_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimAligned_get_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimAligned_put_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimAligned_get_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimAligned_put_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimAligned_get_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimAligned_put_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimAligned_get_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> get_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimAligned_put_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> put_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimAligned_get_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> get_DimConstrReference(This,bIsReference) ) 

#define IAcadDimAligned_put_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> put_DimConstrReference(This,bIsReference) ) 

#define IAcadDimAligned_get_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> get_DimConstrName(This,bstrName) ) 

#define IAcadDimAligned_put_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> put_DimConstrName(This,bstrName) ) 

#define IAcadDimAligned_get_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> get_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimAligned_put_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> put_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimAligned_get_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> get_DimConstrValue(This,value) ) 

#define IAcadDimAligned_put_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> put_DimConstrValue(This,value) ) 

#define IAcadDimAligned_get_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> get_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimAligned_put_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> put_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimAligned_get_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimAligned_put_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimAligned_get_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_SubUnitsFactor(This,factor) ) 

#define IAcadDimAligned_put_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_SubUnitsFactor(This,factor) ) 

#define IAcadDimAligned_get_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimAligned_put_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimAligned_get_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_AltSubUnitsFactor(This,factor) ) 

#define IAcadDimAligned_put_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_AltSubUnitsFactor(This,factor) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltTolerancePrecision_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimPrecision Distance);


void __RPC_STUB IAcadDimAligned_put_AltTolerancePrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltUnitsFormat_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimUnits *Units);


void __RPC_STUB IAcadDimAligned_get_AltUnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltUnitsFormat_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimUnits Units);


void __RPC_STUB IAcadDimAligned_put_AltUnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltTextPrefix_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimAligned_get_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltTextPrefix_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimAligned_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltTextSuffix_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *Suffix);


void __RPC_STUB IAcadDimAligned_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltTextSuffix_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR Suffix);


void __RPC_STUB IAcadDimAligned_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimensionLineColor_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ ACAD_COLOR *Color);


void __RPC_STUB IAcadDimAligned_get_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimensionLineColor_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ ACAD_COLOR Color);


void __RPC_STUB IAcadDimAligned_put_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtensionLineColor_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ ACAD_COLOR *Color);


void __RPC_STUB IAcadDimAligned_get_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtensionLineColor_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ ACAD_COLOR Color);


void __RPC_STUB IAcadDimAligned_put_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimAligned_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimAligned_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimensionLineExtend_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimAligned_get_DimensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimensionLineExtend_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimAligned_put_DimensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtensionLineExtend_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimAligned_get_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtensionLineExtend_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimAligned_put_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_Fit_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimAligned_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_Fit_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimAligned_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_FractionFormat_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimAligned_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_FractionFormat_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimAligned_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_HorizontalTextPosition_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimHorizontalJustification *type);


void __RPC_STUB IAcadDimAligned_get_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_HorizontalTextPosition_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimHorizontalJustification type);


void __RPC_STUB IAcadDimAligned_put_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_LinearScaleFactor_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimAligned_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_LinearScaleFactor_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimAligned_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_UnitsFormat_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimAligned_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_UnitsFormat_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimAligned_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtensionLineWeight_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ ACAD_LWEIGHT *lweight);


void __RPC_STUB IAcadDimAligned_get_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtensionLineWeight_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ ACAD_LWEIGHT lweight);


void __RPC_STUB IAcadDimAligned_put_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_RoundDistance_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimAligned_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_RoundDistance_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimAligned_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimLine1Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAligned_get_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimLine1Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAligned_put_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimLine2Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAligned_get_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimLine2Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAligned_put_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtLine1Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAligned_get_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtLine1Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAligned_put_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtLine2Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAligned_get_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtLine2Suppress_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAligned_put_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimLineInside_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAligned_get_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimLineInside_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAligned_put_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_TextInsideAlign_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAligned_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_TextInsideAlign_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAligned_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_TextInside_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAligned_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_TextInside_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAligned_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ForceLineInside_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAligned_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ForceLineInside_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAligned_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_TextOutsideAlign_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAligned_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_TextOutsideAlign_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAligned_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtensionLineOffset_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *offset);


void __RPC_STUB IAcadDimAligned_get_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtensionLineOffset_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double offset);


void __RPC_STUB IAcadDimAligned_put_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltSuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltSuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_SuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_SuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_SuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_SuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimAligned_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimAligned_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimensionLineWeight_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimAligned_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimensionLineWeight_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimAligned_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ArrowheadSize_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimAligned_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ArrowheadSize_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimAligned_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_Arrowhead1Type_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimAligned_get_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_Arrowhead1Type_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimAligned_put_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_Arrowhead2Type_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimAligned_get_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_Arrowhead2Type_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimAligned_put_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_Measurement_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimAligned_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_Arrowhead1Block_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimAligned_get_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_Arrowhead1Block_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimAligned_put_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_Arrowhead2Block_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimAligned_get_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_Arrowhead2Block_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimAligned_put_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimensionLinetype_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimAligned_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimensionLinetype_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimAligned_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtLine1Linetype_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimAligned_get_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtLine1Linetype_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimAligned_put_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtLine2Linetype_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimAligned_get_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtLine2Linetype_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimAligned_put_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bFixedLen);


void __RPC_STUB IAcadDimAligned_get_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bFixedLen);


void __RPC_STUB IAcadDimAligned_put_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_ExtLineFixedLen_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *FixedLen);


void __RPC_STUB IAcadDimAligned_get_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_ExtLineFixedLen_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double FixedLen);


void __RPC_STUB IAcadDimAligned_put_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimConstrForm_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bIsDynamic);


void __RPC_STUB IAcadDimAligned_get_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimConstrForm_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bIsDynamic);


void __RPC_STUB IAcadDimAligned_put_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimConstrReference_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ VARIANT_BOOL *bIsReference);


void __RPC_STUB IAcadDimAligned_get_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimConstrReference_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ VARIANT_BOOL bIsReference);


void __RPC_STUB IAcadDimAligned_put_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimConstrName_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadDimAligned_get_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimConstrName_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadDimAligned_put_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimConstrExpression_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *bstrExpression);


void __RPC_STUB IAcadDimAligned_get_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimConstrExpression_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR bstrExpression);


void __RPC_STUB IAcadDimAligned_put_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimConstrValue_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadDimAligned_get_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimConstrValue_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadDimAligned_put_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_DimConstrDesc_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *bstrDescription);


void __RPC_STUB IAcadDimAligned_get_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_DimConstrDesc_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR bstrDescription);


void __RPC_STUB IAcadDimAligned_put_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_SubUnitsSuffix_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimAligned_get_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_SubUnitsSuffix_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimAligned_put_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_SubUnitsFactor_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimAligned_get_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_SubUnitsFactor_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimAligned_put_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltSubUnitsSuffix_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimAligned_get_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltSubUnitsSuffix_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimAligned_put_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_get_AltSubUnitsFactor_Proxy( 
    IAcadDimAligned * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimAligned_get_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAligned_put_AltSubUnitsFactor_Proxy( 
    IAcadDimAligned * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimAligned_put_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimAligned_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimAligned,0x5B1197B8,0xB852,0x4C5B,0xB9,0xB0,0xB0,0x4D,0x5D,0x1A,0x90,0x86);

#ifdef __cplusplus

class DECLSPEC_UUID("5B1197B8-B852-4C5B-B9B0-B04D5D1A9086")
AcadDimAligned;
#endif

#ifndef __IAcadDimAngular_INTERFACE_DEFINED__
#define __IAcadDimAngular_INTERFACE_DEFINED__

/* interface IAcadDimAngular */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimAngular,0xD7187777,0xA662,0x47E5,0x87,0x49,0x70,0xB9,0xB4,0x36,0xDE,0xF0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D7187777-A662-47E5-8749-70B9B436DEF0")
    IAcadDimAngular : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1StartPoint( 
            /* [retval][out] */ VARIANT *xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1StartPoint( 
            /* [in] */ VARIANT xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1EndPoint( 
            /* [retval][out] */ VARIANT *xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1EndPoint( 
            /* [in] */ VARIANT xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2StartPoint( 
            /* [retval][out] */ VARIANT *xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2StartPoint( 
            /* [in] */ VARIANT xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2EndPoint( 
            /* [retval][out] */ VARIANT *xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2EndPoint( 
            /* [in] */ VARIANT xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleFormat( 
            /* [retval][out] */ AcAngleUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AngleFormat( 
            /* [in] */ AcAngleUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalTextPosition( 
            /* [retval][out] */ AcDimHorizontalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalTextPosition( 
            /* [in] */ AcDimHorizontalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextPrecision( 
            /* [retval][out] */ AcDimPrecision *precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextPrecision( 
            /* [in] */ AcDimPrecision precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineOffset( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineOffset( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ ACAD_ANGLE *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLenSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLenSuppress( 
            /* [in] */ VARIANT_BOOL bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLen( 
            /* [retval][out] */ double *FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLen( 
            /* [in] */ double FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrForm( 
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrForm( 
            /* [in] */ VARIANT_BOOL bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrReference( 
            /* [retval][out] */ VARIANT_BOOL *bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrReference( 
            /* [in] */ VARIANT_BOOL bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrExpression( 
            /* [retval][out] */ BSTR *bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrExpression( 
            /* [in] */ BSTR bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrValue( 
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrValue( 
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrDesc( 
            /* [retval][out] */ BSTR *bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrDesc( 
            /* [in] */ BSTR bstrDescription) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimAngularVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimAngular * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimAngular * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimAngular * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimAngular * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimAngular * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimAngular * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimAngular * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimAngular * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimAngular * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimAngular * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimAngular * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimAngular * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimAngular * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimAngular * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimAngular * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimAngular * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimAngular * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimAngular * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimAngular * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimAngular * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimAngular * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimAngular * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimAngular * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimAngular * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimAngular * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1StartPoint )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT *xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1StartPoint )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1EndPoint )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT *xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1EndPoint )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2StartPoint )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT *xLine2Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2StartPoint )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT xLine2Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2EndPoint )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT *xLine2Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2EndPoint )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT xLine2Point);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AngleFormat )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcAngleUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AngleFormat )( 
            IAcadDimAngular * This,
            /* [in] */ AcAngleUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineColor )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineColor )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineExtend )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineExtend )( 
            IAcadDimAngular * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalTextPosition )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimHorizontalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalTextPosition )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimHorizontalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineWeight )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_LWEIGHT *lweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineWeight )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_LWEIGHT lweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine1Suppress )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine1Suppress )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine2Suppress )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine2Suppress )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Suppress )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Suppress )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Suppress )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Suppress )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineInside )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineInside )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrecision )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrecision )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineOffset )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineOffset )( 
            IAcadDimAngular * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimAngular * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimAngular * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Type )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Type )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Type )( 
            IAcadDimAngular * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Type )( 
            IAcadDimAngular * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimAngular * This,
            /* [retval][out] */ ACAD_ANGLE *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Block )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Block )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Block )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Block )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Linetype )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Linetype )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Linetype )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Linetype )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLenSuppress )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLenSuppress )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLen )( 
            IAcadDimAngular * This,
            /* [retval][out] */ double *FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLen )( 
            IAcadDimAngular * This,
            /* [in] */ double FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrForm )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrForm )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrReference )( 
            IAcadDimAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrReference )( 
            IAcadDimAngular * This,
            /* [in] */ VARIANT_BOOL bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrName )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrName )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrExpression )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrExpression )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrValue )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrValue )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrDesc )( 
            IAcadDimAngular * This,
            /* [retval][out] */ BSTR *bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrDesc )( 
            IAcadDimAngular * This,
            /* [in] */ BSTR bstrDescription);
        
        END_INTERFACE
    } IAcadDimAngularVtbl;

    interface IAcadDimAngular
    {
        CONST_VTBL struct IAcadDimAngularVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimAngular_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimAngular_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimAngular_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimAngular_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimAngular_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimAngular_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimAngular_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimAngular_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimAngular_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimAngular_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimAngular_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimAngular_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimAngular_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimAngular_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimAngular_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimAngular_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimAngular_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimAngular_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimAngular_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimAngular_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimAngular_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimAngular_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimAngular_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimAngular_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimAngular_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimAngular_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimAngular_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimAngular_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimAngular_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimAngular_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimAngular_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimAngular_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimAngular_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimAngular_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimAngular_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimAngular_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimAngular_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimAngular_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimAngular_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimAngular_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimAngular_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimAngular_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimAngular_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimAngular_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimAngular_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimAngular_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimAngular_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimAngular_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimAngular_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimAngular_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimAngular_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimAngular_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimAngular_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimAngular_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimAngular_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimAngular_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimAngular_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimAngular_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimAngular_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimAngular_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimAngular_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimAngular_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimAngular_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimAngular_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimAngular_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimAngular_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimAngular_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimAngular_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimAngular_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimAngular_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimAngular_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimAngular_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimAngular_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimAngular_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimAngular_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimAngular_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimAngular_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimAngular_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimAngular_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimAngular_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimAngular_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimAngular_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimAngular_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimAngular_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimAngular_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimAngular_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimAngular_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimAngular_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimAngular_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimAngular_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimAngular_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimAngular_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimAngular_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimAngular_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimAngular_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimAngular_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimAngular_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimAngular_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimAngular_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimAngular_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimAngular_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimAngular_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAngular_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAngular_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAngular_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAngular_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAngular_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimAngular_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAngular_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimAngular_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimAngular_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimAngular_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimAngular_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimAngular_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimAngular_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimAngular_get_ExtLine1StartPoint(This,xLine1Point)	\
    ( (This)->lpVtbl -> get_ExtLine1StartPoint(This,xLine1Point) ) 

#define IAcadDimAngular_put_ExtLine1StartPoint(This,xLine1Point)	\
    ( (This)->lpVtbl -> put_ExtLine1StartPoint(This,xLine1Point) ) 

#define IAcadDimAngular_get_ExtLine1EndPoint(This,xLine1Point)	\
    ( (This)->lpVtbl -> get_ExtLine1EndPoint(This,xLine1Point) ) 

#define IAcadDimAngular_put_ExtLine1EndPoint(This,xLine1Point)	\
    ( (This)->lpVtbl -> put_ExtLine1EndPoint(This,xLine1Point) ) 

#define IAcadDimAngular_get_ExtLine2StartPoint(This,xLine2Point)	\
    ( (This)->lpVtbl -> get_ExtLine2StartPoint(This,xLine2Point) ) 

#define IAcadDimAngular_put_ExtLine2StartPoint(This,xLine2Point)	\
    ( (This)->lpVtbl -> put_ExtLine2StartPoint(This,xLine2Point) ) 

#define IAcadDimAngular_get_ExtLine2EndPoint(This,xLine2Point)	\
    ( (This)->lpVtbl -> get_ExtLine2EndPoint(This,xLine2Point) ) 

#define IAcadDimAngular_put_ExtLine2EndPoint(This,xLine2Point)	\
    ( (This)->lpVtbl -> put_ExtLine2EndPoint(This,xLine2Point) ) 

#define IAcadDimAngular_get_AngleFormat(This,format)	\
    ( (This)->lpVtbl -> get_AngleFormat(This,format) ) 

#define IAcadDimAngular_put_AngleFormat(This,format)	\
    ( (This)->lpVtbl -> put_AngleFormat(This,format) ) 

#define IAcadDimAngular_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDimAngular_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDimAngular_get_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_ExtensionLineColor(This,Type) ) 

#define IAcadDimAngular_put_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_ExtensionLineColor(This,Type) ) 

#define IAcadDimAngular_get_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_ExtensionLineExtend(This,extend) ) 

#define IAcadDimAngular_put_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_ExtensionLineExtend(This,extend) ) 

#define IAcadDimAngular_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimAngular_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimAngular_get_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_HorizontalTextPosition(This,type) ) 

#define IAcadDimAngular_put_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_HorizontalTextPosition(This,type) ) 

#define IAcadDimAngular_get_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> get_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimAngular_put_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> put_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimAngular_get_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimAngular_put_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimAngular_get_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimAngular_put_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimAngular_get_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimAngular_put_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimAngular_get_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimAngular_put_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimAngular_get_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_DimLineInside(This,bInside) ) 

#define IAcadDimAngular_put_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_DimLineInside(This,bInside) ) 

#define IAcadDimAngular_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimAngular_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimAngular_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimAngular_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimAngular_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimAngular_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimAngular_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimAngular_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimAngular_get_TextPrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TextPrecision(This,precision) ) 

#define IAcadDimAngular_put_TextPrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TextPrecision(This,precision) ) 

#define IAcadDimAngular_get_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> get_ExtensionLineOffset(This,offset) ) 

#define IAcadDimAngular_put_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> put_ExtensionLineOffset(This,offset) ) 

#define IAcadDimAngular_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimAngular_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimAngular_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimAngular_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimAngular_get_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead1Type(This,Type) ) 

#define IAcadDimAngular_put_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead1Type(This,Type) ) 

#define IAcadDimAngular_get_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead2Type(This,Type) ) 

#define IAcadDimAngular_put_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead2Type(This,Type) ) 

#define IAcadDimAngular_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimAngular_get_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimAngular_put_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimAngular_get_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimAngular_put_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimAngular_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimAngular_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDimAngular_get_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimAngular_put_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimAngular_get_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimAngular_put_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimAngular_get_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimAngular_put_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimAngular_get_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimAngular_put_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimAngular_get_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> get_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimAngular_put_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> put_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimAngular_get_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> get_DimConstrReference(This,bIsReference) ) 

#define IAcadDimAngular_put_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> put_DimConstrReference(This,bIsReference) ) 

#define IAcadDimAngular_get_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> get_DimConstrName(This,bstrName) ) 

#define IAcadDimAngular_put_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> put_DimConstrName(This,bstrName) ) 

#define IAcadDimAngular_get_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> get_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimAngular_put_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> put_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimAngular_get_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> get_DimConstrValue(This,value) ) 

#define IAcadDimAngular_put_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> put_DimConstrValue(This,value) ) 

#define IAcadDimAngular_get_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> get_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimAngular_put_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> put_DimConstrDesc(This,bstrDescription) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtensionLineColor_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimAngular_put_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtensionLineExtend_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimAngular_get_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtensionLineExtend_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimAngular_put_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_Fit_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimAngular_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_Fit_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimAngular_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_HorizontalTextPosition_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ AcDimHorizontalJustification *type);


void __RPC_STUB IAcadDimAngular_get_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_HorizontalTextPosition_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ AcDimHorizontalJustification type);


void __RPC_STUB IAcadDimAngular_put_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtensionLineWeight_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ ACAD_LWEIGHT *lweight);


void __RPC_STUB IAcadDimAngular_get_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtensionLineWeight_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ ACAD_LWEIGHT lweight);


void __RPC_STUB IAcadDimAngular_put_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimLine1Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAngular_get_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimLine1Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAngular_put_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimLine2Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAngular_get_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimLine2Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAngular_put_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtLine1Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAngular_get_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtLine1Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAngular_put_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtLine2Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimAngular_get_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtLine2Suppress_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimAngular_put_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimLineInside_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAngular_get_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimLineInside_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAngular_put_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_TextInsideAlign_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAngular_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_TextInsideAlign_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAngular_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_TextInside_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAngular_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_TextInside_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAngular_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ForceLineInside_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAngular_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ForceLineInside_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAngular_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_TextOutsideAlign_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimAngular_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_TextOutsideAlign_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimAngular_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_TextPrecision_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ AcDimPrecision *precision);


void __RPC_STUB IAcadDimAngular_get_TextPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_TextPrecision_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ AcDimPrecision precision);


void __RPC_STUB IAcadDimAngular_put_TextPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtensionLineOffset_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ double *offset);


void __RPC_STUB IAcadDimAngular_get_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtensionLineOffset_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ double offset);


void __RPC_STUB IAcadDimAngular_put_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimensionLineWeight_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimAngular_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimensionLineWeight_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimAngular_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ArrowheadSize_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimAngular_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ArrowheadSize_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimAngular_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_Arrowhead1Type_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimAngular_get_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_Arrowhead1Type_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimAngular_put_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_Arrowhead2Type_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimAngular_get_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_Arrowhead2Type_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimAngular_put_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_Measurement_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ ACAD_ANGLE *bVal);


void __RPC_STUB IAcadDimAngular_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_Arrowhead1Block_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimAngular_get_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_Arrowhead1Block_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimAngular_put_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_Arrowhead2Block_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimAngular_get_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_Arrowhead2Block_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimAngular_put_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimensionLinetype_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimAngular_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimensionLinetype_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimAngular_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtLine1Linetype_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimAngular_get_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtLine1Linetype_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimAngular_put_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtLine2Linetype_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimAngular_get_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtLine2Linetype_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimAngular_put_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bFixedLen);


void __RPC_STUB IAcadDimAngular_get_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bFixedLen);


void __RPC_STUB IAcadDimAngular_put_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_ExtLineFixedLen_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ double *FixedLen);


void __RPC_STUB IAcadDimAngular_get_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_ExtLineFixedLen_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ double FixedLen);


void __RPC_STUB IAcadDimAngular_put_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimConstrForm_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bIsDynamic);


void __RPC_STUB IAcadDimAngular_get_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimConstrForm_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bIsDynamic);


void __RPC_STUB IAcadDimAngular_put_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimConstrReference_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bIsReference);


void __RPC_STUB IAcadDimAngular_get_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimConstrReference_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ VARIANT_BOOL bIsReference);


void __RPC_STUB IAcadDimAngular_put_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimConstrName_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadDimAngular_get_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimConstrName_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadDimAngular_put_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimConstrExpression_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *bstrExpression);


void __RPC_STUB IAcadDimAngular_get_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimConstrExpression_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR bstrExpression);


void __RPC_STUB IAcadDimAngular_put_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimConstrValue_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadDimAngular_get_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimConstrValue_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadDimAngular_put_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_get_DimConstrDesc_Proxy( 
    IAcadDimAngular * This,
    /* [retval][out] */ BSTR *bstrDescription);


void __RPC_STUB IAcadDimAngular_get_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimAngular_put_DimConstrDesc_Proxy( 
    IAcadDimAngular * This,
    /* [in] */ BSTR bstrDescription);


void __RPC_STUB IAcadDimAngular_put_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimAngular_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimAngular,0xAD5078D0,0xC038,0x438A,0x8B,0x42,0xB1,0xF1,0x6A,0x6F,0xED,0x4C);

#ifdef __cplusplus

class DECLSPEC_UUID("AD5078D0-C038-438A-8B42-B1F16A6FED4C")
AcadDimAngular;
#endif

#ifndef __IAcadDimDiametric_INTERFACE_DEFINED__
#define __IAcadDimDiametric_INTERFACE_DEFINED__

/* interface IAcadDimDiametric */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimDiametric,0x9C32E747,0x9CB2,0x4216,0xB6,0xB1,0x76,0x10,0x20,0x38,0x52,0x57);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9C32E747-9CB2-4216-B6B1-761020385257")
    IAcadDimDiametric : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLength( 
            /* [in] */ double Length) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterType( 
            /* [retval][out] */ AcDimCenterType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterType( 
            /* [in] */ AcDimCenterType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterMarkSize( 
            /* [retval][out] */ double *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterMarkSize( 
            /* [in] */ double Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrForm( 
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrForm( 
            /* [in] */ VARIANT_BOOL bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrReference( 
            /* [retval][out] */ VARIANT_BOOL *bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrReference( 
            /* [in] */ VARIANT_BOOL bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrExpression( 
            /* [retval][out] */ BSTR *bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrExpression( 
            /* [in] */ BSTR bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrValue( 
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrValue( 
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrDesc( 
            /* [retval][out] */ BSTR *bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrDesc( 
            /* [in] */ BSTR bstrDescription) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimDiametricVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimDiametric * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimDiametric * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimDiametric * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimDiametric * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimDiametric * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimDiametric * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimDiametric * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimDiametric * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimDiametric * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimDiametric * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimDiametric * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimDiametric * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimDiametric * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimDiametric * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimDiametric * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimDiametric * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimDiametric * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimDiametric * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimDiametric * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLength )( 
            IAcadDimDiametric * This,
            /* [in] */ double Length);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimDiametric * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimDiametric * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine1Suppress )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine1Suppress )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine2Suppress )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine2Suppress )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterType )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimCenterType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterType )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimCenterType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterMarkSize )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterMarkSize )( 
            IAcadDimDiametric * This,
            /* [in] */ double Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimDiametric * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimDiametric * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Type )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Type )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Type )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Type )( 
            IAcadDimDiametric * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Block )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Block )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Block )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Block )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrForm )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrForm )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrReference )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ VARIANT_BOOL *bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrReference )( 
            IAcadDimDiametric * This,
            /* [in] */ VARIANT_BOOL bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrName )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrName )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrExpression )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrExpression )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrValue )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrValue )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrDesc )( 
            IAcadDimDiametric * This,
            /* [retval][out] */ BSTR *bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrDesc )( 
            IAcadDimDiametric * This,
            /* [in] */ BSTR bstrDescription);
        
        END_INTERFACE
    } IAcadDimDiametricVtbl;

    interface IAcadDimDiametric
    {
        CONST_VTBL struct IAcadDimDiametricVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimDiametric_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimDiametric_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimDiametric_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimDiametric_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimDiametric_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimDiametric_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimDiametric_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimDiametric_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimDiametric_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimDiametric_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimDiametric_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimDiametric_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimDiametric_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimDiametric_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimDiametric_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimDiametric_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimDiametric_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimDiametric_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimDiametric_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimDiametric_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimDiametric_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimDiametric_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimDiametric_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimDiametric_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimDiametric_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimDiametric_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimDiametric_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimDiametric_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimDiametric_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimDiametric_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimDiametric_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimDiametric_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimDiametric_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimDiametric_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimDiametric_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimDiametric_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimDiametric_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimDiametric_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimDiametric_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimDiametric_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimDiametric_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimDiametric_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimDiametric_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimDiametric_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimDiametric_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimDiametric_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimDiametric_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimDiametric_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimDiametric_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimDiametric_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimDiametric_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimDiametric_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimDiametric_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimDiametric_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimDiametric_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimDiametric_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimDiametric_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimDiametric_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimDiametric_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimDiametric_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimDiametric_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimDiametric_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimDiametric_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimDiametric_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimDiametric_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimDiametric_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimDiametric_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimDiametric_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimDiametric_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimDiametric_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimDiametric_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimDiametric_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimDiametric_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimDiametric_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimDiametric_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimDiametric_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimDiametric_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimDiametric_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimDiametric_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimDiametric_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimDiametric_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimDiametric_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimDiametric_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimDiametric_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimDiametric_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimDiametric_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimDiametric_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimDiametric_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimDiametric_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimDiametric_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimDiametric_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimDiametric_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimDiametric_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimDiametric_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimDiametric_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimDiametric_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimDiametric_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimDiametric_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimDiametric_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimDiametric_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimDiametric_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimDiametric_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimDiametric_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimDiametric_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimDiametric_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimDiametric_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimDiametric_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimDiametric_put_LeaderLength(This,Length)	\
    ( (This)->lpVtbl -> put_LeaderLength(This,Length) ) 

#define IAcadDimDiametric_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimDiametric_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimDiametric_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimDiametric_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimDiametric_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimDiametric_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimDiametric_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimDiametric_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimDiametric_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimDiametric_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimDiametric_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimDiametric_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimDiametric_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimDiametric_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimDiametric_get_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Prefix) ) 

#define IAcadDimDiametric_put_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Prefix) ) 

#define IAcadDimDiametric_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDimDiametric_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDimDiametric_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimDiametric_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimDiametric_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimDiametric_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimDiametric_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimDiametric_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimDiametric_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimDiametric_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimDiametric_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimDiametric_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimDiametric_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimDiametric_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimDiametric_get_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimDiametric_put_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimDiametric_get_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimDiametric_put_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimDiametric_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimDiametric_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimDiametric_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimDiametric_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimDiametric_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimDiametric_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimDiametric_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimDiametric_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimDiametric_get_CenterType(This,Type)	\
    ( (This)->lpVtbl -> get_CenterType(This,Type) ) 

#define IAcadDimDiametric_put_CenterType(This,Type)	\
    ( (This)->lpVtbl -> put_CenterType(This,Type) ) 

#define IAcadDimDiametric_get_CenterMarkSize(This,Type)	\
    ( (This)->lpVtbl -> get_CenterMarkSize(This,Type) ) 

#define IAcadDimDiametric_put_CenterMarkSize(This,Type)	\
    ( (This)->lpVtbl -> put_CenterMarkSize(This,Type) ) 

#define IAcadDimDiametric_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimDiametric_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimDiametric_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimDiametric_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimDiametric_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimDiametric_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimDiametric_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimDiametric_get_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead1Type(This,Type) ) 

#define IAcadDimDiametric_put_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead1Type(This,Type) ) 

#define IAcadDimDiametric_get_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead2Type(This,Type) ) 

#define IAcadDimDiametric_put_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead2Type(This,Type) ) 

#define IAcadDimDiametric_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimDiametric_get_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimDiametric_put_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimDiametric_get_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimDiametric_put_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimDiametric_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimDiametric_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDimDiametric_get_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> get_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimDiametric_put_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> put_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimDiametric_get_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> get_DimConstrReference(This,bIsReference) ) 

#define IAcadDimDiametric_put_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> put_DimConstrReference(This,bIsReference) ) 

#define IAcadDimDiametric_get_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> get_DimConstrName(This,bstrName) ) 

#define IAcadDimDiametric_put_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> put_DimConstrName(This,bstrName) ) 

#define IAcadDimDiametric_get_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> get_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimDiametric_put_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> put_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimDiametric_get_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> get_DimConstrValue(This,value) ) 

#define IAcadDimDiametric_put_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> put_DimConstrValue(This,value) ) 

#define IAcadDimDiametric_get_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> get_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimDiametric_put_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> put_DimConstrDesc(This,bstrDescription) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltTextPrefix_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimDiametric_get_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltTextPrefix_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimDiametric_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltTextSuffix_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimDiametric_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltTextSuffix_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimDiametric_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimensionLineColor_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimDiametric_get_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimensionLineColor_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimDiametric_put_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimDiametric_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimDiametric_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_FractionFormat_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimDiametric_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_FractionFormat_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimDiametric_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_Fit_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimDiametric_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_Fit_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimDiametric_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_LinearScaleFactor_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimDiametric_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_LinearScaleFactor_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimDiametric_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_UnitsFormat_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimDiametric_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_UnitsFormat_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimDiametric_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_RoundDistance_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimDiametric_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_RoundDistance_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimDiametric_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimLine1Suppress_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimDiametric_get_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimLine1Suppress_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimDiametric_put_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimLine2Suppress_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimDiametric_get_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimLine2Suppress_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimDiametric_put_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_TextInsideAlign_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimDiametric_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_TextInsideAlign_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimDiametric_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_TextInside_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimDiametric_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_TextInside_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimDiametric_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_ForceLineInside_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimDiametric_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_ForceLineInside_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimDiametric_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_TextOutsideAlign_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimDiametric_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_TextOutsideAlign_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimDiametric_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_CenterType_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimCenterType *Type);


void __RPC_STUB IAcadDimDiametric_get_CenterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_CenterType_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimCenterType Type);


void __RPC_STUB IAcadDimDiametric_put_CenterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_CenterMarkSize_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ double *Type);


void __RPC_STUB IAcadDimDiametric_get_CenterMarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_CenterMarkSize_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ double Type);


void __RPC_STUB IAcadDimDiametric_put_CenterMarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltSuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltSuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_SuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_SuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_SuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_SuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimDiametric_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimDiametric_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimensionLineWeight_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimDiametric_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimensionLineWeight_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimDiametric_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_ArrowheadSize_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimDiametric_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_ArrowheadSize_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimDiametric_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_Arrowhead1Type_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimDiametric_get_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_Arrowhead1Type_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimDiametric_put_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_Arrowhead2Type_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimDiametric_get_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_Arrowhead2Type_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimDiametric_put_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_Measurement_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimDiametric_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_Arrowhead1Block_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimDiametric_get_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_Arrowhead1Block_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimDiametric_put_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_Arrowhead2Block_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimDiametric_get_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_Arrowhead2Block_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimDiametric_put_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimensionLinetype_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimDiametric_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimensionLinetype_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimDiametric_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimConstrForm_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bIsDynamic);


void __RPC_STUB IAcadDimDiametric_get_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimConstrForm_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bIsDynamic);


void __RPC_STUB IAcadDimDiametric_put_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimConstrReference_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ VARIANT_BOOL *bIsReference);


void __RPC_STUB IAcadDimDiametric_get_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimConstrReference_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ VARIANT_BOOL bIsReference);


void __RPC_STUB IAcadDimDiametric_put_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimConstrName_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadDimDiametric_get_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimConstrName_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadDimDiametric_put_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimConstrExpression_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *bstrExpression);


void __RPC_STUB IAcadDimDiametric_get_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimConstrExpression_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR bstrExpression);


void __RPC_STUB IAcadDimDiametric_put_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimConstrValue_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadDimDiametric_get_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimConstrValue_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadDimDiametric_put_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_get_DimConstrDesc_Proxy( 
    IAcadDimDiametric * This,
    /* [retval][out] */ BSTR *bstrDescription);


void __RPC_STUB IAcadDimDiametric_get_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimDiametric_put_DimConstrDesc_Proxy( 
    IAcadDimDiametric * This,
    /* [in] */ BSTR bstrDescription);


void __RPC_STUB IAcadDimDiametric_put_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimDiametric_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimDiametric,0xB63A17A3,0x07C5,0x46F6,0xAB,0x22,0x98,0x1E,0xDF,0xD8,0x75,0xB8);

#ifdef __cplusplus

class DECLSPEC_UUID("B63A17A3-07C5-46F6-AB22-981EDFD875B8")
AcadDimDiametric;
#endif

#ifndef __IAcadDimOrdinate_INTERFACE_DEFINED__
#define __IAcadDimOrdinate_INTERFACE_DEFINED__

/* interface IAcadDimOrdinate */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimOrdinate,0x9F56A92F,0x889B,0x46D5,0xB2,0x79,0x71,0xE3,0x5D,0x70,0x55,0x25);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9F56A92F-889B-46D5-B279-71E35D705525")
    IAcadDimOrdinate : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineOffset( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineOffset( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLenSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLenSuppress( 
            /* [in] */ VARIANT_BOOL bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLen( 
            /* [retval][out] */ double *FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLen( 
            /* [in] */ double FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimOrdinateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimOrdinate * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimOrdinate * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimOrdinate * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimOrdinate * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimOrdinate * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimOrdinate * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimOrdinate * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimOrdinate * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimOrdinate * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimOrdinate * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimOrdinate * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimOrdinate * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimOrdinate * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimOrdinate * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimOrdinate * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimOrdinate * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimOrdinate * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimOrdinate * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimOrdinate * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimOrdinate * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineColor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineColor )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimOrdinate * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineWeight )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ ACAD_LWEIGHT *lweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineWeight )( 
            IAcadDimOrdinate * This,
            /* [in] */ ACAD_LWEIGHT lweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimOrdinate * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineOffset )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineOffset )( 
            IAcadDimOrdinate * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimOrdinate * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLenSuppress )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ VARIANT_BOOL *bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLenSuppress )( 
            IAcadDimOrdinate * This,
            /* [in] */ VARIANT_BOOL bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLen )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLen )( 
            IAcadDimOrdinate * This,
            /* [in] */ double FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsSuffix )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsSuffix )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsFactor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsFactor )( 
            IAcadDimOrdinate * This,
            /* [in] */ double factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsSuffix )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsSuffix )( 
            IAcadDimOrdinate * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsFactor )( 
            IAcadDimOrdinate * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsFactor )( 
            IAcadDimOrdinate * This,
            /* [in] */ double factor);
        
        END_INTERFACE
    } IAcadDimOrdinateVtbl;

    interface IAcadDimOrdinate
    {
        CONST_VTBL struct IAcadDimOrdinateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimOrdinate_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimOrdinate_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimOrdinate_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimOrdinate_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimOrdinate_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimOrdinate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimOrdinate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimOrdinate_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimOrdinate_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimOrdinate_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimOrdinate_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimOrdinate_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimOrdinate_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimOrdinate_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimOrdinate_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimOrdinate_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimOrdinate_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimOrdinate_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimOrdinate_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimOrdinate_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimOrdinate_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimOrdinate_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimOrdinate_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimOrdinate_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimOrdinate_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimOrdinate_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimOrdinate_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimOrdinate_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimOrdinate_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimOrdinate_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimOrdinate_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimOrdinate_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimOrdinate_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimOrdinate_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimOrdinate_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimOrdinate_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimOrdinate_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimOrdinate_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimOrdinate_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimOrdinate_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimOrdinate_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimOrdinate_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimOrdinate_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimOrdinate_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimOrdinate_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimOrdinate_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimOrdinate_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimOrdinate_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimOrdinate_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimOrdinate_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimOrdinate_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimOrdinate_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimOrdinate_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimOrdinate_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimOrdinate_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimOrdinate_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimOrdinate_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimOrdinate_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimOrdinate_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimOrdinate_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimOrdinate_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimOrdinate_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimOrdinate_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimOrdinate_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimOrdinate_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimOrdinate_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimOrdinate_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimOrdinate_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimOrdinate_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimOrdinate_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimOrdinate_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimOrdinate_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimOrdinate_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimOrdinate_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimOrdinate_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimOrdinate_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimOrdinate_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimOrdinate_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimOrdinate_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimOrdinate_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimOrdinate_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimOrdinate_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimOrdinate_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimOrdinate_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimOrdinate_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimOrdinate_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimOrdinate_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimOrdinate_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimOrdinate_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimOrdinate_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimOrdinate_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimOrdinate_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimOrdinate_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimOrdinate_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimOrdinate_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimOrdinate_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimOrdinate_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimOrdinate_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimOrdinate_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimOrdinate_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimOrdinate_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimOrdinate_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimOrdinate_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimOrdinate_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimOrdinate_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimOrdinate_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimOrdinate_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimOrdinate_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimOrdinate_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimOrdinate_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimOrdinate_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimOrdinate_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimOrdinate_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimOrdinate_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimOrdinate_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimOrdinate_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimOrdinate_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimOrdinate_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimOrdinate_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimOrdinate_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimOrdinate_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimOrdinate_get_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Prefix) ) 

#define IAcadDimOrdinate_put_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Prefix) ) 

#define IAcadDimOrdinate_get_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_ExtensionLineColor(This,Type) ) 

#define IAcadDimOrdinate_put_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_ExtensionLineColor(This,Type) ) 

#define IAcadDimOrdinate_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimOrdinate_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimOrdinate_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimOrdinate_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimOrdinate_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimOrdinate_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimOrdinate_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimOrdinate_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimOrdinate_get_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> get_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimOrdinate_put_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> put_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimOrdinate_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimOrdinate_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimOrdinate_get_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> get_ExtensionLineOffset(This,offset) ) 

#define IAcadDimOrdinate_put_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> put_ExtensionLineOffset(This,offset) ) 

#define IAcadDimOrdinate_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimOrdinate_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimOrdinate_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimOrdinate_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimOrdinate_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimOrdinate_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimOrdinate_get_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimOrdinate_put_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimOrdinate_get_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimOrdinate_put_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimOrdinate_get_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimOrdinate_put_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimOrdinate_get_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_SubUnitsFactor(This,factor) ) 

#define IAcadDimOrdinate_put_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_SubUnitsFactor(This,factor) ) 

#define IAcadDimOrdinate_get_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimOrdinate_put_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimOrdinate_get_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_AltSubUnitsFactor(This,factor) ) 

#define IAcadDimOrdinate_put_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_AltSubUnitsFactor(This,factor) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltTextPrefix_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimOrdinate_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltTextSuffix_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimOrdinate_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltTextSuffix_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimOrdinate_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ExtensionLineColor_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimOrdinate_get_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ExtensionLineColor_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimOrdinate_put_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimOrdinate_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimOrdinate_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_FractionFormat_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimOrdinate_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_FractionFormat_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimOrdinate_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_LinearScaleFactor_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimOrdinate_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_LinearScaleFactor_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimOrdinate_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_UnitsFormat_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimOrdinate_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_UnitsFormat_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimOrdinate_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ExtensionLineWeight_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ ACAD_LWEIGHT *lweight);


void __RPC_STUB IAcadDimOrdinate_get_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ExtensionLineWeight_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ ACAD_LWEIGHT lweight);


void __RPC_STUB IAcadDimOrdinate_put_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_RoundDistance_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimOrdinate_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_RoundDistance_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimOrdinate_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ExtensionLineOffset_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *offset);


void __RPC_STUB IAcadDimOrdinate_get_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ExtensionLineOffset_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ double offset);


void __RPC_STUB IAcadDimOrdinate_put_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltSuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltSuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_SuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_SuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_SuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_SuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimOrdinate_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimOrdinate_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ArrowheadSize_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimOrdinate_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ArrowheadSize_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimOrdinate_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_Measurement_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimOrdinate_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ VARIANT_BOOL *bFixedLen);


void __RPC_STUB IAcadDimOrdinate_get_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ VARIANT_BOOL bFixedLen);


void __RPC_STUB IAcadDimOrdinate_put_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_ExtLineFixedLen_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *FixedLen);


void __RPC_STUB IAcadDimOrdinate_get_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_ExtLineFixedLen_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ double FixedLen);


void __RPC_STUB IAcadDimOrdinate_put_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_SubUnitsSuffix_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimOrdinate_get_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_SubUnitsSuffix_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimOrdinate_put_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_SubUnitsFactor_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimOrdinate_get_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_SubUnitsFactor_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimOrdinate_put_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltSubUnitsSuffix_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimOrdinate_get_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltSubUnitsSuffix_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimOrdinate_put_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_get_AltSubUnitsFactor_Proxy( 
    IAcadDimOrdinate * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimOrdinate_get_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimOrdinate_put_AltSubUnitsFactor_Proxy( 
    IAcadDimOrdinate * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimOrdinate_put_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimOrdinate_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimOrdinate,0xFA6D095A,0xA5A9,0x4C44,0xAA,0x07,0xFE,0xFC,0x8B,0x1D,0x29,0xCF);

#ifdef __cplusplus

class DECLSPEC_UUID("FA6D095A-A5A9-4C44-AA07-FEFC8B1D29CF")
AcadDimOrdinate;
#endif

#ifndef __IAcadDimRadial_INTERFACE_DEFINED__
#define __IAcadDimRadial_INTERFACE_DEFINED__

/* interface IAcadDimRadial */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimRadial,0x67809A55,0x363A,0x417B,0x92,0xD3,0x81,0x97,0x86,0x12,0xB1,0x59);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("67809A55-363A-417B-92D3-81978612B159")
    IAcadDimRadial : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLength( 
            /* [in] */ double Length) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterType( 
            /* [retval][out] */ AcDimCenterType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterType( 
            /* [in] */ AcDimCenterType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterMarkSize( 
            /* [retval][out] */ double *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterMarkSize( 
            /* [in] */ double Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineSuppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadType( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadType( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadBlock( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadBlock( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrForm( 
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrForm( 
            /* [in] */ VARIANT_BOOL bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrReference( 
            /* [retval][out] */ VARIANT_BOOL *bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrReference( 
            /* [in] */ VARIANT_BOOL bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrExpression( 
            /* [retval][out] */ BSTR *bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrExpression( 
            /* [in] */ BSTR bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrValue( 
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrValue( 
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrDesc( 
            /* [retval][out] */ BSTR *bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrDesc( 
            /* [in] */ BSTR bstrDescription) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimRadialVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimRadial * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimRadial * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimRadial * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimRadial * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimRadial * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimRadial * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimRadial * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimRadial * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimRadial * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimRadial * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimRadial * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimRadial * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimRadial * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimRadial * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimRadial * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimRadial * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimRadial * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimRadial * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimRadial * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimRadial * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimRadial * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimRadial * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimRadial * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimRadial * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimRadial * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LeaderLength )( 
            IAcadDimRadial * This,
            /* [in] */ double Length);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimRadial * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterType )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimCenterType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterType )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimCenterType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterMarkSize )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterMarkSize )( 
            IAcadDimRadial * This,
            /* [in] */ double Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimRadial * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineSuppress )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineSuppress )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimRadial * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimRadial * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimRadial * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadType )( 
            IAcadDimRadial * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadType )( 
            IAcadDimRadial * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimRadial * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadBlock )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadBlock )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrForm )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrForm )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrReference )( 
            IAcadDimRadial * This,
            /* [retval][out] */ VARIANT_BOOL *bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrReference )( 
            IAcadDimRadial * This,
            /* [in] */ VARIANT_BOOL bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrName )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrName )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrExpression )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrExpression )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrValue )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrValue )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrDesc )( 
            IAcadDimRadial * This,
            /* [retval][out] */ BSTR *bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrDesc )( 
            IAcadDimRadial * This,
            /* [in] */ BSTR bstrDescription);
        
        END_INTERFACE
    } IAcadDimRadialVtbl;

    interface IAcadDimRadial
    {
        CONST_VTBL struct IAcadDimRadialVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimRadial_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimRadial_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimRadial_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimRadial_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimRadial_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimRadial_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimRadial_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimRadial_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimRadial_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimRadial_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimRadial_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimRadial_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimRadial_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimRadial_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimRadial_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimRadial_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimRadial_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimRadial_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimRadial_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimRadial_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimRadial_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimRadial_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimRadial_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimRadial_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimRadial_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimRadial_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimRadial_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimRadial_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimRadial_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimRadial_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimRadial_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimRadial_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimRadial_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimRadial_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimRadial_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimRadial_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimRadial_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimRadial_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimRadial_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimRadial_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimRadial_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimRadial_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimRadial_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimRadial_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimRadial_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimRadial_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimRadial_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimRadial_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimRadial_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimRadial_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimRadial_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimRadial_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimRadial_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimRadial_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimRadial_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimRadial_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimRadial_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimRadial_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimRadial_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimRadial_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimRadial_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimRadial_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimRadial_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimRadial_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimRadial_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimRadial_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimRadial_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimRadial_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimRadial_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimRadial_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimRadial_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimRadial_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimRadial_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimRadial_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimRadial_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimRadial_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimRadial_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimRadial_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimRadial_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimRadial_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimRadial_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimRadial_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimRadial_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimRadial_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimRadial_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimRadial_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimRadial_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimRadial_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimRadial_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimRadial_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimRadial_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimRadial_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimRadial_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimRadial_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimRadial_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimRadial_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimRadial_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimRadial_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimRadial_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimRadial_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimRadial_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimRadial_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimRadial_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimRadial_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimRadial_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimRadial_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimRadial_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimRadial_put_LeaderLength(This,Length)	\
    ( (This)->lpVtbl -> put_LeaderLength(This,Length) ) 

#define IAcadDimRadial_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimRadial_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimRadial_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimRadial_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimRadial_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimRadial_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimRadial_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimRadial_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimRadial_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimRadial_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimRadial_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimRadial_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimRadial_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimRadial_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimRadial_get_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Prefix) ) 

#define IAcadDimRadial_put_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Prefix) ) 

#define IAcadDimRadial_get_CenterType(This,Type)	\
    ( (This)->lpVtbl -> get_CenterType(This,Type) ) 

#define IAcadDimRadial_put_CenterType(This,Type)	\
    ( (This)->lpVtbl -> put_CenterType(This,Type) ) 

#define IAcadDimRadial_get_CenterMarkSize(This,Type)	\
    ( (This)->lpVtbl -> get_CenterMarkSize(This,Type) ) 

#define IAcadDimRadial_put_CenterMarkSize(This,Type)	\
    ( (This)->lpVtbl -> put_CenterMarkSize(This,Type) ) 

#define IAcadDimRadial_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDimRadial_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDimRadial_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimRadial_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimRadial_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimRadial_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimRadial_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimRadial_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimRadial_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimRadial_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimRadial_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimRadial_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimRadial_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimRadial_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimRadial_get_DimLineSuppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLineSuppress(This,bSuppress) ) 

#define IAcadDimRadial_put_DimLineSuppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLineSuppress(This,bSuppress) ) 

#define IAcadDimRadial_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimRadial_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimRadial_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimRadial_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimRadial_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimRadial_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimRadial_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimRadial_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimRadial_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadial_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadial_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadial_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadial_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimRadial_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimRadial_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimRadial_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimRadial_get_ArrowheadType(This,Type)	\
    ( (This)->lpVtbl -> get_ArrowheadType(This,Type) ) 

#define IAcadDimRadial_put_ArrowheadType(This,Type)	\
    ( (This)->lpVtbl -> put_ArrowheadType(This,Type) ) 

#define IAcadDimRadial_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimRadial_get_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadBlock(This,BlockName) ) 

#define IAcadDimRadial_put_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadBlock(This,BlockName) ) 

#define IAcadDimRadial_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimRadial_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDimRadial_get_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> get_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimRadial_put_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> put_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimRadial_get_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> get_DimConstrReference(This,bIsReference) ) 

#define IAcadDimRadial_put_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> put_DimConstrReference(This,bIsReference) ) 

#define IAcadDimRadial_get_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> get_DimConstrName(This,bstrName) ) 

#define IAcadDimRadial_put_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> put_DimConstrName(This,bstrName) ) 

#define IAcadDimRadial_get_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> get_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimRadial_put_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> put_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimRadial_get_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> get_DimConstrValue(This,value) ) 

#define IAcadDimRadial_put_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> put_DimConstrValue(This,value) ) 

#define IAcadDimRadial_get_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> get_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimRadial_put_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> put_DimConstrDesc(This,bstrDescription) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltTextPrefix_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimRadial_get_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltTextPrefix_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimRadial_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltTextSuffix_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimRadial_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltTextSuffix_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimRadial_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_CenterType_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ AcDimCenterType *Type);


void __RPC_STUB IAcadDimRadial_get_CenterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_CenterType_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ AcDimCenterType Type);


void __RPC_STUB IAcadDimRadial_put_CenterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_CenterMarkSize_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ double *Type);


void __RPC_STUB IAcadDimRadial_get_CenterMarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_CenterMarkSize_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ double Type);


void __RPC_STUB IAcadDimRadial_put_CenterMarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimensionLineColor_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimRadial_get_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimensionLineColor_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimRadial_put_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimRadial_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimRadial_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_FractionFormat_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimRadial_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_FractionFormat_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimRadial_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_Fit_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimRadial_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_Fit_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimRadial_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_LinearScaleFactor_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimRadial_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_LinearScaleFactor_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimRadial_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_UnitsFormat_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimRadial_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_UnitsFormat_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimRadial_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_RoundDistance_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimRadial_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_RoundDistance_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimRadial_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimLineSuppress_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimRadial_get_DimLineSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimLineSuppress_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimRadial_put_DimLineSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_TextInsideAlign_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadial_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_TextInsideAlign_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadial_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_TextInside_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadial_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_TextInside_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadial_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_ForceLineInside_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadial_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_ForceLineInside_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadial_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_TextOutsideAlign_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadial_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_TextOutsideAlign_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadial_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltSuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltSuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_SuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_SuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_SuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_SuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadial_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadial_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimensionLineWeight_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimRadial_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimensionLineWeight_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimRadial_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_ArrowheadSize_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimRadial_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_ArrowheadSize_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimRadial_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_ArrowheadType_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimRadial_get_ArrowheadType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_ArrowheadType_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimRadial_put_ArrowheadType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_Measurement_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimRadial_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_ArrowheadBlock_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimRadial_get_ArrowheadBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_ArrowheadBlock_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimRadial_put_ArrowheadBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimensionLinetype_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimRadial_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimensionLinetype_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimRadial_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimConstrForm_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bIsDynamic);


void __RPC_STUB IAcadDimRadial_get_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimConstrForm_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bIsDynamic);


void __RPC_STUB IAcadDimRadial_put_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimConstrReference_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ VARIANT_BOOL *bIsReference);


void __RPC_STUB IAcadDimRadial_get_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimConstrReference_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ VARIANT_BOOL bIsReference);


void __RPC_STUB IAcadDimRadial_put_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimConstrName_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadDimRadial_get_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimConstrName_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadDimRadial_put_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimConstrExpression_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *bstrExpression);


void __RPC_STUB IAcadDimRadial_get_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimConstrExpression_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR bstrExpression);


void __RPC_STUB IAcadDimRadial_put_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimConstrValue_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadDimRadial_get_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimConstrValue_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadDimRadial_put_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_get_DimConstrDesc_Proxy( 
    IAcadDimRadial * This,
    /* [retval][out] */ BSTR *bstrDescription);


void __RPC_STUB IAcadDimRadial_get_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadial_put_DimConstrDesc_Proxy( 
    IAcadDimRadial * This,
    /* [in] */ BSTR bstrDescription);


void __RPC_STUB IAcadDimRadial_put_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimRadial_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimRadial,0xBA31C14D,0xF408,0x405B,0x92,0x8A,0x19,0x2D,0xB5,0x6F,0x8C,0xCE);

#ifdef __cplusplus

class DECLSPEC_UUID("BA31C14D-F408-405B-928A-192DB56F8CCE")
AcadDimRadial;
#endif

#ifndef __IAcadDimRotated_INTERFACE_DEFINED__
#define __IAcadDimRotated_INTERFACE_DEFINED__

/* interface IAcadDimRotated */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimRotated,0x7E690BA9,0x20E9,0x4A12,0xB3,0x75,0x2B,0x51,0x9D,0x0A,0x15,0x90);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7E690BA9-20E9-4A12-B375-2B519D0A1590")
    IAcadDimRotated : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalTextPosition( 
            /* [retval][out] */ AcDimHorizontalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalTextPosition( 
            /* [in] */ AcDimHorizontalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineOffset( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineOffset( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLenSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLenSuppress( 
            /* [in] */ VARIANT_BOOL bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLen( 
            /* [retval][out] */ double *FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLen( 
            /* [in] */ double FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrForm( 
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrForm( 
            /* [in] */ VARIANT_BOOL bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrReference( 
            /* [retval][out] */ VARIANT_BOOL *bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrReference( 
            /* [in] */ VARIANT_BOOL bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrExpression( 
            /* [retval][out] */ BSTR *bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrExpression( 
            /* [in] */ BSTR bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrValue( 
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrValue( 
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrDesc( 
            /* [retval][out] */ BSTR *bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrDesc( 
            /* [in] */ BSTR bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimRotatedVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimRotated * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimRotated * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimRotated * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimRotated * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimRotated * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimRotated * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimRotated * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimRotated * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimRotated * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimRotated * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimRotated * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimRotated * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimRotated * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimRotated * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimRotated * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimRotated * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimRotated * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimRotated * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimRotated * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimRotated * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimRotated * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimRotated * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimRotated * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimRotated * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimRotated * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineColor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineColor )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineExtend )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineExtend )( 
            IAcadDimRotated * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineExtend )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineExtend )( 
            IAcadDimRotated * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalTextPosition )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimHorizontalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalTextPosition )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimHorizontalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineWeight )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_LWEIGHT *lweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineWeight )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_LWEIGHT lweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimRotated * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine1Suppress )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine1Suppress )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine2Suppress )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine2Suppress )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Suppress )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Suppress )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Suppress )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Suppress )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineInside )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineInside )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineOffset )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineOffset )( 
            IAcadDimRotated * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimRotated * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimRotated * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimRotated * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Type )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Type )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Type )( 
            IAcadDimRotated * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Type )( 
            IAcadDimRotated * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Block )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Block )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Block )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Block )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Linetype )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Linetype )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Linetype )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Linetype )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLenSuppress )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLenSuppress )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLen )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLen )( 
            IAcadDimRotated * This,
            /* [in] */ double FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrForm )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrForm )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrReference )( 
            IAcadDimRotated * This,
            /* [retval][out] */ VARIANT_BOOL *bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrReference )( 
            IAcadDimRotated * This,
            /* [in] */ VARIANT_BOOL bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrName )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrName )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrExpression )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrExpression )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrValue )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrValue )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrDesc )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrDesc )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsSuffix )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsSuffix )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsFactor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsFactor )( 
            IAcadDimRotated * This,
            /* [in] */ double factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsSuffix )( 
            IAcadDimRotated * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsSuffix )( 
            IAcadDimRotated * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsFactor )( 
            IAcadDimRotated * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsFactor )( 
            IAcadDimRotated * This,
            /* [in] */ double factor);
        
        END_INTERFACE
    } IAcadDimRotatedVtbl;

    interface IAcadDimRotated
    {
        CONST_VTBL struct IAcadDimRotatedVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimRotated_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimRotated_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimRotated_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimRotated_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimRotated_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimRotated_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimRotated_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimRotated_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimRotated_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimRotated_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimRotated_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimRotated_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimRotated_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimRotated_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimRotated_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimRotated_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimRotated_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimRotated_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimRotated_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimRotated_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimRotated_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimRotated_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimRotated_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimRotated_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimRotated_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimRotated_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimRotated_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimRotated_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimRotated_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimRotated_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimRotated_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimRotated_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimRotated_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimRotated_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimRotated_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimRotated_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimRotated_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimRotated_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimRotated_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimRotated_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimRotated_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimRotated_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimRotated_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimRotated_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimRotated_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimRotated_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimRotated_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimRotated_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimRotated_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimRotated_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimRotated_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimRotated_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimRotated_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimRotated_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimRotated_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimRotated_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimRotated_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimRotated_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimRotated_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimRotated_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimRotated_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimRotated_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimRotated_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimRotated_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimRotated_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimRotated_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimRotated_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimRotated_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimRotated_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimRotated_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimRotated_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimRotated_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimRotated_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimRotated_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimRotated_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimRotated_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimRotated_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimRotated_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimRotated_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimRotated_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimRotated_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimRotated_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimRotated_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimRotated_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimRotated_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimRotated_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimRotated_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimRotated_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimRotated_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimRotated_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimRotated_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimRotated_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimRotated_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimRotated_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimRotated_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimRotated_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimRotated_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimRotated_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimRotated_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimRotated_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimRotated_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimRotated_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimRotated_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimRotated_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimRotated_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimRotated_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimRotated_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimRotated_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimRotated_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimRotated_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimRotated_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimRotated_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimRotated_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimRotated_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimRotated_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimRotated_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimRotated_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimRotated_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimRotated_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimRotated_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimRotated_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimRotated_get_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Prefix) ) 

#define IAcadDimRotated_put_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Prefix) ) 

#define IAcadDimRotated_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDimRotated_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDimRotated_get_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_ExtensionLineColor(This,Type) ) 

#define IAcadDimRotated_put_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_ExtensionLineColor(This,Type) ) 

#define IAcadDimRotated_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimRotated_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimRotated_get_DimensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_DimensionLineExtend(This,extend) ) 

#define IAcadDimRotated_put_DimensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_DimensionLineExtend(This,extend) ) 

#define IAcadDimRotated_get_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_ExtensionLineExtend(This,extend) ) 

#define IAcadDimRotated_put_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_ExtensionLineExtend(This,extend) ) 

#define IAcadDimRotated_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimRotated_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimRotated_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimRotated_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimRotated_get_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_HorizontalTextPosition(This,type) ) 

#define IAcadDimRotated_put_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_HorizontalTextPosition(This,type) ) 

#define IAcadDimRotated_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimRotated_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimRotated_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimRotated_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimRotated_get_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> get_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimRotated_put_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> put_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimRotated_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimRotated_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimRotated_get_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimRotated_put_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimRotated_get_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimRotated_put_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimRotated_get_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimRotated_put_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimRotated_get_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimRotated_put_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimRotated_get_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_DimLineInside(This,bInside) ) 

#define IAcadDimRotated_put_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_DimLineInside(This,bInside) ) 

#define IAcadDimRotated_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimRotated_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimRotated_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimRotated_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimRotated_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimRotated_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimRotated_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimRotated_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimRotated_get_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> get_ExtensionLineOffset(This,offset) ) 

#define IAcadDimRotated_put_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> put_ExtensionLineOffset(This,offset) ) 

#define IAcadDimRotated_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRotated_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRotated_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRotated_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRotated_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimRotated_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimRotated_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimRotated_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimRotated_get_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead1Type(This,Type) ) 

#define IAcadDimRotated_put_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead1Type(This,Type) ) 

#define IAcadDimRotated_get_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead2Type(This,Type) ) 

#define IAcadDimRotated_put_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead2Type(This,Type) ) 

#define IAcadDimRotated_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimRotated_get_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimRotated_put_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimRotated_get_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimRotated_put_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimRotated_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimRotated_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDimRotated_get_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimRotated_put_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimRotated_get_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimRotated_put_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimRotated_get_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimRotated_put_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimRotated_get_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimRotated_put_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimRotated_get_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> get_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimRotated_put_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> put_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDimRotated_get_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> get_DimConstrReference(This,bIsReference) ) 

#define IAcadDimRotated_put_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> put_DimConstrReference(This,bIsReference) ) 

#define IAcadDimRotated_get_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> get_DimConstrName(This,bstrName) ) 

#define IAcadDimRotated_put_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> put_DimConstrName(This,bstrName) ) 

#define IAcadDimRotated_get_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> get_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimRotated_put_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> put_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDimRotated_get_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> get_DimConstrValue(This,value) ) 

#define IAcadDimRotated_put_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> put_DimConstrValue(This,value) ) 

#define IAcadDimRotated_get_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> get_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimRotated_put_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> put_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDimRotated_get_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimRotated_put_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimRotated_get_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_SubUnitsFactor(This,factor) ) 

#define IAcadDimRotated_put_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_SubUnitsFactor(This,factor) ) 

#define IAcadDimRotated_get_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimRotated_put_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimRotated_get_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_AltSubUnitsFactor(This,factor) ) 

#define IAcadDimRotated_put_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_AltSubUnitsFactor(This,factor) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltTextPrefix_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimRotated_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltTextSuffix_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimRotated_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltTextSuffix_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimRotated_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimensionLineColor_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimRotated_get_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimensionLineColor_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimRotated_put_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtensionLineColor_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimRotated_get_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtensionLineColor_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimRotated_put_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimRotated_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimRotated_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimensionLineExtend_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimRotated_get_DimensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimensionLineExtend_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimRotated_put_DimensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtensionLineExtend_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimRotated_get_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtensionLineExtend_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimRotated_put_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_Fit_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimRotated_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_Fit_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimRotated_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_FractionFormat_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimRotated_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_FractionFormat_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimRotated_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_HorizontalTextPosition_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimHorizontalJustification *type);


void __RPC_STUB IAcadDimRotated_get_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_HorizontalTextPosition_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimHorizontalJustification type);


void __RPC_STUB IAcadDimRotated_put_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_LinearScaleFactor_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimRotated_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_LinearScaleFactor_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimRotated_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_UnitsFormat_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimRotated_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_UnitsFormat_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimRotated_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtensionLineWeight_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ ACAD_LWEIGHT *lweight);


void __RPC_STUB IAcadDimRotated_get_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtensionLineWeight_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ ACAD_LWEIGHT lweight);


void __RPC_STUB IAcadDimRotated_put_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_RoundDistance_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimRotated_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_RoundDistance_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimRotated_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimLine1Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimRotated_get_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimLine1Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimRotated_put_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimLine2Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimRotated_get_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimLine2Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimRotated_put_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtLine1Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimRotated_get_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtLine1Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimRotated_put_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtLine2Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimRotated_get_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtLine2Suppress_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimRotated_put_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimLineInside_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRotated_get_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimLineInside_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRotated_put_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_TextInsideAlign_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRotated_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_TextInsideAlign_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRotated_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_TextInside_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRotated_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_TextInside_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRotated_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ForceLineInside_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRotated_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ForceLineInside_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRotated_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_TextOutsideAlign_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRotated_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_TextOutsideAlign_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRotated_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtensionLineOffset_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *offset);


void __RPC_STUB IAcadDimRotated_get_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtensionLineOffset_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double offset);


void __RPC_STUB IAcadDimRotated_put_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltSuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltSuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_SuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_SuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_SuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_SuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRotated_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRotated_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimensionLineWeight_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimRotated_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimensionLineWeight_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimRotated_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ArrowheadSize_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimRotated_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ArrowheadSize_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimRotated_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_Arrowhead1Type_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimRotated_get_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_Arrowhead1Type_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimRotated_put_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_Arrowhead2Type_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimRotated_get_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_Arrowhead2Type_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimRotated_put_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_Measurement_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimRotated_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_Arrowhead1Block_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimRotated_get_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_Arrowhead1Block_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimRotated_put_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_Arrowhead2Block_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimRotated_get_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_Arrowhead2Block_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimRotated_put_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimensionLinetype_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimRotated_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimensionLinetype_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimRotated_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtLine1Linetype_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimRotated_get_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtLine1Linetype_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimRotated_put_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtLine2Linetype_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimRotated_get_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtLine2Linetype_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimRotated_put_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bFixedLen);


void __RPC_STUB IAcadDimRotated_get_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bFixedLen);


void __RPC_STUB IAcadDimRotated_put_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_ExtLineFixedLen_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *FixedLen);


void __RPC_STUB IAcadDimRotated_get_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_ExtLineFixedLen_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double FixedLen);


void __RPC_STUB IAcadDimRotated_put_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimConstrForm_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bIsDynamic);


void __RPC_STUB IAcadDimRotated_get_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimConstrForm_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bIsDynamic);


void __RPC_STUB IAcadDimRotated_put_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimConstrReference_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ VARIANT_BOOL *bIsReference);


void __RPC_STUB IAcadDimRotated_get_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimConstrReference_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ VARIANT_BOOL bIsReference);


void __RPC_STUB IAcadDimRotated_put_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimConstrName_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadDimRotated_get_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimConstrName_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadDimRotated_put_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimConstrExpression_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *bstrExpression);


void __RPC_STUB IAcadDimRotated_get_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimConstrExpression_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR bstrExpression);


void __RPC_STUB IAcadDimRotated_put_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimConstrValue_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadDimRotated_get_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimConstrValue_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadDimRotated_put_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_DimConstrDesc_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *bstrDescription);


void __RPC_STUB IAcadDimRotated_get_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_DimConstrDesc_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR bstrDescription);


void __RPC_STUB IAcadDimRotated_put_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_SubUnitsSuffix_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimRotated_get_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_SubUnitsSuffix_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimRotated_put_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_SubUnitsFactor_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimRotated_get_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_SubUnitsFactor_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimRotated_put_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltSubUnitsSuffix_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimRotated_get_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltSubUnitsSuffix_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimRotated_put_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_get_AltSubUnitsFactor_Proxy( 
    IAcadDimRotated * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimRotated_get_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRotated_put_AltSubUnitsFactor_Proxy( 
    IAcadDimRotated * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimRotated_put_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimRotated_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimRotated,0xE2AEE1D6,0x7BBB,0x4D6A,0x9B,0x96,0xD5,0x29,0xD5,0x6E,0x7C,0xCD);

#ifdef __cplusplus

class DECLSPEC_UUID("E2AEE1D6-7BBB-4D6A-9B96-D529D56E7CCD")
AcadDimRotated;
#endif

#ifndef __IAcadDim3PointAngular_INTERFACE_DEFINED__
#define __IAcadDim3PointAngular_INTERFACE_DEFINED__

/* interface IAcadDim3PointAngular */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDim3PointAngular,0xF96FAC80,0x084D,0x4DAF,0x84,0xB5,0xF1,0x4F,0x1F,0x66,0x05,0xBA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F96FAC80-084D-4DAF-84B5-F14F1F6605BA")
    IAcadDim3PointAngular : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1EndPoint( 
            /* [retval][out] */ VARIANT *xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1EndPoint( 
            /* [in] */ VARIANT xLine1Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2EndPoint( 
            /* [retval][out] */ VARIANT *xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2EndPoint( 
            /* [in] */ VARIANT xLine2Point) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleVertex( 
            /* [retval][out] */ VARIANT *AngleVertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_AngleVertex( 
            /* [in] */ VARIANT AngleVertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextPrecision( 
            /* [retval][out] */ AcDimPrecision *AngleVertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextPrecision( 
            /* [in] */ AcDimPrecision AngleVertex) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleFormat( 
            /* [retval][out] */ AcAngleUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AngleFormat( 
            /* [in] */ AcAngleUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalTextPosition( 
            /* [retval][out] */ AcDimHorizontalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalTextPosition( 
            /* [in] */ AcDimHorizontalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineOffset( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineOffset( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ ACAD_ANGLE *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLenSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLenSuppress( 
            /* [in] */ VARIANT_BOOL bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLen( 
            /* [retval][out] */ double *FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLen( 
            /* [in] */ double FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrForm( 
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrForm( 
            /* [in] */ VARIANT_BOOL bIsDynamic) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrReference( 
            /* [retval][out] */ VARIANT_BOOL *bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrReference( 
            /* [in] */ VARIANT_BOOL bIsReference) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrName( 
            /* [retval][out] */ BSTR *bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrExpression( 
            /* [retval][out] */ BSTR *bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrExpression( 
            /* [in] */ BSTR bstrExpression) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrValue( 
            /* [retval][out] */ BSTR *value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrValue( 
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimConstrDesc( 
            /* [retval][out] */ BSTR *bstrDescription) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimConstrDesc( 
            /* [in] */ BSTR bstrDescription) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDim3PointAngularVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDim3PointAngular * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDim3PointAngular * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDim3PointAngular * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDim3PointAngular * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDim3PointAngular * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDim3PointAngular * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDim3PointAngular * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDim3PointAngular * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDim3PointAngular * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDim3PointAngular * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDim3PointAngular * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDim3PointAngular * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDim3PointAngular * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDim3PointAngular * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDim3PointAngular * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1EndPoint )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT *xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1EndPoint )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT xLine1Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2EndPoint )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT *xLine2Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2EndPoint )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT xLine2Point);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AngleVertex )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT *AngleVertex);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AngleVertex )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT AngleVertex);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrecision )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimPrecision *AngleVertex);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrecision )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimPrecision AngleVertex);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AngleFormat )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcAngleUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AngleFormat )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcAngleUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineColor )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineColor )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineExtend )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineExtend )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalTextPosition )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimHorizontalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalTextPosition )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimHorizontalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineWeight )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_LWEIGHT *lweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineWeight )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_LWEIGHT lweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine1Suppress )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine1Suppress )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine2Suppress )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine2Suppress )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Suppress )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Suppress )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Suppress )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Suppress )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineInside )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineInside )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineOffset )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineOffset )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDim3PointAngular * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Type )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Type )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Type )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Type )( 
            IAcadDim3PointAngular * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ ACAD_ANGLE *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Block )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Block )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Block )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Block )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Linetype )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Linetype )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Linetype )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Linetype )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLenSuppress )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLenSuppress )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLen )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ double *FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLen )( 
            IAcadDim3PointAngular * This,
            /* [in] */ double FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrForm )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrForm )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bIsDynamic);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrReference )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ VARIANT_BOOL *bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrReference )( 
            IAcadDim3PointAngular * This,
            /* [in] */ VARIANT_BOOL bIsReference);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrName )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrName )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrExpression )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrExpression )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR bstrExpression);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrValue )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *value);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrValue )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimConstrDesc )( 
            IAcadDim3PointAngular * This,
            /* [retval][out] */ BSTR *bstrDescription);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimConstrDesc )( 
            IAcadDim3PointAngular * This,
            /* [in] */ BSTR bstrDescription);
        
        END_INTERFACE
    } IAcadDim3PointAngularVtbl;

    interface IAcadDim3PointAngular
    {
        CONST_VTBL struct IAcadDim3PointAngularVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDim3PointAngular_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDim3PointAngular_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDim3PointAngular_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDim3PointAngular_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDim3PointAngular_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDim3PointAngular_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDim3PointAngular_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDim3PointAngular_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDim3PointAngular_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDim3PointAngular_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDim3PointAngular_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDim3PointAngular_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDim3PointAngular_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDim3PointAngular_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDim3PointAngular_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDim3PointAngular_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDim3PointAngular_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDim3PointAngular_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDim3PointAngular_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDim3PointAngular_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDim3PointAngular_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDim3PointAngular_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDim3PointAngular_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDim3PointAngular_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDim3PointAngular_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDim3PointAngular_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDim3PointAngular_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDim3PointAngular_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDim3PointAngular_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDim3PointAngular_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDim3PointAngular_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDim3PointAngular_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDim3PointAngular_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDim3PointAngular_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDim3PointAngular_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDim3PointAngular_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDim3PointAngular_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDim3PointAngular_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDim3PointAngular_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDim3PointAngular_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDim3PointAngular_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDim3PointAngular_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDim3PointAngular_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDim3PointAngular_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDim3PointAngular_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDim3PointAngular_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDim3PointAngular_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDim3PointAngular_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDim3PointAngular_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDim3PointAngular_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDim3PointAngular_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDim3PointAngular_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDim3PointAngular_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDim3PointAngular_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDim3PointAngular_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDim3PointAngular_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDim3PointAngular_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDim3PointAngular_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDim3PointAngular_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDim3PointAngular_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDim3PointAngular_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDim3PointAngular_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDim3PointAngular_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDim3PointAngular_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDim3PointAngular_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDim3PointAngular_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDim3PointAngular_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDim3PointAngular_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDim3PointAngular_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDim3PointAngular_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDim3PointAngular_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDim3PointAngular_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDim3PointAngular_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDim3PointAngular_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDim3PointAngular_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDim3PointAngular_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDim3PointAngular_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDim3PointAngular_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDim3PointAngular_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDim3PointAngular_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDim3PointAngular_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDim3PointAngular_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDim3PointAngular_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDim3PointAngular_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDim3PointAngular_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDim3PointAngular_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDim3PointAngular_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDim3PointAngular_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDim3PointAngular_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDim3PointAngular_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDim3PointAngular_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDim3PointAngular_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDim3PointAngular_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDim3PointAngular_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDim3PointAngular_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDim3PointAngular_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDim3PointAngular_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDim3PointAngular_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDim3PointAngular_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDim3PointAngular_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDim3PointAngular_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDim3PointAngular_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDim3PointAngular_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDim3PointAngular_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDim3PointAngular_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDim3PointAngular_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDim3PointAngular_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDim3PointAngular_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDim3PointAngular_get_ExtLine1EndPoint(This,xLine1Point)	\
    ( (This)->lpVtbl -> get_ExtLine1EndPoint(This,xLine1Point) ) 

#define IAcadDim3PointAngular_put_ExtLine1EndPoint(This,xLine1Point)	\
    ( (This)->lpVtbl -> put_ExtLine1EndPoint(This,xLine1Point) ) 

#define IAcadDim3PointAngular_get_ExtLine2EndPoint(This,xLine2Point)	\
    ( (This)->lpVtbl -> get_ExtLine2EndPoint(This,xLine2Point) ) 

#define IAcadDim3PointAngular_put_ExtLine2EndPoint(This,xLine2Point)	\
    ( (This)->lpVtbl -> put_ExtLine2EndPoint(This,xLine2Point) ) 

#define IAcadDim3PointAngular_get_AngleVertex(This,AngleVertex)	\
    ( (This)->lpVtbl -> get_AngleVertex(This,AngleVertex) ) 

#define IAcadDim3PointAngular_put_AngleVertex(This,AngleVertex)	\
    ( (This)->lpVtbl -> put_AngleVertex(This,AngleVertex) ) 

#define IAcadDim3PointAngular_get_TextPrecision(This,AngleVertex)	\
    ( (This)->lpVtbl -> get_TextPrecision(This,AngleVertex) ) 

#define IAcadDim3PointAngular_put_TextPrecision(This,AngleVertex)	\
    ( (This)->lpVtbl -> put_TextPrecision(This,AngleVertex) ) 

#define IAcadDim3PointAngular_get_AngleFormat(This,format)	\
    ( (This)->lpVtbl -> get_AngleFormat(This,format) ) 

#define IAcadDim3PointAngular_put_AngleFormat(This,format)	\
    ( (This)->lpVtbl -> put_AngleFormat(This,format) ) 

#define IAcadDim3PointAngular_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDim3PointAngular_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDim3PointAngular_get_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_ExtensionLineColor(This,Type) ) 

#define IAcadDim3PointAngular_put_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_ExtensionLineColor(This,Type) ) 

#define IAcadDim3PointAngular_get_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_ExtensionLineExtend(This,extend) ) 

#define IAcadDim3PointAngular_put_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_ExtensionLineExtend(This,extend) ) 

#define IAcadDim3PointAngular_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDim3PointAngular_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDim3PointAngular_get_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_HorizontalTextPosition(This,type) ) 

#define IAcadDim3PointAngular_put_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_HorizontalTextPosition(This,type) ) 

#define IAcadDim3PointAngular_get_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> get_ExtensionLineWeight(This,lweight) ) 

#define IAcadDim3PointAngular_put_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> put_ExtensionLineWeight(This,lweight) ) 

#define IAcadDim3PointAngular_get_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_put_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_get_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_put_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_get_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_put_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_get_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_put_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDim3PointAngular_get_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_DimLineInside(This,bInside) ) 

#define IAcadDim3PointAngular_put_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_DimLineInside(This,bInside) ) 

#define IAcadDim3PointAngular_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDim3PointAngular_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDim3PointAngular_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDim3PointAngular_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDim3PointAngular_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDim3PointAngular_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDim3PointAngular_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDim3PointAngular_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDim3PointAngular_get_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> get_ExtensionLineOffset(This,offset) ) 

#define IAcadDim3PointAngular_put_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> put_ExtensionLineOffset(This,offset) ) 

#define IAcadDim3PointAngular_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDim3PointAngular_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDim3PointAngular_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDim3PointAngular_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDim3PointAngular_get_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead1Type(This,Type) ) 

#define IAcadDim3PointAngular_put_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead1Type(This,Type) ) 

#define IAcadDim3PointAngular_get_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead2Type(This,Type) ) 

#define IAcadDim3PointAngular_put_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead2Type(This,Type) ) 

#define IAcadDim3PointAngular_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDim3PointAngular_get_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead1Block(This,BlockName) ) 

#define IAcadDim3PointAngular_put_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead1Block(This,BlockName) ) 

#define IAcadDim3PointAngular_get_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead2Block(This,BlockName) ) 

#define IAcadDim3PointAngular_put_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead2Block(This,BlockName) ) 

#define IAcadDim3PointAngular_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDim3PointAngular_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDim3PointAngular_get_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDim3PointAngular_put_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDim3PointAngular_get_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDim3PointAngular_put_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDim3PointAngular_get_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDim3PointAngular_put_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDim3PointAngular_get_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDim3PointAngular_put_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDim3PointAngular_get_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> get_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDim3PointAngular_put_DimConstrForm(This,bIsDynamic)	\
    ( (This)->lpVtbl -> put_DimConstrForm(This,bIsDynamic) ) 

#define IAcadDim3PointAngular_get_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> get_DimConstrReference(This,bIsReference) ) 

#define IAcadDim3PointAngular_put_DimConstrReference(This,bIsReference)	\
    ( (This)->lpVtbl -> put_DimConstrReference(This,bIsReference) ) 

#define IAcadDim3PointAngular_get_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> get_DimConstrName(This,bstrName) ) 

#define IAcadDim3PointAngular_put_DimConstrName(This,bstrName)	\
    ( (This)->lpVtbl -> put_DimConstrName(This,bstrName) ) 

#define IAcadDim3PointAngular_get_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> get_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDim3PointAngular_put_DimConstrExpression(This,bstrExpression)	\
    ( (This)->lpVtbl -> put_DimConstrExpression(This,bstrExpression) ) 

#define IAcadDim3PointAngular_get_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> get_DimConstrValue(This,value) ) 

#define IAcadDim3PointAngular_put_DimConstrValue(This,value)	\
    ( (This)->lpVtbl -> put_DimConstrValue(This,value) ) 

#define IAcadDim3PointAngular_get_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> get_DimConstrDesc(This,bstrDescription) ) 

#define IAcadDim3PointAngular_put_DimConstrDesc(This,bstrDescription)	\
    ( (This)->lpVtbl -> put_DimConstrDesc(This,bstrDescription) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtensionLineColor_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDim3PointAngular_put_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtensionLineExtend_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDim3PointAngular_get_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtensionLineExtend_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDim3PointAngular_put_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_Fit_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDim3PointAngular_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_Fit_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDim3PointAngular_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_HorizontalTextPosition_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ AcDimHorizontalJustification *type);


void __RPC_STUB IAcadDim3PointAngular_get_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_HorizontalTextPosition_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ AcDimHorizontalJustification type);


void __RPC_STUB IAcadDim3PointAngular_put_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtensionLineWeight_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ ACAD_LWEIGHT *lweight);


void __RPC_STUB IAcadDim3PointAngular_get_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtensionLineWeight_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ ACAD_LWEIGHT lweight);


void __RPC_STUB IAcadDim3PointAngular_put_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimLine1Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDim3PointAngular_get_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimLine1Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDim3PointAngular_put_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimLine2Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDim3PointAngular_get_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimLine2Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDim3PointAngular_put_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtLine1Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDim3PointAngular_get_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtLine1Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDim3PointAngular_put_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtLine2Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDim3PointAngular_get_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtLine2Suppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDim3PointAngular_put_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimLineInside_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDim3PointAngular_get_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimLineInside_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDim3PointAngular_put_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_TextInsideAlign_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDim3PointAngular_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_TextInsideAlign_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDim3PointAngular_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_TextInside_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDim3PointAngular_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_TextInside_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDim3PointAngular_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ForceLineInside_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDim3PointAngular_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ForceLineInside_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDim3PointAngular_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_TextOutsideAlign_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDim3PointAngular_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_TextOutsideAlign_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDim3PointAngular_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtensionLineOffset_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ double *offset);


void __RPC_STUB IAcadDim3PointAngular_get_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtensionLineOffset_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ double offset);


void __RPC_STUB IAcadDim3PointAngular_put_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimensionLineWeight_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDim3PointAngular_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimensionLineWeight_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDim3PointAngular_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ArrowheadSize_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDim3PointAngular_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ArrowheadSize_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDim3PointAngular_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_Arrowhead1Type_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDim3PointAngular_get_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_Arrowhead1Type_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDim3PointAngular_put_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_Arrowhead2Type_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDim3PointAngular_get_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_Arrowhead2Type_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDim3PointAngular_put_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_Measurement_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ ACAD_ANGLE *bVal);


void __RPC_STUB IAcadDim3PointAngular_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_Arrowhead1Block_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDim3PointAngular_get_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_Arrowhead1Block_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDim3PointAngular_put_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_Arrowhead2Block_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDim3PointAngular_get_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_Arrowhead2Block_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDim3PointAngular_put_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimensionLinetype_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDim3PointAngular_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimensionLinetype_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDim3PointAngular_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtLine1Linetype_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDim3PointAngular_get_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtLine1Linetype_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDim3PointAngular_put_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtLine2Linetype_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDim3PointAngular_get_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtLine2Linetype_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDim3PointAngular_put_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtLineFixedLenSuppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bFixedLen);


void __RPC_STUB IAcadDim3PointAngular_get_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtLineFixedLenSuppress_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bFixedLen);


void __RPC_STUB IAcadDim3PointAngular_put_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_ExtLineFixedLen_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ double *FixedLen);


void __RPC_STUB IAcadDim3PointAngular_get_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_ExtLineFixedLen_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ double FixedLen);


void __RPC_STUB IAcadDim3PointAngular_put_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimConstrForm_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bIsDynamic);


void __RPC_STUB IAcadDim3PointAngular_get_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimConstrForm_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bIsDynamic);


void __RPC_STUB IAcadDim3PointAngular_put_DimConstrForm_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimConstrReference_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ VARIANT_BOOL *bIsReference);


void __RPC_STUB IAcadDim3PointAngular_get_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimConstrReference_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ VARIANT_BOOL bIsReference);


void __RPC_STUB IAcadDim3PointAngular_put_DimConstrReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimConstrName_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *bstrName);


void __RPC_STUB IAcadDim3PointAngular_get_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimConstrName_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IAcadDim3PointAngular_put_DimConstrName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimConstrExpression_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *bstrExpression);


void __RPC_STUB IAcadDim3PointAngular_get_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimConstrExpression_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR bstrExpression);


void __RPC_STUB IAcadDim3PointAngular_put_DimConstrExpression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimConstrValue_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *value);


void __RPC_STUB IAcadDim3PointAngular_get_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimConstrValue_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR value);


void __RPC_STUB IAcadDim3PointAngular_put_DimConstrValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_get_DimConstrDesc_Proxy( 
    IAcadDim3PointAngular * This,
    /* [retval][out] */ BSTR *bstrDescription);


void __RPC_STUB IAcadDim3PointAngular_get_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDim3PointAngular_put_DimConstrDesc_Proxy( 
    IAcadDim3PointAngular * This,
    /* [in] */ BSTR bstrDescription);


void __RPC_STUB IAcadDim3PointAngular_put_DimConstrDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDim3PointAngular_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDim3PointAngular,0x37ACB9D6,0x9FA4,0x496E,0xA5,0x50,0xBA,0x1B,0x74,0xC3,0x1E,0x0A);

#ifdef __cplusplus

class DECLSPEC_UUID("37ACB9D6-9FA4-496E-A550-BA1B74C31E0A")
AcadDim3PointAngular;
#endif

#ifndef __IAcadDimArcLength_INTERFACE_DEFINED__
#define __IAcadDimArcLength_INTERFACE_DEFINED__

/* interface IAcadDimArcLength */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimArcLength,0x71F92DD9,0xE2A9,0x4358,0xA5,0x01,0xE1,0x3C,0xC8,0x9E,0x4B,0x64);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("71F92DD9-E2A9-4358-A501-E13CC89E4B64")
    IAcadDimArcLength : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineExtend( 
            /* [retval][out] */ double *extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineExtend( 
            /* [in] */ double extend) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HorizontalTextPosition( 
            /* [retval][out] */ AcDimHorizontalJustification *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HorizontalTextPosition( 
            /* [in] */ AcDimHorizontalJustification type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT lweight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Suppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Suppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionLineOffset( 
            /* [retval][out] */ double *offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtensionLineOffset( 
            /* [in] */ double offset) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Type( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Type( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead1Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead1Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arrowhead2Block( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arrowhead2Block( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcPoint( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArcPoint( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Point( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Point( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Point( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Point( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterPoint( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterPoint( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Leader1Point( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Leader1Point( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Leader2Point( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Leader2Point( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsPartial( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IsPartial( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcStartParam( 
            /* [retval][out] */ double *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArcStartParam( 
            /* [in] */ double newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcEndParam( 
            /* [retval][out] */ double *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArcEndParam( 
            /* [in] */ double newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasLeader( 
            /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HasLeader( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SymbolPosition( 
            /* [retval][out] */ AcDimArcLengthSymbol *position) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SymbolPosition( 
            /* [in] */ AcDimArcLengthSymbol position) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine1Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine1Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLine2Linetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLine2Linetype( 
            /* [in] */ BSTR Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLenSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLenSuppress( 
            /* [in] */ VARIANT_BOOL bFixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtLineFixedLen( 
            /* [retval][out] */ double *FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtLineFixedLen( 
            /* [in] */ double FixedLen) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsSuffix( 
            /* [retval][out] */ BSTR *suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsSuffix( 
            /* [in] */ BSTR suffix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSubUnitsFactor( 
            /* [retval][out] */ double *factor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSubUnitsFactor( 
            /* [in] */ double factor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimArcLengthVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimArcLength * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimArcLength * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimArcLength * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimArcLength * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimArcLength * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimArcLength * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimArcLength * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimArcLength * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimArcLength * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimArcLength * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimArcLength * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimArcLength * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimArcLength * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimArcLength * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimArcLength * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimArcLength * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimArcLength * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimArcLength * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimArcLength * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimArcLength * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineColor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineColor )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineExtend )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineExtend )( 
            IAcadDimArcLength * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineExtend )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *extend);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineExtend )( 
            IAcadDimArcLength * This,
            /* [in] */ double extend);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalTextPosition )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimHorizontalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HorizontalTextPosition )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimHorizontalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineWeight )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_LWEIGHT *lweight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineWeight )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_LWEIGHT lweight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimArcLength * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine1Suppress )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine1Suppress )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLine2Suppress )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLine2Suppress )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Suppress )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Suppress )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Suppress )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Suppress )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineInside )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineInside )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionLineOffset )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtensionLineOffset )( 
            IAcadDimArcLength * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimArcLength * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimArcLength * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Type )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Type )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Type )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Type )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead1Block )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead1Block )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Arrowhead2Block )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Arrowhead2Block )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArcPoint )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArcPoint )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Point )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Point )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Point )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Point )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterPoint )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterPoint )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Leader1Point )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Leader1Point )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Leader2Point )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Leader2Point )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsPartial )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IsPartial )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArcStartParam )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArcStartParam )( 
            IAcadDimArcLength * This,
            /* [in] */ double newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArcEndParam )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArcEndParam )( 
            IAcadDimArcLength * This,
            /* [in] */ double newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasLeader )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HasLeader )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SymbolPosition )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ AcDimArcLengthSymbol *position);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SymbolPosition )( 
            IAcadDimArcLength * This,
            /* [in] */ AcDimArcLengthSymbol position);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine1Linetype )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine1Linetype )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLine2Linetype )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLine2Linetype )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLenSuppress )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ VARIANT_BOOL *bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLenSuppress )( 
            IAcadDimArcLength * This,
            /* [in] */ VARIANT_BOOL bFixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtLineFixedLen )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ExtLineFixedLen )( 
            IAcadDimArcLength * This,
            /* [in] */ double FixedLen);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsSuffix )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsSuffix )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubUnitsFactor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SubUnitsFactor )( 
            IAcadDimArcLength * This,
            /* [in] */ double factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsSuffix )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsSuffix )( 
            IAcadDimArcLength * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSubUnitsFactor )( 
            IAcadDimArcLength * This,
            /* [retval][out] */ double *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSubUnitsFactor )( 
            IAcadDimArcLength * This,
            /* [in] */ double factor);
        
        END_INTERFACE
    } IAcadDimArcLengthVtbl;

    interface IAcadDimArcLength
    {
        CONST_VTBL struct IAcadDimArcLengthVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimArcLength_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimArcLength_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimArcLength_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimArcLength_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimArcLength_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimArcLength_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimArcLength_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimArcLength_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimArcLength_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimArcLength_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimArcLength_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimArcLength_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimArcLength_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimArcLength_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimArcLength_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimArcLength_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimArcLength_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimArcLength_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimArcLength_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimArcLength_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimArcLength_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimArcLength_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimArcLength_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimArcLength_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimArcLength_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimArcLength_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimArcLength_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimArcLength_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimArcLength_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimArcLength_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimArcLength_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimArcLength_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimArcLength_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimArcLength_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimArcLength_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimArcLength_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimArcLength_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimArcLength_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimArcLength_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimArcLength_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimArcLength_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimArcLength_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimArcLength_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimArcLength_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimArcLength_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimArcLength_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimArcLength_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimArcLength_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimArcLength_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimArcLength_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimArcLength_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimArcLength_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimArcLength_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimArcLength_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimArcLength_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimArcLength_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimArcLength_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimArcLength_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimArcLength_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimArcLength_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimArcLength_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimArcLength_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimArcLength_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimArcLength_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimArcLength_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimArcLength_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimArcLength_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimArcLength_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimArcLength_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimArcLength_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimArcLength_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimArcLength_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimArcLength_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimArcLength_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimArcLength_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimArcLength_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimArcLength_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimArcLength_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimArcLength_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimArcLength_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimArcLength_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimArcLength_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimArcLength_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimArcLength_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimArcLength_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimArcLength_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimArcLength_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimArcLength_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimArcLength_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimArcLength_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimArcLength_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimArcLength_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimArcLength_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimArcLength_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimArcLength_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimArcLength_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimArcLength_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimArcLength_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimArcLength_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimArcLength_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimArcLength_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimArcLength_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimArcLength_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimArcLength_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimArcLength_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimArcLength_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimArcLength_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimArcLength_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimArcLength_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimArcLength_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimArcLength_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimArcLength_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimArcLength_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimArcLength_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimArcLength_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimArcLength_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimArcLength_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimArcLength_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimArcLength_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimArcLength_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimArcLength_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimArcLength_get_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Prefix) ) 

#define IAcadDimArcLength_put_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Prefix) ) 

#define IAcadDimArcLength_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDimArcLength_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDimArcLength_get_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_ExtensionLineColor(This,Type) ) 

#define IAcadDimArcLength_put_ExtensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_ExtensionLineColor(This,Type) ) 

#define IAcadDimArcLength_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimArcLength_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimArcLength_get_DimensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_DimensionLineExtend(This,extend) ) 

#define IAcadDimArcLength_put_DimensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_DimensionLineExtend(This,extend) ) 

#define IAcadDimArcLength_get_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> get_ExtensionLineExtend(This,extend) ) 

#define IAcadDimArcLength_put_ExtensionLineExtend(This,extend)	\
    ( (This)->lpVtbl -> put_ExtensionLineExtend(This,extend) ) 

#define IAcadDimArcLength_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimArcLength_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimArcLength_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimArcLength_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimArcLength_get_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_HorizontalTextPosition(This,type) ) 

#define IAcadDimArcLength_put_HorizontalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_HorizontalTextPosition(This,type) ) 

#define IAcadDimArcLength_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimArcLength_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimArcLength_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimArcLength_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimArcLength_get_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> get_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimArcLength_put_ExtensionLineWeight(This,lweight)	\
    ( (This)->lpVtbl -> put_ExtensionLineWeight(This,lweight) ) 

#define IAcadDimArcLength_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimArcLength_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimArcLength_get_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_put_DimLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine1Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_get_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_put_DimLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLine2Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_get_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_put_ExtLine1Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine1Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_get_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_put_ExtLine2Suppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_ExtLine2Suppress(This,bSuppress) ) 

#define IAcadDimArcLength_get_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_DimLineInside(This,bInside) ) 

#define IAcadDimArcLength_put_DimLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_DimLineInside(This,bInside) ) 

#define IAcadDimArcLength_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimArcLength_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimArcLength_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimArcLength_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimArcLength_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimArcLength_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimArcLength_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimArcLength_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimArcLength_get_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> get_ExtensionLineOffset(This,offset) ) 

#define IAcadDimArcLength_put_ExtensionLineOffset(This,offset)	\
    ( (This)->lpVtbl -> put_ExtensionLineOffset(This,offset) ) 

#define IAcadDimArcLength_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimArcLength_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimArcLength_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimArcLength_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimArcLength_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimArcLength_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimArcLength_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimArcLength_get_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead1Type(This,Type) ) 

#define IAcadDimArcLength_put_Arrowhead1Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead1Type(This,Type) ) 

#define IAcadDimArcLength_get_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> get_Arrowhead2Type(This,Type) ) 

#define IAcadDimArcLength_put_Arrowhead2Type(This,Type)	\
    ( (This)->lpVtbl -> put_Arrowhead2Type(This,Type) ) 

#define IAcadDimArcLength_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimArcLength_get_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimArcLength_put_Arrowhead1Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead1Block(This,BlockName) ) 

#define IAcadDimArcLength_get_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> get_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimArcLength_put_Arrowhead2Block(This,BlockName)	\
    ( (This)->lpVtbl -> put_Arrowhead2Block(This,BlockName) ) 

#define IAcadDimArcLength_get_ArcPoint(This,pVal)	\
    ( (This)->lpVtbl -> get_ArcPoint(This,pVal) ) 

#define IAcadDimArcLength_put_ArcPoint(This,newVal)	\
    ( (This)->lpVtbl -> put_ArcPoint(This,newVal) ) 

#define IAcadDimArcLength_get_ExtLine1Point(This,pVal)	\
    ( (This)->lpVtbl -> get_ExtLine1Point(This,pVal) ) 

#define IAcadDimArcLength_put_ExtLine1Point(This,newVal)	\
    ( (This)->lpVtbl -> put_ExtLine1Point(This,newVal) ) 

#define IAcadDimArcLength_get_ExtLine2Point(This,pVal)	\
    ( (This)->lpVtbl -> get_ExtLine2Point(This,pVal) ) 

#define IAcadDimArcLength_put_ExtLine2Point(This,newVal)	\
    ( (This)->lpVtbl -> put_ExtLine2Point(This,newVal) ) 

#define IAcadDimArcLength_get_CenterPoint(This,pVal)	\
    ( (This)->lpVtbl -> get_CenterPoint(This,pVal) ) 

#define IAcadDimArcLength_put_CenterPoint(This,newVal)	\
    ( (This)->lpVtbl -> put_CenterPoint(This,newVal) ) 

#define IAcadDimArcLength_get_Leader1Point(This,pVal)	\
    ( (This)->lpVtbl -> get_Leader1Point(This,pVal) ) 

#define IAcadDimArcLength_put_Leader1Point(This,newVal)	\
    ( (This)->lpVtbl -> put_Leader1Point(This,newVal) ) 

#define IAcadDimArcLength_get_Leader2Point(This,pVal)	\
    ( (This)->lpVtbl -> get_Leader2Point(This,pVal) ) 

#define IAcadDimArcLength_put_Leader2Point(This,newVal)	\
    ( (This)->lpVtbl -> put_Leader2Point(This,newVal) ) 

#define IAcadDimArcLength_get_IsPartial(This,pVal)	\
    ( (This)->lpVtbl -> get_IsPartial(This,pVal) ) 

#define IAcadDimArcLength_put_IsPartial(This,newVal)	\
    ( (This)->lpVtbl -> put_IsPartial(This,newVal) ) 

#define IAcadDimArcLength_get_ArcStartParam(This,pVal)	\
    ( (This)->lpVtbl -> get_ArcStartParam(This,pVal) ) 

#define IAcadDimArcLength_put_ArcStartParam(This,newVal)	\
    ( (This)->lpVtbl -> put_ArcStartParam(This,newVal) ) 

#define IAcadDimArcLength_get_ArcEndParam(This,pVal)	\
    ( (This)->lpVtbl -> get_ArcEndParam(This,pVal) ) 

#define IAcadDimArcLength_put_ArcEndParam(This,newVal)	\
    ( (This)->lpVtbl -> put_ArcEndParam(This,newVal) ) 

#define IAcadDimArcLength_get_HasLeader(This,pVal)	\
    ( (This)->lpVtbl -> get_HasLeader(This,pVal) ) 

#define IAcadDimArcLength_put_HasLeader(This,newVal)	\
    ( (This)->lpVtbl -> put_HasLeader(This,newVal) ) 

#define IAcadDimArcLength_get_SymbolPosition(This,position)	\
    ( (This)->lpVtbl -> get_SymbolPosition(This,position) ) 

#define IAcadDimArcLength_put_SymbolPosition(This,position)	\
    ( (This)->lpVtbl -> put_SymbolPosition(This,position) ) 

#define IAcadDimArcLength_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimArcLength_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#define IAcadDimArcLength_get_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimArcLength_put_ExtLine1Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine1Linetype(This,Linetype) ) 

#define IAcadDimArcLength_get_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimArcLength_put_ExtLine2Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_ExtLine2Linetype(This,Linetype) ) 

#define IAcadDimArcLength_get_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimArcLength_put_ExtLineFixedLenSuppress(This,bFixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLenSuppress(This,bFixedLen) ) 

#define IAcadDimArcLength_get_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> get_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimArcLength_put_ExtLineFixedLen(This,FixedLen)	\
    ( (This)->lpVtbl -> put_ExtLineFixedLen(This,FixedLen) ) 

#define IAcadDimArcLength_get_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimArcLength_put_SubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_SubUnitsSuffix(This,suffix) ) 

#define IAcadDimArcLength_get_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_SubUnitsFactor(This,factor) ) 

#define IAcadDimArcLength_put_SubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_SubUnitsFactor(This,factor) ) 

#define IAcadDimArcLength_get_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimArcLength_put_AltSubUnitsSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_AltSubUnitsSuffix(This,suffix) ) 

#define IAcadDimArcLength_get_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> get_AltSubUnitsFactor(This,factor) ) 

#define IAcadDimArcLength_put_AltSubUnitsFactor(This,factor)	\
    ( (This)->lpVtbl -> put_AltSubUnitsFactor(This,factor) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltTextPrefix_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimArcLength_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltTextSuffix_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimArcLength_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltTextSuffix_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimArcLength_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimensionLineColor_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimArcLength_get_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimensionLineColor_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimArcLength_put_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtensionLineColor_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimArcLength_get_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtensionLineColor_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimArcLength_put_ExtensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimArcLength_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimArcLength_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimensionLineExtend_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimArcLength_get_DimensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimensionLineExtend_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimArcLength_put_DimensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtensionLineExtend_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *extend);


void __RPC_STUB IAcadDimArcLength_get_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtensionLineExtend_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double extend);


void __RPC_STUB IAcadDimArcLength_put_ExtensionLineExtend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Fit_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimArcLength_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Fit_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimArcLength_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_FractionFormat_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimArcLength_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_FractionFormat_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimArcLength_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_HorizontalTextPosition_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimHorizontalJustification *type);


void __RPC_STUB IAcadDimArcLength_get_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_HorizontalTextPosition_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimHorizontalJustification type);


void __RPC_STUB IAcadDimArcLength_put_HorizontalTextPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_LinearScaleFactor_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimArcLength_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_LinearScaleFactor_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimArcLength_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_UnitsFormat_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimArcLength_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_UnitsFormat_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimArcLength_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtensionLineWeight_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ ACAD_LWEIGHT *lweight);


void __RPC_STUB IAcadDimArcLength_get_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtensionLineWeight_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ ACAD_LWEIGHT lweight);


void __RPC_STUB IAcadDimArcLength_put_ExtensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_RoundDistance_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimArcLength_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_RoundDistance_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimArcLength_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimLine1Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimArcLength_get_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimLine1Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimArcLength_put_DimLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimLine2Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimArcLength_get_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimLine2Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimArcLength_put_DimLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLine1Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimArcLength_get_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLine1Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimArcLength_put_ExtLine1Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLine2Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimArcLength_get_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLine2Suppress_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimArcLength_put_ExtLine2Suppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimLineInside_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimArcLength_get_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimLineInside_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimArcLength_put_DimLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_TextInsideAlign_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimArcLength_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_TextInsideAlign_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimArcLength_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_TextInside_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimArcLength_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_TextInside_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimArcLength_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ForceLineInside_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimArcLength_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ForceLineInside_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimArcLength_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_TextOutsideAlign_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimArcLength_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_TextOutsideAlign_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimArcLength_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtensionLineOffset_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *offset);


void __RPC_STUB IAcadDimArcLength_get_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtensionLineOffset_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double offset);


void __RPC_STUB IAcadDimArcLength_put_ExtensionLineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltSuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltSuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_SuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_SuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_SuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_SuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimArcLength_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimArcLength_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimensionLineWeight_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimArcLength_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimensionLineWeight_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimArcLength_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ArrowheadSize_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimArcLength_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ArrowheadSize_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimArcLength_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Arrowhead1Type_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimArcLength_get_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Arrowhead1Type_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimArcLength_put_Arrowhead1Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Arrowhead2Type_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimArcLength_get_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Arrowhead2Type_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimArcLength_put_Arrowhead2Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Measurement_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimArcLength_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Arrowhead1Block_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimArcLength_get_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Arrowhead1Block_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimArcLength_put_Arrowhead1Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Arrowhead2Block_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimArcLength_get_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Arrowhead2Block_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimArcLength_put_Arrowhead2Block_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ArcPoint_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimArcLength_get_ArcPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ArcPoint_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimArcLength_put_ArcPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLine1Point_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimArcLength_get_ExtLine1Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLine1Point_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimArcLength_put_ExtLine1Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLine2Point_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimArcLength_get_ExtLine2Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLine2Point_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimArcLength_put_ExtLine2Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_CenterPoint_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimArcLength_get_CenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_CenterPoint_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimArcLength_put_CenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Leader1Point_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimArcLength_get_Leader1Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Leader1Point_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimArcLength_put_Leader1Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_Leader2Point_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimArcLength_get_Leader2Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_Leader2Point_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimArcLength_put_Leader2Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_IsPartial_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *pVal);


void __RPC_STUB IAcadDimArcLength_get_IsPartial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_IsPartial_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL newVal);


void __RPC_STUB IAcadDimArcLength_put_IsPartial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ArcStartParam_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *pVal);


void __RPC_STUB IAcadDimArcLength_get_ArcStartParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ArcStartParam_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double newVal);


void __RPC_STUB IAcadDimArcLength_put_ArcStartParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ArcEndParam_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *pVal);


void __RPC_STUB IAcadDimArcLength_get_ArcEndParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ArcEndParam_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double newVal);


void __RPC_STUB IAcadDimArcLength_put_ArcEndParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_HasLeader_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *pVal);


void __RPC_STUB IAcadDimArcLength_get_HasLeader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_HasLeader_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL newVal);


void __RPC_STUB IAcadDimArcLength_put_HasLeader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_SymbolPosition_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ AcDimArcLengthSymbol *position);


void __RPC_STUB IAcadDimArcLength_get_SymbolPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_SymbolPosition_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ AcDimArcLengthSymbol position);


void __RPC_STUB IAcadDimArcLength_put_SymbolPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_DimensionLinetype_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimArcLength_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_DimensionLinetype_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimArcLength_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLine1Linetype_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimArcLength_get_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLine1Linetype_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimArcLength_put_ExtLine1Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLine2Linetype_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimArcLength_get_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLine2Linetype_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimArcLength_put_ExtLine2Linetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ VARIANT_BOOL *bFixedLen);


void __RPC_STUB IAcadDimArcLength_get_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLineFixedLenSuppress_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ VARIANT_BOOL bFixedLen);


void __RPC_STUB IAcadDimArcLength_put_ExtLineFixedLenSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_ExtLineFixedLen_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *FixedLen);


void __RPC_STUB IAcadDimArcLength_get_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_ExtLineFixedLen_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double FixedLen);


void __RPC_STUB IAcadDimArcLength_put_ExtLineFixedLen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_SubUnitsSuffix_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimArcLength_get_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_SubUnitsSuffix_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimArcLength_put_SubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_SubUnitsFactor_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimArcLength_get_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_SubUnitsFactor_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimArcLength_put_SubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltSubUnitsSuffix_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ BSTR *suffix);


void __RPC_STUB IAcadDimArcLength_get_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltSubUnitsSuffix_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ BSTR suffix);


void __RPC_STUB IAcadDimArcLength_put_AltSubUnitsSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_get_AltSubUnitsFactor_Proxy( 
    IAcadDimArcLength * This,
    /* [retval][out] */ double *factor);


void __RPC_STUB IAcadDimArcLength_get_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimArcLength_put_AltSubUnitsFactor_Proxy( 
    IAcadDimArcLength * This,
    /* [in] */ double factor);


void __RPC_STUB IAcadDimArcLength_put_AltSubUnitsFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimArcLength_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimArcLength,0x13F1081A,0x13C7,0x4AFC,0xB9,0xC2,0x56,0xAE,0x98,0xFA,0xDD,0x0C);

#ifdef __cplusplus

class DECLSPEC_UUID("13F1081A-13C7-4AFC-B9C2-56AE98FADD0C")
AcadDimArcLength;
#endif

#ifndef __IAcadDimRadialLarge_INTERFACE_DEFINED__
#define __IAcadDimRadialLarge_INTERFACE_DEFINED__

/* interface IAcadDimRadialLarge */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDimRadialLarge,0x7388AF9F,0xEC79,0x4C46,0xAD,0x86,0xB5,0x9D,0x46,0x42,0x4A,0x48);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7388AF9F-EC79-4C46-AD86-B59D46424A48")
    IAcadDimRadialLarge : public IAcadDimension
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnits( 
            /* [retval][out] */ VARIANT_BOOL *bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnits( 
            /* [in] */ VARIANT_BOOL bAlternate) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsPrecision( 
            /* [in] */ AcDimPrecision Precision) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsScale( 
            /* [retval][out] */ ACAD_NOUNITS *Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsScale( 
            /* [in] */ ACAD_NOUNITS Scale) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltRoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltRoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTolerancePrecision( 
            /* [retval][out] */ AcDimPrecision *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTolerancePrecision( 
            /* [in] */ AcDimPrecision Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltUnitsFormat( 
            /* [retval][out] */ AcDimUnits *Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltUnitsFormat( 
            /* [in] */ AcDimUnits Units) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextPrefix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextPrefix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltTextSuffix( 
            /* [retval][out] */ BSTR *Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltTextSuffix( 
            /* [in] */ BSTR Prefix) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterType( 
            /* [retval][out] */ AcDimCenterType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterType( 
            /* [in] */ AcDimCenterType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CenterMarkSize( 
            /* [retval][out] */ double *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_CenterMarkSize( 
            /* [in] */ double Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineColor( 
            /* [retval][out] */ ACAD_COLOR *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineColor( 
            /* [in] */ ACAD_COLOR Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryUnitsPrecision( 
            /* [retval][out] */ AcDimPrecision *Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryUnitsPrecision( 
            /* [in] */ AcDimPrecision Prec) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_FractionFormat( 
            /* [retval][out] */ AcDimFractionType *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_FractionFormat( 
            /* [in] */ AcDimFractionType type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fit( 
            /* [retval][out] */ AcDimFit *fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fit( 
            /* [in] */ AcDimFit fittype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinearScaleFactor( 
            /* [retval][out] */ ACAD_NOUNITS *type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinearScaleFactor( 
            /* [in] */ ACAD_NOUNITS type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitsFormat( 
            /* [retval][out] */ AcDimLUnits *format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitsFormat( 
            /* [in] */ AcDimLUnits format) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoundDistance( 
            /* [retval][out] */ double *Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RoundDistance( 
            /* [in] */ double Distance) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimLineSuppress( 
            /* [retval][out] */ VARIANT_BOOL *bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimLineSuppress( 
            /* [in] */ VARIANT_BOOL bSuppress) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceLineInside( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceLineInside( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOutsideAlign( 
            /* [retval][out] */ VARIANT_BOOL *bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOutsideAlign( 
            /* [in] */ VARIANT_BOOL bInside) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressLeadingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressLeadingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressTrailingZeros( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressTrailingZeros( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AltToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AltToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroFeet( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroFeet( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceSuppressZeroInches( 
            /* [retval][out] */ VARIANT_BOOL *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceSuppressZeroInches( 
            /* [in] */ VARIANT_BOOL bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineWeight( 
            /* [retval][out] */ ACAD_LWEIGHT *weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineWeight( 
            /* [in] */ ACAD_LWEIGHT weight) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadSize( 
            /* [retval][out] */ double *size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadSize( 
            /* [in] */ double size) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadType( 
            /* [retval][out] */ AcDimArrowheadType *Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadType( 
            /* [in] */ AcDimArrowheadType Type) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Measurement( 
            /* [retval][out] */ double *bVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowheadBlock( 
            /* [retval][out] */ BSTR *BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowheadBlock( 
            /* [in] */ BSTR BlockName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OverrideCenter( 
            /* [retval][out] */ VARIANT *overrideCenterPos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_OverrideCenter( 
            /* [in] */ VARIANT overrideCenterPos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_JogLocation( 
            /* [retval][out] */ VARIANT *jogPos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_JogLocation( 
            /* [in] */ VARIANT jogPos) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_JogAngle( 
            /* [retval][out] */ ACAD_ANGLE *jogAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_JogAngle( 
            /* [in] */ ACAD_ANGLE rotAngle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Center( 
            /* [retval][out] */ VARIANT *pVar) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Center( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ChordPoint( 
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ChordPoint( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLinetype( 
            /* [retval][out] */ BSTR *Linetype) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLinetype( 
            /* [in] */ BSTR Linetype) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDimRadialLargeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDimRadialLarge * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDimRadialLarge * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDimRadialLarge * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDimRadialLarge * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDimRadialLarge * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDimRadialLarge * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDimRadialLarge * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadDimRadialLarge * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadDimRadialLarge * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrueColor )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ IAcadAcCmColor **pColor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TrueColor )( 
            IAcadDimRadialLarge * This,
            /* [in] */ IAcadAcCmColor *pColor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layer )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Layer);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Layer )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR Layer);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Linetype )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Linetype )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR Linetype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinetypeScale )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_NOUNITS *ltScale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinetypeScale )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_NOUNITS ltScale);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVisible);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVisible);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayPolar )( 
            IAcadDimRadialLarge * This,
            /* [in] */ int NumberOfObjects,
            /* [in] */ double AngleToFill,
            /* [in] */ VARIANT CenterPoint,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ArrayRectangular )( 
            IAcadDimRadialLarge * This,
            /* [in] */ int NumberOfRows,
            /* [in] */ int NumberOfColumns,
            /* [in] */ int NumberOfLevels,
            /* [in] */ double DistBetweenRows,
            /* [in] */ double DistBetweenCols,
            /* [in] */ double DistBetweenLevels,
            /* [retval][out] */ VARIANT *pArrayObjs);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Highlight )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL HighlightFlag);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ LPDISPATCH *pCopyObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT FromPoint,
            /* [in] */ VARIANT ToPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate3D )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ double RotationAngle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Mirror3D )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT point1,
            /* [in] */ VARIANT point2,
            /* [in] */ VARIANT point3,
            /* [retval][out] */ LPDISPATCH *pMirrorObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ScaleEntity )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT BasePoint,
            /* [in] */ double ScaleFactor);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *TransformBy )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT TransformationMatrix);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IAcadDimRadialLarge * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetBoundingBox )( 
            IAcadDimRadialLarge * This,
            /* [out] */ VARIANT *MinPoint,
            /* [out] */ VARIANT *MaxPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IntersectWith )( 
            IAcadDimRadialLarge * This,
            /* [in] */ LPDISPATCH IntersectObject,
            /* [in] */ AcExtendOption option,
            /* [retval][out] */ VARIANT *intPoints);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotStyleName )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *plotStyle);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PlotStyleName )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR plotStyle);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Lineweight )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_LWEIGHT *lineweight);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Lineweight )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_LWEIGHT lineweight);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Hyperlinks )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ IAcadHyperlinks **HyperLinks);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Material )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Material);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Material )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR Material);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityName )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *EntityName);
        
        /* [helpstringcontext][nonbrowsable][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EntityType )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ long *entType);
        
        /* [helpstringcontext][helpcontext][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Color )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Color )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Normal )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT *normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Normal )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT normal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rotation )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rotation )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPosition )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT *textPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPosition )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT textPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextRotation )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_ANGLE *rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextRotation )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOverride )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *bstrText);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOverride )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR bstrText);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StyleName )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StyleName )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextColor )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextColor )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DecimalSeparator )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *character);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DecimalSeparator )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR character);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextGap )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *offset);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextGap )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double offset);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextPrefix )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextPrefix )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextSuffix )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *suffix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextSuffix )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR suffix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleFactor )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_NOUNITS *factor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleFactor )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_NOUNITS factor);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalTextPosition )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimVerticalJustification *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VerticalTextPosition )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimVerticalJustification type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TolerancePrecision )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimPrecision *precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TolerancePrecision )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimPrecision precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceHeightScale )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_NOUNITS *scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceHeightScale )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_NOUNITS scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceLowerLimit )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *lower);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceLowerLimit )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double lower);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextMovement )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimTextMovement *move);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextMovement )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimTextMovement move);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceDisplay )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimToleranceMethod *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceDisplay )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimToleranceMethod method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceJustification )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimToleranceJustify *method);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceJustification )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimToleranceJustify method);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceUpperLimit )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *upper);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceUpperLimit )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double upper);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyle )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *style);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextStyle )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR style);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextHeight )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *height);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextHeight )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double height);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFill )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFill )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFillColor )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_COLOR *Color);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFillColor )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_COLOR Color);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimTxtDirection )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimTxtDirection )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnits )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnits )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bAlternate);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsPrecision )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimPrecision *Precision);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsPrecision )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimPrecision Precision);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsScale )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_NOUNITS *Scale);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsScale )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_NOUNITS Scale);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltRoundDistance )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltRoundDistance )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTolerancePrecision )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimPrecision *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTolerancePrecision )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimPrecision Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltUnitsFormat )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimUnits *Units);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltUnitsFormat )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimUnits Units);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextPrefix )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextPrefix )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltTextSuffix )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Prefix);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltTextSuffix )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR Prefix);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterType )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimCenterType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterType )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimCenterType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CenterMarkSize )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CenterMarkSize )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineColor )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_COLOR *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineColor )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_COLOR Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrimaryUnitsPrecision )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimPrecision *Prec);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrimaryUnitsPrecision )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimPrecision Prec);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FractionFormat )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimFractionType *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FractionFormat )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimFractionType type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fit )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimFit *fittype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Fit )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimFit fittype);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LinearScaleFactor )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_NOUNITS *type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LinearScaleFactor )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_NOUNITS type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UnitsFormat )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimLUnits *format);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UnitsFormat )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimLUnits format);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RoundDistance )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *Distance);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RoundDistance )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double Distance);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimLineSuppress )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimLineSuppress )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bSuppress);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInsideAlign )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInsideAlign )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextInside )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextInside )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceLineInside )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceLineInside )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextOutsideAlign )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bInside);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextOutsideAlign )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bInside);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltSuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltSuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressLeadingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressTrailingZeros )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AltToleranceSuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AltToleranceSuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroFeet )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToleranceSuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT_BOOL *bVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToleranceSuppressZeroInches )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT_BOOL bVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLineWeight )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_LWEIGHT *weight);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLineWeight )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_LWEIGHT weight);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadSize )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *size);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadSize )( 
            IAcadDimRadialLarge * This,
            /* [in] */ double size);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadType )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ AcDimArrowheadType *Type);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadType )( 
            IAcadDimRadialLarge * This,
            /* [in] */ AcDimArrowheadType Type);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Measurement )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ double *bVal);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ArrowheadBlock )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *BlockName);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ArrowheadBlock )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR BlockName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OverrideCenter )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT *overrideCenterPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OverrideCenter )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT overrideCenterPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_JogLocation )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT *jogPos);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_JogLocation )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT jogPos);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_JogAngle )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ ACAD_ANGLE *jogAngle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_JogAngle )( 
            IAcadDimRadialLarge * This,
            /* [in] */ ACAD_ANGLE rotAngle);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Center )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT *pVar);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Center )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ChordPoint )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ChordPoint )( 
            IAcadDimRadialLarge * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DimensionLinetype )( 
            IAcadDimRadialLarge * This,
            /* [retval][out] */ BSTR *Linetype);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DimensionLinetype )( 
            IAcadDimRadialLarge * This,
            /* [in] */ BSTR Linetype);
        
        END_INTERFACE
    } IAcadDimRadialLargeVtbl;

    interface IAcadDimRadialLarge
    {
        CONST_VTBL struct IAcadDimRadialLargeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDimRadialLarge_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDimRadialLarge_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDimRadialLarge_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDimRadialLarge_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDimRadialLarge_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDimRadialLarge_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDimRadialLarge_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDimRadialLarge_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadDimRadialLarge_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadDimRadialLarge_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadDimRadialLarge_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadDimRadialLarge_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadDimRadialLarge_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadDimRadialLarge_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadDimRadialLarge_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadDimRadialLarge_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadDimRadialLarge_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadDimRadialLarge_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadDimRadialLarge_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadDimRadialLarge_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadDimRadialLarge_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadDimRadialLarge_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadDimRadialLarge_get_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> get_TrueColor(This,pColor) ) 

#define IAcadDimRadialLarge_put_TrueColor(This,pColor)	\
    ( (This)->lpVtbl -> put_TrueColor(This,pColor) ) 

#define IAcadDimRadialLarge_get_Layer(This,Layer)	\
    ( (This)->lpVtbl -> get_Layer(This,Layer) ) 

#define IAcadDimRadialLarge_put_Layer(This,Layer)	\
    ( (This)->lpVtbl -> put_Layer(This,Layer) ) 

#define IAcadDimRadialLarge_get_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_Linetype(This,Linetype) ) 

#define IAcadDimRadialLarge_put_Linetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_Linetype(This,Linetype) ) 

#define IAcadDimRadialLarge_get_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> get_LinetypeScale(This,ltScale) ) 

#define IAcadDimRadialLarge_put_LinetypeScale(This,ltScale)	\
    ( (This)->lpVtbl -> put_LinetypeScale(This,ltScale) ) 

#define IAcadDimRadialLarge_get_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> get_Visible(This,bVisible) ) 

#define IAcadDimRadialLarge_put_Visible(This,bVisible)	\
    ( (This)->lpVtbl -> put_Visible(This,bVisible) ) 

#define IAcadDimRadialLarge_ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayPolar(This,NumberOfObjects,AngleToFill,CenterPoint,pArrayObjs) ) 

#define IAcadDimRadialLarge_ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs)	\
    ( (This)->lpVtbl -> ArrayRectangular(This,NumberOfRows,NumberOfColumns,NumberOfLevels,DistBetweenRows,DistBetweenCols,DistBetweenLevels,pArrayObjs) ) 

#define IAcadDimRadialLarge_Highlight(This,HighlightFlag)	\
    ( (This)->lpVtbl -> Highlight(This,HighlightFlag) ) 

#define IAcadDimRadialLarge_Copy(This,pCopyObj)	\
    ( (This)->lpVtbl -> Copy(This,pCopyObj) ) 

#define IAcadDimRadialLarge_Move(This,FromPoint,ToPoint)	\
    ( (This)->lpVtbl -> Move(This,FromPoint,ToPoint) ) 

#define IAcadDimRadialLarge_Rotate(This,BasePoint,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate(This,BasePoint,RotationAngle) ) 

#define IAcadDimRadialLarge_Rotate3D(This,Point1,Point2,RotationAngle)	\
    ( (This)->lpVtbl -> Rotate3D(This,Point1,Point2,RotationAngle) ) 

#define IAcadDimRadialLarge_Mirror(This,Point1,Point2,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror(This,Point1,Point2,pMirrorObj) ) 

#define IAcadDimRadialLarge_Mirror3D(This,point1,point2,point3,pMirrorObj)	\
    ( (This)->lpVtbl -> Mirror3D(This,point1,point2,point3,pMirrorObj) ) 

#define IAcadDimRadialLarge_ScaleEntity(This,BasePoint,ScaleFactor)	\
    ( (This)->lpVtbl -> ScaleEntity(This,BasePoint,ScaleFactor) ) 

#define IAcadDimRadialLarge_TransformBy(This,TransformationMatrix)	\
    ( (This)->lpVtbl -> TransformBy(This,TransformationMatrix) ) 

#define IAcadDimRadialLarge_Update(This)	\
    ( (This)->lpVtbl -> Update(This) ) 

#define IAcadDimRadialLarge_GetBoundingBox(This,MinPoint,MaxPoint)	\
    ( (This)->lpVtbl -> GetBoundingBox(This,MinPoint,MaxPoint) ) 

#define IAcadDimRadialLarge_IntersectWith(This,IntersectObject,option,intPoints)	\
    ( (This)->lpVtbl -> IntersectWith(This,IntersectObject,option,intPoints) ) 

#define IAcadDimRadialLarge_get_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> get_PlotStyleName(This,plotStyle) ) 

#define IAcadDimRadialLarge_put_PlotStyleName(This,plotStyle)	\
    ( (This)->lpVtbl -> put_PlotStyleName(This,plotStyle) ) 

#define IAcadDimRadialLarge_get_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> get_Lineweight(This,lineweight) ) 

#define IAcadDimRadialLarge_put_Lineweight(This,lineweight)	\
    ( (This)->lpVtbl -> put_Lineweight(This,lineweight) ) 

#define IAcadDimRadialLarge_get_Hyperlinks(This,HyperLinks)	\
    ( (This)->lpVtbl -> get_Hyperlinks(This,HyperLinks) ) 

#define IAcadDimRadialLarge_get_Material(This,Material)	\
    ( (This)->lpVtbl -> get_Material(This,Material) ) 

#define IAcadDimRadialLarge_put_Material(This,Material)	\
    ( (This)->lpVtbl -> put_Material(This,Material) ) 

#define IAcadDimRadialLarge_get_EntityName(This,EntityName)	\
    ( (This)->lpVtbl -> get_EntityName(This,EntityName) ) 

#define IAcadDimRadialLarge_get_EntityType(This,entType)	\
    ( (This)->lpVtbl -> get_EntityType(This,entType) ) 

#define IAcadDimRadialLarge_get_Color(This,Color)	\
    ( (This)->lpVtbl -> get_Color(This,Color) ) 

#define IAcadDimRadialLarge_put_Color(This,Color)	\
    ( (This)->lpVtbl -> put_Color(This,Color) ) 


#define IAcadDimRadialLarge_get_Normal(This,normal)	\
    ( (This)->lpVtbl -> get_Normal(This,normal) ) 

#define IAcadDimRadialLarge_put_Normal(This,normal)	\
    ( (This)->lpVtbl -> put_Normal(This,normal) ) 

#define IAcadDimRadialLarge_get_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_Rotation(This,rotAngle) ) 

#define IAcadDimRadialLarge_put_Rotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_Rotation(This,rotAngle) ) 

#define IAcadDimRadialLarge_get_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> get_TextPosition(This,textPos) ) 

#define IAcadDimRadialLarge_put_TextPosition(This,textPos)	\
    ( (This)->lpVtbl -> put_TextPosition(This,textPos) ) 

#define IAcadDimRadialLarge_get_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> get_TextRotation(This,rotAngle) ) 

#define IAcadDimRadialLarge_put_TextRotation(This,rotAngle)	\
    ( (This)->lpVtbl -> put_TextRotation(This,rotAngle) ) 

#define IAcadDimRadialLarge_get_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> get_TextOverride(This,bstrText) ) 

#define IAcadDimRadialLarge_put_TextOverride(This,bstrText)	\
    ( (This)->lpVtbl -> put_TextOverride(This,bstrText) ) 

#define IAcadDimRadialLarge_get_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> get_StyleName(This,bstrName) ) 

#define IAcadDimRadialLarge_put_StyleName(This,bstrName)	\
    ( (This)->lpVtbl -> put_StyleName(This,bstrName) ) 

#define IAcadDimRadialLarge_get_TextColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextColor(This,Color) ) 

#define IAcadDimRadialLarge_put_TextColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextColor(This,Color) ) 

#define IAcadDimRadialLarge_get_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> get_DecimalSeparator(This,character) ) 

#define IAcadDimRadialLarge_put_DecimalSeparator(This,character)	\
    ( (This)->lpVtbl -> put_DecimalSeparator(This,character) ) 

#define IAcadDimRadialLarge_get_TextGap(This,offset)	\
    ( (This)->lpVtbl -> get_TextGap(This,offset) ) 

#define IAcadDimRadialLarge_put_TextGap(This,offset)	\
    ( (This)->lpVtbl -> put_TextGap(This,offset) ) 

#define IAcadDimRadialLarge_get_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> get_TextPrefix(This,prefix) ) 

#define IAcadDimRadialLarge_put_TextPrefix(This,prefix)	\
    ( (This)->lpVtbl -> put_TextPrefix(This,prefix) ) 

#define IAcadDimRadialLarge_get_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> get_TextSuffix(This,suffix) ) 

#define IAcadDimRadialLarge_put_TextSuffix(This,suffix)	\
    ( (This)->lpVtbl -> put_TextSuffix(This,suffix) ) 

#define IAcadDimRadialLarge_get_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> get_ScaleFactor(This,factor) ) 

#define IAcadDimRadialLarge_put_ScaleFactor(This,factor)	\
    ( (This)->lpVtbl -> put_ScaleFactor(This,factor) ) 

#define IAcadDimRadialLarge_get_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> get_VerticalTextPosition(This,type) ) 

#define IAcadDimRadialLarge_put_VerticalTextPosition(This,type)	\
    ( (This)->lpVtbl -> put_VerticalTextPosition(This,type) ) 

#define IAcadDimRadialLarge_get_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> get_TolerancePrecision(This,precision) ) 

#define IAcadDimRadialLarge_put_TolerancePrecision(This,precision)	\
    ( (This)->lpVtbl -> put_TolerancePrecision(This,precision) ) 

#define IAcadDimRadialLarge_get_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> get_ToleranceHeightScale(This,scale) ) 

#define IAcadDimRadialLarge_put_ToleranceHeightScale(This,scale)	\
    ( (This)->lpVtbl -> put_ToleranceHeightScale(This,scale) ) 

#define IAcadDimRadialLarge_get_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> get_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimRadialLarge_put_ToleranceLowerLimit(This,lower)	\
    ( (This)->lpVtbl -> put_ToleranceLowerLimit(This,lower) ) 

#define IAcadDimRadialLarge_get_TextMovement(This,move)	\
    ( (This)->lpVtbl -> get_TextMovement(This,move) ) 

#define IAcadDimRadialLarge_put_TextMovement(This,move)	\
    ( (This)->lpVtbl -> put_TextMovement(This,move) ) 

#define IAcadDimRadialLarge_get_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceDisplay(This,method) ) 

#define IAcadDimRadialLarge_put_ToleranceDisplay(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceDisplay(This,method) ) 

#define IAcadDimRadialLarge_get_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> get_ToleranceJustification(This,method) ) 

#define IAcadDimRadialLarge_put_ToleranceJustification(This,method)	\
    ( (This)->lpVtbl -> put_ToleranceJustification(This,method) ) 

#define IAcadDimRadialLarge_get_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> get_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimRadialLarge_put_ToleranceUpperLimit(This,upper)	\
    ( (This)->lpVtbl -> put_ToleranceUpperLimit(This,upper) ) 

#define IAcadDimRadialLarge_get_TextStyle(This,style)	\
    ( (This)->lpVtbl -> get_TextStyle(This,style) ) 

#define IAcadDimRadialLarge_put_TextStyle(This,style)	\
    ( (This)->lpVtbl -> put_TextStyle(This,style) ) 

#define IAcadDimRadialLarge_get_TextHeight(This,height)	\
    ( (This)->lpVtbl -> get_TextHeight(This,height) ) 

#define IAcadDimRadialLarge_put_TextHeight(This,height)	\
    ( (This)->lpVtbl -> put_TextHeight(This,height) ) 

#define IAcadDimRadialLarge_get_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_SuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_SuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_ToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_ToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> get_TextFill(This,bVal) ) 

#define IAcadDimRadialLarge_put_TextFill(This,bVal)	\
    ( (This)->lpVtbl -> put_TextFill(This,bVal) ) 

#define IAcadDimRadialLarge_get_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> get_TextFillColor(This,Color) ) 

#define IAcadDimRadialLarge_put_TextFillColor(This,Color)	\
    ( (This)->lpVtbl -> put_TextFillColor(This,Color) ) 

#define IAcadDimRadialLarge_get_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> get_DimTxtDirection(This,bVal) ) 

#define IAcadDimRadialLarge_put_DimTxtDirection(This,bVal)	\
    ( (This)->lpVtbl -> put_DimTxtDirection(This,bVal) ) 


#define IAcadDimRadialLarge_get_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> get_AltUnits(This,bAlternate) ) 

#define IAcadDimRadialLarge_put_AltUnits(This,bAlternate)	\
    ( (This)->lpVtbl -> put_AltUnits(This,bAlternate) ) 

#define IAcadDimRadialLarge_get_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> get_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimRadialLarge_put_AltUnitsPrecision(This,Precision)	\
    ( (This)->lpVtbl -> put_AltUnitsPrecision(This,Precision) ) 

#define IAcadDimRadialLarge_get_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> get_AltUnitsScale(This,Scale) ) 

#define IAcadDimRadialLarge_put_AltUnitsScale(This,Scale)	\
    ( (This)->lpVtbl -> put_AltUnitsScale(This,Scale) ) 

#define IAcadDimRadialLarge_get_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_AltRoundDistance(This,Distance) ) 

#define IAcadDimRadialLarge_put_AltRoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_AltRoundDistance(This,Distance) ) 

#define IAcadDimRadialLarge_get_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> get_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimRadialLarge_put_AltTolerancePrecision(This,Distance)	\
    ( (This)->lpVtbl -> put_AltTolerancePrecision(This,Distance) ) 

#define IAcadDimRadialLarge_get_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> get_AltUnitsFormat(This,Units) ) 

#define IAcadDimRadialLarge_put_AltUnitsFormat(This,Units)	\
    ( (This)->lpVtbl -> put_AltUnitsFormat(This,Units) ) 

#define IAcadDimRadialLarge_get_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextPrefix(This,Prefix) ) 

#define IAcadDimRadialLarge_put_AltTextPrefix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextPrefix(This,Prefix) ) 

#define IAcadDimRadialLarge_get_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> get_AltTextSuffix(This,Prefix) ) 

#define IAcadDimRadialLarge_put_AltTextSuffix(This,Prefix)	\
    ( (This)->lpVtbl -> put_AltTextSuffix(This,Prefix) ) 

#define IAcadDimRadialLarge_get_CenterType(This,Type)	\
    ( (This)->lpVtbl -> get_CenterType(This,Type) ) 

#define IAcadDimRadialLarge_put_CenterType(This,Type)	\
    ( (This)->lpVtbl -> put_CenterType(This,Type) ) 

#define IAcadDimRadialLarge_get_CenterMarkSize(This,Type)	\
    ( (This)->lpVtbl -> get_CenterMarkSize(This,Type) ) 

#define IAcadDimRadialLarge_put_CenterMarkSize(This,Type)	\
    ( (This)->lpVtbl -> put_CenterMarkSize(This,Type) ) 

#define IAcadDimRadialLarge_get_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> get_DimensionLineColor(This,Type) ) 

#define IAcadDimRadialLarge_put_DimensionLineColor(This,Type)	\
    ( (This)->lpVtbl -> put_DimensionLineColor(This,Type) ) 

#define IAcadDimRadialLarge_get_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> get_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimRadialLarge_put_PrimaryUnitsPrecision(This,Prec)	\
    ( (This)->lpVtbl -> put_PrimaryUnitsPrecision(This,Prec) ) 

#define IAcadDimRadialLarge_get_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> get_FractionFormat(This,type) ) 

#define IAcadDimRadialLarge_put_FractionFormat(This,type)	\
    ( (This)->lpVtbl -> put_FractionFormat(This,type) ) 

#define IAcadDimRadialLarge_get_Fit(This,fittype)	\
    ( (This)->lpVtbl -> get_Fit(This,fittype) ) 

#define IAcadDimRadialLarge_put_Fit(This,fittype)	\
    ( (This)->lpVtbl -> put_Fit(This,fittype) ) 

#define IAcadDimRadialLarge_get_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> get_LinearScaleFactor(This,type) ) 

#define IAcadDimRadialLarge_put_LinearScaleFactor(This,type)	\
    ( (This)->lpVtbl -> put_LinearScaleFactor(This,type) ) 

#define IAcadDimRadialLarge_get_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> get_UnitsFormat(This,format) ) 

#define IAcadDimRadialLarge_put_UnitsFormat(This,format)	\
    ( (This)->lpVtbl -> put_UnitsFormat(This,format) ) 

#define IAcadDimRadialLarge_get_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> get_RoundDistance(This,Distance) ) 

#define IAcadDimRadialLarge_put_RoundDistance(This,Distance)	\
    ( (This)->lpVtbl -> put_RoundDistance(This,Distance) ) 

#define IAcadDimRadialLarge_get_DimLineSuppress(This,bSuppress)	\
    ( (This)->lpVtbl -> get_DimLineSuppress(This,bSuppress) ) 

#define IAcadDimRadialLarge_put_DimLineSuppress(This,bSuppress)	\
    ( (This)->lpVtbl -> put_DimLineSuppress(This,bSuppress) ) 

#define IAcadDimRadialLarge_get_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInsideAlign(This,bInside) ) 

#define IAcadDimRadialLarge_put_TextInsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInsideAlign(This,bInside) ) 

#define IAcadDimRadialLarge_get_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> get_TextInside(This,bInside) ) 

#define IAcadDimRadialLarge_put_TextInside(This,bInside)	\
    ( (This)->lpVtbl -> put_TextInside(This,bInside) ) 

#define IAcadDimRadialLarge_get_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> get_ForceLineInside(This,bInside) ) 

#define IAcadDimRadialLarge_put_ForceLineInside(This,bInside)	\
    ( (This)->lpVtbl -> put_ForceLineInside(This,bInside) ) 

#define IAcadDimRadialLarge_get_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> get_TextOutsideAlign(This,bInside) ) 

#define IAcadDimRadialLarge_put_TextOutsideAlign(This,bInside)	\
    ( (This)->lpVtbl -> put_TextOutsideAlign(This,bInside) ) 

#define IAcadDimRadialLarge_get_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltToleranceSuppressLeadingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressLeadingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltToleranceSuppressTrailingZeros(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressTrailingZeros(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_get_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_put_AltToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_AltToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_get_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_put_SuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_get_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_SuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_put_SuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_SuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_get_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_put_ToleranceSuppressZeroFeet(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroFeet(This,bVal) ) 

#define IAcadDimRadialLarge_get_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> get_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_put_ToleranceSuppressZeroInches(This,bVal)	\
    ( (This)->lpVtbl -> put_ToleranceSuppressZeroInches(This,bVal) ) 

#define IAcadDimRadialLarge_get_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> get_DimensionLineWeight(This,weight) ) 

#define IAcadDimRadialLarge_put_DimensionLineWeight(This,weight)	\
    ( (This)->lpVtbl -> put_DimensionLineWeight(This,weight) ) 

#define IAcadDimRadialLarge_get_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> get_ArrowheadSize(This,size) ) 

#define IAcadDimRadialLarge_put_ArrowheadSize(This,size)	\
    ( (This)->lpVtbl -> put_ArrowheadSize(This,size) ) 

#define IAcadDimRadialLarge_get_ArrowheadType(This,Type)	\
    ( (This)->lpVtbl -> get_ArrowheadType(This,Type) ) 

#define IAcadDimRadialLarge_put_ArrowheadType(This,Type)	\
    ( (This)->lpVtbl -> put_ArrowheadType(This,Type) ) 

#define IAcadDimRadialLarge_get_Measurement(This,bVal)	\
    ( (This)->lpVtbl -> get_Measurement(This,bVal) ) 

#define IAcadDimRadialLarge_get_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> get_ArrowheadBlock(This,BlockName) ) 

#define IAcadDimRadialLarge_put_ArrowheadBlock(This,BlockName)	\
    ( (This)->lpVtbl -> put_ArrowheadBlock(This,BlockName) ) 

#define IAcadDimRadialLarge_get_OverrideCenter(This,overrideCenterPos)	\
    ( (This)->lpVtbl -> get_OverrideCenter(This,overrideCenterPos) ) 

#define IAcadDimRadialLarge_put_OverrideCenter(This,overrideCenterPos)	\
    ( (This)->lpVtbl -> put_OverrideCenter(This,overrideCenterPos) ) 

#define IAcadDimRadialLarge_get_JogLocation(This,jogPos)	\
    ( (This)->lpVtbl -> get_JogLocation(This,jogPos) ) 

#define IAcadDimRadialLarge_put_JogLocation(This,jogPos)	\
    ( (This)->lpVtbl -> put_JogLocation(This,jogPos) ) 

#define IAcadDimRadialLarge_get_JogAngle(This,jogAngle)	\
    ( (This)->lpVtbl -> get_JogAngle(This,jogAngle) ) 

#define IAcadDimRadialLarge_put_JogAngle(This,rotAngle)	\
    ( (This)->lpVtbl -> put_JogAngle(This,rotAngle) ) 

#define IAcadDimRadialLarge_get_Center(This,pVar)	\
    ( (This)->lpVtbl -> get_Center(This,pVar) ) 

#define IAcadDimRadialLarge_put_Center(This,newVal)	\
    ( (This)->lpVtbl -> put_Center(This,newVal) ) 

#define IAcadDimRadialLarge_get_ChordPoint(This,pVal)	\
    ( (This)->lpVtbl -> get_ChordPoint(This,pVal) ) 

#define IAcadDimRadialLarge_put_ChordPoint(This,newVal)	\
    ( (This)->lpVtbl -> put_ChordPoint(This,newVal) ) 

#define IAcadDimRadialLarge_get_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> get_DimensionLinetype(This,Linetype) ) 

#define IAcadDimRadialLarge_put_DimensionLinetype(This,Linetype)	\
    ( (This)->lpVtbl -> put_DimensionLinetype(This,Linetype) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltTextPrefix_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimRadialLarge_put_AltTextPrefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltTextSuffix_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ BSTR *Prefix);


void __RPC_STUB IAcadDimRadialLarge_get_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltTextSuffix_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ BSTR Prefix);


void __RPC_STUB IAcadDimRadialLarge_put_AltTextSuffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_CenterType_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ AcDimCenterType *Type);


void __RPC_STUB IAcadDimRadialLarge_get_CenterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_CenterType_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ AcDimCenterType Type);


void __RPC_STUB IAcadDimRadialLarge_put_CenterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_CenterMarkSize_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ double *Type);


void __RPC_STUB IAcadDimRadialLarge_get_CenterMarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_CenterMarkSize_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ double Type);


void __RPC_STUB IAcadDimRadialLarge_put_CenterMarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_DimensionLineColor_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ ACAD_COLOR *Type);


void __RPC_STUB IAcadDimRadialLarge_get_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_DimensionLineColor_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ ACAD_COLOR Type);


void __RPC_STUB IAcadDimRadialLarge_put_DimensionLineColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_PrimaryUnitsPrecision_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ AcDimPrecision *Prec);


void __RPC_STUB IAcadDimRadialLarge_get_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_PrimaryUnitsPrecision_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ AcDimPrecision Prec);


void __RPC_STUB IAcadDimRadialLarge_put_PrimaryUnitsPrecision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_FractionFormat_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ AcDimFractionType *type);


void __RPC_STUB IAcadDimRadialLarge_get_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_FractionFormat_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ AcDimFractionType type);


void __RPC_STUB IAcadDimRadialLarge_put_FractionFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_Fit_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ AcDimFit *fittype);


void __RPC_STUB IAcadDimRadialLarge_get_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_Fit_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ AcDimFit fittype);


void __RPC_STUB IAcadDimRadialLarge_put_Fit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_LinearScaleFactor_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ ACAD_NOUNITS *type);


void __RPC_STUB IAcadDimRadialLarge_get_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_LinearScaleFactor_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ ACAD_NOUNITS type);


void __RPC_STUB IAcadDimRadialLarge_put_LinearScaleFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_UnitsFormat_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ AcDimLUnits *format);


void __RPC_STUB IAcadDimRadialLarge_get_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_UnitsFormat_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ AcDimLUnits format);


void __RPC_STUB IAcadDimRadialLarge_put_UnitsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_RoundDistance_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ double *Distance);


void __RPC_STUB IAcadDimRadialLarge_get_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_RoundDistance_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ double Distance);


void __RPC_STUB IAcadDimRadialLarge_put_RoundDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_DimLineSuppress_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bSuppress);


void __RPC_STUB IAcadDimRadialLarge_get_DimLineSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_DimLineSuppress_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bSuppress);


void __RPC_STUB IAcadDimRadialLarge_put_DimLineSuppress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_TextInsideAlign_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadialLarge_get_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_TextInsideAlign_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadialLarge_put_TextInsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_TextInside_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadialLarge_get_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_TextInside_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadialLarge_put_TextInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ForceLineInside_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadialLarge_get_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ForceLineInside_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadialLarge_put_ForceLineInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_TextOutsideAlign_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bInside);


void __RPC_STUB IAcadDimRadialLarge_get_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_TextOutsideAlign_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bInside);


void __RPC_STUB IAcadDimRadialLarge_put_TextOutsideAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltSuppressLeadingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltSuppressLeadingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltSuppressTrailingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltSuppressTrailingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltSuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltSuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltSuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltSuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltToleranceSuppressLeadingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltToleranceSuppressLeadingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltToleranceSuppressTrailingZeros_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltToleranceSuppressTrailingZeros_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_AltToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_AltToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_SuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_SuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_SuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_SuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_SuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_SuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ToleranceSuppressZeroFeet_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_ToleranceSuppressZeroFeet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT_BOOL *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ToleranceSuppressZeroInches_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT_BOOL bVal);


void __RPC_STUB IAcadDimRadialLarge_put_ToleranceSuppressZeroInches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_DimensionLineWeight_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ ACAD_LWEIGHT *weight);


void __RPC_STUB IAcadDimRadialLarge_get_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_DimensionLineWeight_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ ACAD_LWEIGHT weight);


void __RPC_STUB IAcadDimRadialLarge_put_DimensionLineWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ArrowheadSize_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ double *size);


void __RPC_STUB IAcadDimRadialLarge_get_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ArrowheadSize_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ double size);


void __RPC_STUB IAcadDimRadialLarge_put_ArrowheadSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ArrowheadType_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ AcDimArrowheadType *Type);


void __RPC_STUB IAcadDimRadialLarge_get_ArrowheadType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ArrowheadType_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ AcDimArrowheadType Type);


void __RPC_STUB IAcadDimRadialLarge_put_ArrowheadType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_Measurement_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ double *bVal);


void __RPC_STUB IAcadDimRadialLarge_get_Measurement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ArrowheadBlock_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ BSTR *BlockName);


void __RPC_STUB IAcadDimRadialLarge_get_ArrowheadBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][nonbrowsable][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ArrowheadBlock_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ BSTR BlockName);


void __RPC_STUB IAcadDimRadialLarge_put_ArrowheadBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_OverrideCenter_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT *overrideCenterPos);


void __RPC_STUB IAcadDimRadialLarge_get_OverrideCenter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_OverrideCenter_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT overrideCenterPos);


void __RPC_STUB IAcadDimRadialLarge_put_OverrideCenter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_JogLocation_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT *jogPos);


void __RPC_STUB IAcadDimRadialLarge_get_JogLocation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_JogLocation_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT jogPos);


void __RPC_STUB IAcadDimRadialLarge_put_JogLocation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_JogAngle_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ ACAD_ANGLE *jogAngle);


void __RPC_STUB IAcadDimRadialLarge_get_JogAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_JogAngle_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ ACAD_ANGLE rotAngle);


void __RPC_STUB IAcadDimRadialLarge_put_JogAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_Center_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT *pVar);


void __RPC_STUB IAcadDimRadialLarge_get_Center_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_Center_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimRadialLarge_put_Center_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_ChordPoint_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IAcadDimRadialLarge_get_ChordPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_ChordPoint_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IAcadDimRadialLarge_put_ChordPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_get_DimensionLinetype_Proxy( 
    IAcadDimRadialLarge * This,
    /* [retval][out] */ BSTR *Linetype);


void __RPC_STUB IAcadDimRadialLarge_get_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE IAcadDimRadialLarge_put_DimensionLinetype_Proxy( 
    IAcadDimRadialLarge * This,
    /* [in] */ BSTR Linetype);


void __RPC_STUB IAcadDimRadialLarge_put_DimensionLinetype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAcadDimRadialLarge_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDimRadialLarge,0x1C9A43C5,0xE911,0x4B7B,0xBF,0xA0,0xD4,0xBD,0x9F,0x4B,0x4C,0xF0);

#ifdef __cplusplus

class DECLSPEC_UUID("1C9A43C5-E911-4B7B-BFA0-D4BD9F4B4CF0")
AcadDimRadialLarge;
#endif

DEFINE_GUID(CLSID_AcadBlock,0x63F062F5,0x44BD,0x4C7D,0xA1,0x42,0x28,0xCC,0xE3,0xEE,0xCE,0xB8);

#ifdef __cplusplus

class DECLSPEC_UUID("63F062F5-44BD-4C7D-A142-28CCE3EECEB8")
AcadBlock;
#endif

#ifndef __IAcadModelSpace_INTERFACE_DEFINED__
#define __IAcadModelSpace_INTERFACE_DEFINED__

/* interface IAcadModelSpace */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadModelSpace,0x134A4D6B,0x1DC2,0x4539,0xA7,0xF0,0xE5,0xEB,0xC1,0x00,0x44,0x23);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("134A4D6B-1DC2-4539-A7F0-E5EBC1004423")
    IAcadModelSpace : public IAcadBlock
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAcadModelSpaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadModelSpace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadModelSpace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadModelSpace * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadModelSpace * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadModelSpace * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadModelSpace * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadModelSpace * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadModelSpace * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadModelSpace * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadModelSpace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadModelSpace * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadModelSpace * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadModelSpace * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadModelSpace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadEntity **pItem);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadModelSpace * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadModelSpace * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadModelSpace * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadModelSpace * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT origin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCustomObject )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR ClassName,
            /* [retval][out] */ LPDISPATCH *pObject);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DFace )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcad3DFace **pFace3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DMesh )( 
            IAcadModelSpace * This,
            /* [in] */ int M,
            /* [in] */ int N,
            /* [in] */ VARIANT PointsMatrix,
            /* [retval][out] */ IAcadPolygonMesh **pMesh3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DPoly )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcad3DPolyline **pPoly3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddArc )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double StartAngle,
            /* [in] */ double EndAngle,
            /* [retval][out] */ IAcadArc **pArc);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddAttribute )( 
            IAcadModelSpace * This,
            /* [in] */ double Height,
            /* [in] */ AcAttributeMode Mode,
            /* [in] */ BSTR Prompt,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Tag,
            /* [in] */ BSTR Value,
            /* [retval][out] */ IAcadAttribute **pAttr);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddBox )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Origin,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pBox);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCircle )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT center,
            /* [in] */ double radius,
            /* [retval][out] */ IAcadCircle **pCircle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCone )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double BaseRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCone);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCylinder )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCyl);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimAligned )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT TextPosition,
            /* [retval][out] */ IAcadDimAligned **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimAngular )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDimAngular **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimDiametric )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT FarChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimDiametric **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRotated )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT DimLineLocation,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadDimRotated **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimOrdinate )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT DefinitionPoint,
            /* [in] */ VARIANT LeaderEndPoint,
            /* [in] */ int UseXAxis,
            /* [retval][out] */ IAcadDimOrdinate **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRadial )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimRadial **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipse )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT MajorAxis,
            /* [in] */ double RadiusRatio,
            /* [retval][out] */ IAcadEllipse **pEllipse);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipticalCone )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCone);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipticalCylinder )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCyl);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddExtrudedSolid )( 
            IAcadModelSpace * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ double Height,
            /* [in] */ double TaperAngle,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddExtrudedSolidAlongPath )( 
            IAcadModelSpace * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ IDispatch *Path,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLeader )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [in] */ IAcadEntity *Annotation,
            /* [in] */ AcLeaderType Type,
            /* [retval][out] */ IAcadLeader **pLeader);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMText )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Width,
            /* [in] */ BSTR Text,
            /* [retval][out] */ IAcadMText **pMtext);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPoint )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Point,
            /* [retval][out] */ IAcadPoint **pPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLightWeightPolyline )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadLWPolyline **pLWPolyline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPolyline )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadPolyline **pPolyline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRay )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadRay **pRay);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRegion )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT ObjectList,
            /* [retval][out] */ VARIANT *pRegions);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRevolvedSolid )( 
            IAcadModelSpace * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ VARIANT AxisPoint,
            /* [in] */ VARIANT AxisDir,
            /* [in] */ double Angle,
            /* [retval][out] */ IAcad3DSolid **pRevolSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddShape )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double scaleFactor,
            /* [in] */ double rotationAngle,
            /* [retval][out] */ IAcadShape **pShape);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSolid )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcadSolid **pSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSphere )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [retval][out] */ IAcad3DSolid **pSphere);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSpline )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [in] */ VARIANT StartTangent,
            /* [in] */ VARIANT EndTangent,
            /* [retval][out] */ IAcadSpline **pSpline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddText )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR TextString,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Height,
            /* [retval][out] */ IAcadText **pText);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTolerance )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR Text,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ VARIANT Direction,
            /* [retval][out] */ IAcadTolerance **pTolerance);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTorus )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double TorusRadius,
            /* [in] */ double TubeRadius,
            /* [retval][out] */ IAcad3DSolid **pTorus);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTrace )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcadTrace **pTrace);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddWedge )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pWedge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddXline )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadXline **pXline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertBlock )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadBlockReference **pBlkRef);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddHatch )( 
            IAcadModelSpace * This,
            /* [in] */ int PatternType,
            /* [in] */ BSTR PatternName,
            /* [in] */ VARIANT_BOOL Associativity,
            /* [optional][in] */ VARIANT HatchObjectType,
            /* [retval][out] */ IAcadHatch **pHatch);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRaster )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR ImageFileName,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double ScaleFactor,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadRasterImage **pRaster);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLine )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT StartPoint,
            /* [in] */ VARIANT EndPoint,
            /* [retval][out] */ IAcadLine **pLine);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsLayout )( 
            IAcadModelSpace * This,
            /* [retval][out] */ VARIANT_BOOL *bIsLayout);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layout )( 
            IAcadModelSpace * This,
            /* [retval][out] */ IAcadLayout **pLayout);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsXRef )( 
            IAcadModelSpace * This,
            /* [retval][out] */ VARIANT_BOOL *pIsXRref);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMInsertBlock )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ long NumRows,
            /* [in] */ long NumColumns,
            /* [in] */ long RowSpacing,
            /* [in] */ long ColumnSpacing,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadMInsertBlock **pMInsertBlk);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPolyfaceMesh )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT VertexList,
            /* [in] */ VARIANT FaceList,
            /* [retval][out] */ IAcadPolyfaceMesh **pPFMesh);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMLine )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT VertexList,
            /* [retval][out] */ IAcadMLine **pMLine);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDim3PointAngular )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDim3PointAngular **pDim);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XRefDatabase )( 
            IAcadModelSpace * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AttachExternalReference )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR PathName,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ VARIANT_BOOL bOverlay,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadExternalReference **pXRef);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Unload )( 
            IAcadModelSpace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Reload )( 
            IAcadModelSpace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Bind )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT_BOOL bPrefixName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Detach )( 
            IAcadModelSpace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTable )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ int NumRows,
            /* [in] */ int NumColumns,
            /* [in] */ double RowHeight,
            /* [in] */ double ColWidth,
            /* [retval][out] */ IAcadTable **pTable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IAcadModelSpace * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Path )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Comments )( 
            IAcadModelSpace * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Comments )( 
            IAcadModelSpace * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Units )( 
            IAcadModelSpace * This,
            /* [retval][out] */ AcInsertUnits *pIU);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Units )( 
            IAcadModelSpace * This,
            /* [in] */ AcInsertUnits IU);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Explodable )( 
            IAcadModelSpace * This,
            /* [retval][out] */ VARIANT_BOOL *bExplodable);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Explodable )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT_BOOL bExplodable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockScaling )( 
            IAcadModelSpace * This,
            /* [retval][out] */ AcBlockScaling *pBS);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockScaling )( 
            IAcadModelSpace * This,
            /* [in] */ AcBlockScaling BS);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsDynamicBlock )( 
            IAcadModelSpace * This,
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimArc )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT ArcCenter,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT ArcPoint,
            /* [retval][out] */ IAcadDimArcLength **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRadialLarge )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT OverrideCenter,
            /* [in] */ VARIANT JogPoint,
            /* [in] */ double JogAngle,
            /* [retval][out] */ IAcadDimRadialLarge **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSection )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT fromPoint,
            /* [in] */ VARIANT toPoint,
            /* [in] */ VARIANT planeVector,
            /* [retval][out] */ IAcadSection **ppSecPlane);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMLeader )( 
            IAcadModelSpace * This,
            /* [in] */ VARIANT pointsArray,
            /* [out] */ int *leaderLineIndex,
            /* [retval][out] */ IAcadMLeader **pMLeader);
        
        END_INTERFACE
    } IAcadModelSpaceVtbl;

    interface IAcadModelSpace
    {
        CONST_VTBL struct IAcadModelSpaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadModelSpace_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadModelSpace_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadModelSpace_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadModelSpace_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadModelSpace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadModelSpace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadModelSpace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadModelSpace_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadModelSpace_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadModelSpace_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadModelSpace_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadModelSpace_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadModelSpace_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadModelSpace_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadModelSpace_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadModelSpace_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadModelSpace_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadModelSpace_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadModelSpace_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadModelSpace_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadModelSpace_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadModelSpace_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadModelSpace_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadModelSpace_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadModelSpace_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadModelSpace_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadModelSpace_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadModelSpace_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadModelSpace_put_Origin(This,origin)	\
    ( (This)->lpVtbl -> put_Origin(This,origin) ) 

#define IAcadModelSpace_AddCustomObject(This,ClassName,pObject)	\
    ( (This)->lpVtbl -> AddCustomObject(This,ClassName,pObject) ) 

#define IAcadModelSpace_Add3DFace(This,Point1,Point2,Point3,Point4,pFace3d)	\
    ( (This)->lpVtbl -> Add3DFace(This,Point1,Point2,Point3,Point4,pFace3d) ) 

#define IAcadModelSpace_Add3DMesh(This,M,N,PointsMatrix,pMesh3d)	\
    ( (This)->lpVtbl -> Add3DMesh(This,M,N,PointsMatrix,pMesh3d) ) 

#define IAcadModelSpace_Add3DPoly(This,PointsArray,pPoly3d)	\
    ( (This)->lpVtbl -> Add3DPoly(This,PointsArray,pPoly3d) ) 

#define IAcadModelSpace_AddArc(This,Center,Radius,StartAngle,EndAngle,pArc)	\
    ( (This)->lpVtbl -> AddArc(This,Center,Radius,StartAngle,EndAngle,pArc) ) 

#define IAcadModelSpace_AddAttribute(This,Height,Mode,Prompt,InsertionPoint,Tag,Value,pAttr)	\
    ( (This)->lpVtbl -> AddAttribute(This,Height,Mode,Prompt,InsertionPoint,Tag,Value,pAttr) ) 

#define IAcadModelSpace_AddBox(This,Origin,Length,Width,Height,pBox)	\
    ( (This)->lpVtbl -> AddBox(This,Origin,Length,Width,Height,pBox) ) 

#define IAcadModelSpace_AddCircle(This,center,radius,pCircle)	\
    ( (This)->lpVtbl -> AddCircle(This,center,radius,pCircle) ) 

#define IAcadModelSpace_AddCone(This,Center,BaseRadius,Height,pCone)	\
    ( (This)->lpVtbl -> AddCone(This,Center,BaseRadius,Height,pCone) ) 

#define IAcadModelSpace_AddCylinder(This,Center,Radius,Height,pCyl)	\
    ( (This)->lpVtbl -> AddCylinder(This,Center,Radius,Height,pCyl) ) 

#define IAcadModelSpace_AddDimAligned(This,ExtLine1Point,ExtLine2Point,TextPosition,pDim)	\
    ( (This)->lpVtbl -> AddDimAligned(This,ExtLine1Point,ExtLine2Point,TextPosition,pDim) ) 

#define IAcadModelSpace_AddDimAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim)	\
    ( (This)->lpVtbl -> AddDimAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim) ) 

#define IAcadModelSpace_AddDimDiametric(This,ChordPoint,FarChordPoint,LeaderLength,pDim)	\
    ( (This)->lpVtbl -> AddDimDiametric(This,ChordPoint,FarChordPoint,LeaderLength,pDim) ) 

#define IAcadModelSpace_AddDimRotated(This,ExtLine1Point,ExtLine2Point,DimLineLocation,RotationAngle,pDim)	\
    ( (This)->lpVtbl -> AddDimRotated(This,ExtLine1Point,ExtLine2Point,DimLineLocation,RotationAngle,pDim) ) 

#define IAcadModelSpace_AddDimOrdinate(This,DefinitionPoint,LeaderEndPoint,UseXAxis,pDim)	\
    ( (This)->lpVtbl -> AddDimOrdinate(This,DefinitionPoint,LeaderEndPoint,UseXAxis,pDim) ) 

#define IAcadModelSpace_AddDimRadial(This,Center,ChordPoint,LeaderLength,pDim)	\
    ( (This)->lpVtbl -> AddDimRadial(This,Center,ChordPoint,LeaderLength,pDim) ) 

#define IAcadModelSpace_AddEllipse(This,Center,MajorAxis,RadiusRatio,pEllipse)	\
    ( (This)->lpVtbl -> AddEllipse(This,Center,MajorAxis,RadiusRatio,pEllipse) ) 

#define IAcadModelSpace_AddEllipticalCone(This,Center,MajorRadius,MinorRadius,Height,pEllipCone)	\
    ( (This)->lpVtbl -> AddEllipticalCone(This,Center,MajorRadius,MinorRadius,Height,pEllipCone) ) 

#define IAcadModelSpace_AddEllipticalCylinder(This,Center,MajorRadius,MinorRadius,Height,pEllipCyl)	\
    ( (This)->lpVtbl -> AddEllipticalCylinder(This,Center,MajorRadius,MinorRadius,Height,pEllipCyl) ) 

#define IAcadModelSpace_AddExtrudedSolid(This,Profile,Height,TaperAngle,pExtrSolid)	\
    ( (This)->lpVtbl -> AddExtrudedSolid(This,Profile,Height,TaperAngle,pExtrSolid) ) 

#define IAcadModelSpace_AddExtrudedSolidAlongPath(This,Profile,Path,pExtrSolid)	\
    ( (This)->lpVtbl -> AddExtrudedSolidAlongPath(This,Profile,Path,pExtrSolid) ) 

#define IAcadModelSpace_AddLeader(This,PointsArray,Annotation,Type,pLeader)	\
    ( (This)->lpVtbl -> AddLeader(This,PointsArray,Annotation,Type,pLeader) ) 

#define IAcadModelSpace_AddMText(This,InsertionPoint,Width,Text,pMtext)	\
    ( (This)->lpVtbl -> AddMText(This,InsertionPoint,Width,Text,pMtext) ) 

#define IAcadModelSpace_AddPoint(This,Point,pPoint)	\
    ( (This)->lpVtbl -> AddPoint(This,Point,pPoint) ) 

#define IAcadModelSpace_AddLightWeightPolyline(This,VerticesList,pLWPolyline)	\
    ( (This)->lpVtbl -> AddLightWeightPolyline(This,VerticesList,pLWPolyline) ) 

#define IAcadModelSpace_AddPolyline(This,VerticesList,pPolyline)	\
    ( (This)->lpVtbl -> AddPolyline(This,VerticesList,pPolyline) ) 

#define IAcadModelSpace_AddRay(This,Point1,Point2,pRay)	\
    ( (This)->lpVtbl -> AddRay(This,Point1,Point2,pRay) ) 

#define IAcadModelSpace_AddRegion(This,ObjectList,pRegions)	\
    ( (This)->lpVtbl -> AddRegion(This,ObjectList,pRegions) ) 

#define IAcadModelSpace_AddRevolvedSolid(This,Profile,AxisPoint,AxisDir,Angle,pRevolSolid)	\
    ( (This)->lpVtbl -> AddRevolvedSolid(This,Profile,AxisPoint,AxisDir,Angle,pRevolSolid) ) 

#define IAcadModelSpace_AddShape(This,Name,InsertionPoint,scaleFactor,rotationAngle,pShape)	\
    ( (This)->lpVtbl -> AddShape(This,Name,InsertionPoint,scaleFactor,rotationAngle,pShape) ) 

#define IAcadModelSpace_AddSolid(This,Point1,Point2,Point3,Point4,pSolid)	\
    ( (This)->lpVtbl -> AddSolid(This,Point1,Point2,Point3,Point4,pSolid) ) 

#define IAcadModelSpace_AddSphere(This,Center,Radius,pSphere)	\
    ( (This)->lpVtbl -> AddSphere(This,Center,Radius,pSphere) ) 

#define IAcadModelSpace_AddSpline(This,PointsArray,StartTangent,EndTangent,pSpline)	\
    ( (This)->lpVtbl -> AddSpline(This,PointsArray,StartTangent,EndTangent,pSpline) ) 

#define IAcadModelSpace_AddText(This,TextString,InsertionPoint,Height,pText)	\
    ( (This)->lpVtbl -> AddText(This,TextString,InsertionPoint,Height,pText) ) 

#define IAcadModelSpace_AddTolerance(This,Text,InsertionPoint,Direction,pTolerance)	\
    ( (This)->lpVtbl -> AddTolerance(This,Text,InsertionPoint,Direction,pTolerance) ) 

#define IAcadModelSpace_AddTorus(This,Center,TorusRadius,TubeRadius,pTorus)	\
    ( (This)->lpVtbl -> AddTorus(This,Center,TorusRadius,TubeRadius,pTorus) ) 

#define IAcadModelSpace_AddTrace(This,PointsArray,pTrace)	\
    ( (This)->lpVtbl -> AddTrace(This,PointsArray,pTrace) ) 

#define IAcadModelSpace_AddWedge(This,Center,Length,Width,Height,pWedge)	\
    ( (This)->lpVtbl -> AddWedge(This,Center,Length,Width,Height,pWedge) ) 

#define IAcadModelSpace_AddXline(This,Point1,Point2,pXline)	\
    ( (This)->lpVtbl -> AddXline(This,Point1,Point2,pXline) ) 

#define IAcadModelSpace_InsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,Password,pBlkRef)	\
    ( (This)->lpVtbl -> InsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,Password,pBlkRef) ) 

#define IAcadModelSpace_AddHatch(This,PatternType,PatternName,Associativity,HatchObjectType,pHatch)	\
    ( (This)->lpVtbl -> AddHatch(This,PatternType,PatternName,Associativity,HatchObjectType,pHatch) ) 

#define IAcadModelSpace_AddRaster(This,ImageFileName,InsertionPoint,ScaleFactor,RotationAngle,pRaster)	\
    ( (This)->lpVtbl -> AddRaster(This,ImageFileName,InsertionPoint,ScaleFactor,RotationAngle,pRaster) ) 

#define IAcadModelSpace_AddLine(This,StartPoint,EndPoint,pLine)	\
    ( (This)->lpVtbl -> AddLine(This,StartPoint,EndPoint,pLine) ) 

#define IAcadModelSpace_get_IsLayout(This,bIsLayout)	\
    ( (This)->lpVtbl -> get_IsLayout(This,bIsLayout) ) 

#define IAcadModelSpace_get_Layout(This,pLayout)	\
    ( (This)->lpVtbl -> get_Layout(This,pLayout) ) 

#define IAcadModelSpace_get_IsXRef(This,pIsXRref)	\
    ( (This)->lpVtbl -> get_IsXRef(This,pIsXRref) ) 

#define IAcadModelSpace_AddMInsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,NumRows,NumColumns,RowSpacing,ColumnSpacing,Password,pMInsertBlk)	\
    ( (This)->lpVtbl -> AddMInsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,NumRows,NumColumns,RowSpacing,ColumnSpacing,Password,pMInsertBlk) ) 

#define IAcadModelSpace_AddPolyfaceMesh(This,VertexList,FaceList,pPFMesh)	\
    ( (This)->lpVtbl -> AddPolyfaceMesh(This,VertexList,FaceList,pPFMesh) ) 

#define IAcadModelSpace_AddMLine(This,VertexList,pMLine)	\
    ( (This)->lpVtbl -> AddMLine(This,VertexList,pMLine) ) 

#define IAcadModelSpace_AddDim3PointAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim)	\
    ( (This)->lpVtbl -> AddDim3PointAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim) ) 

#define IAcadModelSpace_get_XRefDatabase(This,pDatabase)	\
    ( (This)->lpVtbl -> get_XRefDatabase(This,pDatabase) ) 

#define IAcadModelSpace_AttachExternalReference(This,PathName,Name,InsertionPoint,Xscale,Yscale,Zscale,Rotation,bOverlay,Password,pXRef)	\
    ( (This)->lpVtbl -> AttachExternalReference(This,PathName,Name,InsertionPoint,Xscale,Yscale,Zscale,Rotation,bOverlay,Password,pXRef) ) 

#define IAcadModelSpace_Unload(This)	\
    ( (This)->lpVtbl -> Unload(This) ) 

#define IAcadModelSpace_Reload(This)	\
    ( (This)->lpVtbl -> Reload(This) ) 

#define IAcadModelSpace_Bind(This,bPrefixName)	\
    ( (This)->lpVtbl -> Bind(This,bPrefixName) ) 

#define IAcadModelSpace_Detach(This)	\
    ( (This)->lpVtbl -> Detach(This) ) 

#define IAcadModelSpace_AddTable(This,InsertionPoint,NumRows,NumColumns,RowHeight,ColWidth,pTable)	\
    ( (This)->lpVtbl -> AddTable(This,InsertionPoint,NumRows,NumColumns,RowHeight,ColWidth,pTable) ) 

#define IAcadModelSpace_get_Path(This,bstrName)	\
    ( (This)->lpVtbl -> get_Path(This,bstrName) ) 

#define IAcadModelSpace_put_Path(This,bstrName)	\
    ( (This)->lpVtbl -> put_Path(This,bstrName) ) 

#define IAcadModelSpace_get_Comments(This,bstrName)	\
    ( (This)->lpVtbl -> get_Comments(This,bstrName) ) 

#define IAcadModelSpace_put_Comments(This,bstrName)	\
    ( (This)->lpVtbl -> put_Comments(This,bstrName) ) 

#define IAcadModelSpace_get_Units(This,pIU)	\
    ( (This)->lpVtbl -> get_Units(This,pIU) ) 

#define IAcadModelSpace_put_Units(This,IU)	\
    ( (This)->lpVtbl -> put_Units(This,IU) ) 

#define IAcadModelSpace_get_Explodable(This,bExplodable)	\
    ( (This)->lpVtbl -> get_Explodable(This,bExplodable) ) 

#define IAcadModelSpace_put_Explodable(This,bExplodable)	\
    ( (This)->lpVtbl -> put_Explodable(This,bExplodable) ) 

#define IAcadModelSpace_get_BlockScaling(This,pBS)	\
    ( (This)->lpVtbl -> get_BlockScaling(This,pBS) ) 

#define IAcadModelSpace_put_BlockScaling(This,BS)	\
    ( (This)->lpVtbl -> put_BlockScaling(This,BS) ) 

#define IAcadModelSpace_get_IsDynamicBlock(This,pDynamicBlock)	\
    ( (This)->lpVtbl -> get_IsDynamicBlock(This,pDynamicBlock) ) 

#define IAcadModelSpace_AddDimArc(This,ArcCenter,FirstEndPoint,SecondEndPoint,ArcPoint,pDim)	\
    ( (This)->lpVtbl -> AddDimArc(This,ArcCenter,FirstEndPoint,SecondEndPoint,ArcPoint,pDim) ) 

#define IAcadModelSpace_AddDimRadialLarge(This,Center,ChordPoint,OverrideCenter,JogPoint,JogAngle,pDim)	\
    ( (This)->lpVtbl -> AddDimRadialLarge(This,Center,ChordPoint,OverrideCenter,JogPoint,JogAngle,pDim) ) 

#define IAcadModelSpace_AddSection(This,fromPoint,toPoint,planeVector,ppSecPlane)	\
    ( (This)->lpVtbl -> AddSection(This,fromPoint,toPoint,planeVector,ppSecPlane) ) 

#define IAcadModelSpace_AddMLeader(This,pointsArray,leaderLineIndex,pMLeader)	\
    ( (This)->lpVtbl -> AddMLeader(This,pointsArray,leaderLineIndex,pMLeader) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadModelSpace_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadModelSpace,0x151FB9D2,0x38F4,0x456F,0x87,0x20,0x97,0xBB,0xEB,0xDB,0x82,0xA8);

#ifdef __cplusplus

class DECLSPEC_UUID("151FB9D2-38F4-456F-8720-97BBEBDB82A8")
AcadModelSpace;
#endif

#ifndef __IAcadPaperSpace_INTERFACE_DEFINED__
#define __IAcadPaperSpace_INTERFACE_DEFINED__

/* interface IAcadPaperSpace */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadPaperSpace,0x76856FC9,0x8A8B,0x441E,0x8F,0xC3,0x0D,0xA5,0x29,0xCD,0x93,0x61);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("76856FC9-8A8B-441E-8FC3-0DA529CD9361")
    IAcadPaperSpace : public IAcadBlock
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddPViewport( 
            /* [in] */ VARIANT center,
            /* [in] */ double width,
            /* [in] */ double height,
            /* [retval][out] */ IAcadPViewport **pPViewport) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadPaperSpaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadPaperSpace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadPaperSpace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadPaperSpace * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadPaperSpace * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadPaperSpace * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadPaperSpace * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadPaperSpace * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ BSTR *Handle);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectName )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ BSTR *ObjectName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetXData )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR AppName,
            /* [out] */ VARIANT *XDataType,
            /* [out] */ VARIANT *XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetXData )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT XDataType,
            /* [in] */ VARIANT XDataValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadPaperSpace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LONG_PTR *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LPDISPATCH *ApplicationObject);
        
        /* [helpstringcontext][helpcontext][hidden][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasExtensionDictionary )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ VARIANT_BOOL *bHasDictionary);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetExtensionDictionary )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ IAcadDictionary **pExtDictionary);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LONG_PTR *OwnerId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Document )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LPDISPATCH *pDocument);
        
        /* [helpstringcontext][helpcontext][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *Erase )( 
            IAcadPaperSpace * This);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectID32 )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LONG *ObjectId);
        
        /* [helpstringcontext][helpcontext][nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OwnerID32 )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LONG *OwnerId);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadEntity **pItem);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Origin )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ VARIANT *origin);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Origin )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT origin);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCustomObject )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR ClassName,
            /* [retval][out] */ LPDISPATCH *pObject);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DFace )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcad3DFace **pFace3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DMesh )( 
            IAcadPaperSpace * This,
            /* [in] */ int M,
            /* [in] */ int N,
            /* [in] */ VARIANT PointsMatrix,
            /* [retval][out] */ IAcadPolygonMesh **pMesh3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Add3DPoly )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcad3DPolyline **pPoly3d);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddArc )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double StartAngle,
            /* [in] */ double EndAngle,
            /* [retval][out] */ IAcadArc **pArc);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddAttribute )( 
            IAcadPaperSpace * This,
            /* [in] */ double Height,
            /* [in] */ AcAttributeMode Mode,
            /* [in] */ BSTR Prompt,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Tag,
            /* [in] */ BSTR Value,
            /* [retval][out] */ IAcadAttribute **pAttr);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddBox )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Origin,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pBox);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCircle )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT center,
            /* [in] */ double radius,
            /* [retval][out] */ IAcadCircle **pCircle);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCone )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double BaseRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCone);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCylinder )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pCyl);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimAligned )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT TextPosition,
            /* [retval][out] */ IAcadDimAligned **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimAngular )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDimAngular **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimDiametric )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT FarChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimDiametric **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRotated )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT ExtLine1Point,
            /* [in] */ VARIANT ExtLine2Point,
            /* [in] */ VARIANT DimLineLocation,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadDimRotated **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimOrdinate )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT DefinitionPoint,
            /* [in] */ VARIANT LeaderEndPoint,
            /* [in] */ int UseXAxis,
            /* [retval][out] */ IAcadDimOrdinate **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRadial )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ double LeaderLength,
            /* [retval][out] */ IAcadDimRadial **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipse )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT MajorAxis,
            /* [in] */ double RadiusRatio,
            /* [retval][out] */ IAcadEllipse **pEllipse);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipticalCone )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCone);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddEllipticalCylinder )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double MajorRadius,
            /* [in] */ double MinorRadius,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pEllipCyl);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddExtrudedSolid )( 
            IAcadPaperSpace * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ double Height,
            /* [in] */ double TaperAngle,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddExtrudedSolidAlongPath )( 
            IAcadPaperSpace * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ IDispatch *Path,
            /* [retval][out] */ IAcad3DSolid **pExtrSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLeader )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [in] */ IAcadEntity *Annotation,
            /* [in] */ AcLeaderType Type,
            /* [retval][out] */ IAcadLeader **pLeader);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMText )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Width,
            /* [in] */ BSTR Text,
            /* [retval][out] */ IAcadMText **pMtext);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPoint )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Point,
            /* [retval][out] */ IAcadPoint **pPoint);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLightWeightPolyline )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadLWPolyline **pLWPolyline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPolyline )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT VerticesList,
            /* [retval][out] */ IAcadPolyline **pPolyline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRay )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadRay **pRay);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRegion )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT ObjectList,
            /* [retval][out] */ VARIANT *pRegions);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRevolvedSolid )( 
            IAcadPaperSpace * This,
            /* [in] */ IAcadRegion *Profile,
            /* [in] */ VARIANT AxisPoint,
            /* [in] */ VARIANT AxisDir,
            /* [in] */ double Angle,
            /* [retval][out] */ IAcad3DSolid **pRevolSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddShape )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double scaleFactor,
            /* [in] */ double rotationAngle,
            /* [retval][out] */ IAcadShape **pShape);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSolid )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [in] */ VARIANT Point3,
            /* [in] */ VARIANT Point4,
            /* [retval][out] */ IAcadSolid **pSolid);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSphere )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Radius,
            /* [retval][out] */ IAcad3DSolid **pSphere);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSpline )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [in] */ VARIANT StartTangent,
            /* [in] */ VARIANT EndTangent,
            /* [retval][out] */ IAcadSpline **pSpline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddText )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR TextString,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Height,
            /* [retval][out] */ IAcadText **pText);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTolerance )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR Text,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ VARIANT Direction,
            /* [retval][out] */ IAcadTolerance **pTolerance);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTorus )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double TorusRadius,
            /* [in] */ double TubeRadius,
            /* [retval][out] */ IAcad3DSolid **pTorus);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTrace )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT PointsArray,
            /* [retval][out] */ IAcadTrace **pTrace);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddWedge )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ double Length,
            /* [in] */ double Width,
            /* [in] */ double Height,
            /* [retval][out] */ IAcad3DSolid **pWedge);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddXline )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Point1,
            /* [in] */ VARIANT Point2,
            /* [retval][out] */ IAcadXline **pXline);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *InsertBlock )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadBlockReference **pBlkRef);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddHatch )( 
            IAcadPaperSpace * This,
            /* [in] */ int PatternType,
            /* [in] */ BSTR PatternName,
            /* [in] */ VARIANT_BOOL Associativity,
            /* [optional][in] */ VARIANT HatchObjectType,
            /* [retval][out] */ IAcadHatch **pHatch);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddRaster )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR ImageFileName,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double ScaleFactor,
            /* [in] */ double RotationAngle,
            /* [retval][out] */ IAcadRasterImage **pRaster);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddLine )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT StartPoint,
            /* [in] */ VARIANT EndPoint,
            /* [retval][out] */ IAcadLine **pLine);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsLayout )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ VARIANT_BOOL *bIsLayout);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Layout )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ IAcadLayout **pLayout);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsXRef )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ VARIANT_BOOL *pIsXRref);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMInsertBlock )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ BSTR Name,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ long NumRows,
            /* [in] */ long NumColumns,
            /* [in] */ long RowSpacing,
            /* [in] */ long ColumnSpacing,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadMInsertBlock **pMInsertBlk);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPolyfaceMesh )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT VertexList,
            /* [in] */ VARIANT FaceList,
            /* [retval][out] */ IAcadPolyfaceMesh **pPFMesh);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMLine )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT VertexList,
            /* [retval][out] */ IAcadMLine **pMLine);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDim3PointAngular )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT AngleVertex,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT TextPoint,
            /* [retval][out] */ IAcadDim3PointAngular **pDim);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XRefDatabase )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AttachExternalReference )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR PathName,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ double Xscale,
            /* [in] */ double Yscale,
            /* [in] */ double Zscale,
            /* [in] */ double Rotation,
            /* [in] */ VARIANT_BOOL bOverlay,
            /* [optional][in] */ VARIANT Password,
            /* [retval][out] */ IAcadExternalReference **pXRef);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Unload )( 
            IAcadPaperSpace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Reload )( 
            IAcadPaperSpace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Bind )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT_BOOL bPrefixName);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Detach )( 
            IAcadPaperSpace * This);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddTable )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT InsertionPoint,
            /* [in] */ int NumRows,
            /* [in] */ int NumColumns,
            /* [in] */ double RowHeight,
            /* [in] */ double ColWidth,
            /* [retval][out] */ IAcadTable **pTable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Path )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Comments )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ BSTR *bstrName);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Comments )( 
            IAcadPaperSpace * This,
            /* [in] */ BSTR bstrName);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Units )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ AcInsertUnits *pIU);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Units )( 
            IAcadPaperSpace * This,
            /* [in] */ AcInsertUnits IU);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Explodable )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ VARIANT_BOOL *bExplodable);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Explodable )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT_BOOL bExplodable);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockScaling )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ AcBlockScaling *pBS);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BlockScaling )( 
            IAcadPaperSpace * This,
            /* [in] */ AcBlockScaling BS);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsDynamicBlock )( 
            IAcadPaperSpace * This,
            /* [retval][out] */ VARIANT_BOOL *pDynamicBlock);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimArc )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT ArcCenter,
            /* [in] */ VARIANT FirstEndPoint,
            /* [in] */ VARIANT SecondEndPoint,
            /* [in] */ VARIANT ArcPoint,
            /* [retval][out] */ IAcadDimArcLength **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddDimRadialLarge )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT Center,
            /* [in] */ VARIANT ChordPoint,
            /* [in] */ VARIANT OverrideCenter,
            /* [in] */ VARIANT JogPoint,
            /* [in] */ double JogAngle,
            /* [retval][out] */ IAcadDimRadialLarge **pDim);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddSection )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT fromPoint,
            /* [in] */ VARIANT toPoint,
            /* [in] */ VARIANT planeVector,
            /* [retval][out] */ IAcadSection **ppSecPlane);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddMLeader )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT pointsArray,
            /* [out] */ int *leaderLineIndex,
            /* [retval][out] */ IAcadMLeader **pMLeader);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddPViewport )( 
            IAcadPaperSpace * This,
            /* [in] */ VARIANT center,
            /* [in] */ double width,
            /* [in] */ double height,
            /* [retval][out] */ IAcadPViewport **pPViewport);
        
        END_INTERFACE
    } IAcadPaperSpaceVtbl;

    interface IAcadPaperSpace
    {
        CONST_VTBL struct IAcadPaperSpaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadPaperSpace_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadPaperSpace_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadPaperSpace_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadPaperSpace_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadPaperSpace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadPaperSpace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadPaperSpace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadPaperSpace_get_Handle(This,Handle)	\
    ( (This)->lpVtbl -> get_Handle(This,Handle) ) 

#define IAcadPaperSpace_get_ObjectName(This,ObjectName)	\
    ( (This)->lpVtbl -> get_ObjectName(This,ObjectName) ) 

#define IAcadPaperSpace_GetXData(This,AppName,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> GetXData(This,AppName,XDataType,XDataValue) ) 

#define IAcadPaperSpace_SetXData(This,XDataType,XDataValue)	\
    ( (This)->lpVtbl -> SetXData(This,XDataType,XDataValue) ) 

#define IAcadPaperSpace_Delete(This)	\
    ( (This)->lpVtbl -> Delete(This) ) 

#define IAcadPaperSpace_get_ObjectID(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID(This,ObjectId) ) 

#define IAcadPaperSpace_get_Application(This,ApplicationObject)	\
    ( (This)->lpVtbl -> get_Application(This,ApplicationObject) ) 

#define IAcadPaperSpace_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#define IAcadPaperSpace_get_HasExtensionDictionary(This,bHasDictionary)	\
    ( (This)->lpVtbl -> get_HasExtensionDictionary(This,bHasDictionary) ) 

#define IAcadPaperSpace_GetExtensionDictionary(This,pExtDictionary)	\
    ( (This)->lpVtbl -> GetExtensionDictionary(This,pExtDictionary) ) 

#define IAcadPaperSpace_get_OwnerID(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID(This,OwnerId) ) 

#define IAcadPaperSpace_get_Document(This,pDocument)	\
    ( (This)->lpVtbl -> get_Document(This,pDocument) ) 

#define IAcadPaperSpace_Erase(This)	\
    ( (This)->lpVtbl -> Erase(This) ) 

#define IAcadPaperSpace_get_ObjectID32(This,ObjectId)	\
    ( (This)->lpVtbl -> get_ObjectID32(This,ObjectId) ) 

#define IAcadPaperSpace_get_OwnerID32(This,OwnerId)	\
    ( (This)->lpVtbl -> get_OwnerID32(This,OwnerId) ) 


#define IAcadPaperSpace_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadPaperSpace_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadPaperSpace_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadPaperSpace_get_Name(This,bstrName)	\
    ( (This)->lpVtbl -> get_Name(This,bstrName) ) 

#define IAcadPaperSpace_put_Name(This,bstrName)	\
    ( (This)->lpVtbl -> put_Name(This,bstrName) ) 

#define IAcadPaperSpace_get_Origin(This,origin)	\
    ( (This)->lpVtbl -> get_Origin(This,origin) ) 

#define IAcadPaperSpace_put_Origin(This,origin)	\
    ( (This)->lpVtbl -> put_Origin(This,origin) ) 

#define IAcadPaperSpace_AddCustomObject(This,ClassName,pObject)	\
    ( (This)->lpVtbl -> AddCustomObject(This,ClassName,pObject) ) 

#define IAcadPaperSpace_Add3DFace(This,Point1,Point2,Point3,Point4,pFace3d)	\
    ( (This)->lpVtbl -> Add3DFace(This,Point1,Point2,Point3,Point4,pFace3d) ) 

#define IAcadPaperSpace_Add3DMesh(This,M,N,PointsMatrix,pMesh3d)	\
    ( (This)->lpVtbl -> Add3DMesh(This,M,N,PointsMatrix,pMesh3d) ) 

#define IAcadPaperSpace_Add3DPoly(This,PointsArray,pPoly3d)	\
    ( (This)->lpVtbl -> Add3DPoly(This,PointsArray,pPoly3d) ) 

#define IAcadPaperSpace_AddArc(This,Center,Radius,StartAngle,EndAngle,pArc)	\
    ( (This)->lpVtbl -> AddArc(This,Center,Radius,StartAngle,EndAngle,pArc) ) 

#define IAcadPaperSpace_AddAttribute(This,Height,Mode,Prompt,InsertionPoint,Tag,Value,pAttr)	\
    ( (This)->lpVtbl -> AddAttribute(This,Height,Mode,Prompt,InsertionPoint,Tag,Value,pAttr) ) 

#define IAcadPaperSpace_AddBox(This,Origin,Length,Width,Height,pBox)	\
    ( (This)->lpVtbl -> AddBox(This,Origin,Length,Width,Height,pBox) ) 

#define IAcadPaperSpace_AddCircle(This,center,radius,pCircle)	\
    ( (This)->lpVtbl -> AddCircle(This,center,radius,pCircle) ) 

#define IAcadPaperSpace_AddCone(This,Center,BaseRadius,Height,pCone)	\
    ( (This)->lpVtbl -> AddCone(This,Center,BaseRadius,Height,pCone) ) 

#define IAcadPaperSpace_AddCylinder(This,Center,Radius,Height,pCyl)	\
    ( (This)->lpVtbl -> AddCylinder(This,Center,Radius,Height,pCyl) ) 

#define IAcadPaperSpace_AddDimAligned(This,ExtLine1Point,ExtLine2Point,TextPosition,pDim)	\
    ( (This)->lpVtbl -> AddDimAligned(This,ExtLine1Point,ExtLine2Point,TextPosition,pDim) ) 

#define IAcadPaperSpace_AddDimAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim)	\
    ( (This)->lpVtbl -> AddDimAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim) ) 

#define IAcadPaperSpace_AddDimDiametric(This,ChordPoint,FarChordPoint,LeaderLength,pDim)	\
    ( (This)->lpVtbl -> AddDimDiametric(This,ChordPoint,FarChordPoint,LeaderLength,pDim) ) 

#define IAcadPaperSpace_AddDimRotated(This,ExtLine1Point,ExtLine2Point,DimLineLocation,RotationAngle,pDim)	\
    ( (This)->lpVtbl -> AddDimRotated(This,ExtLine1Point,ExtLine2Point,DimLineLocation,RotationAngle,pDim) ) 

#define IAcadPaperSpace_AddDimOrdinate(This,DefinitionPoint,LeaderEndPoint,UseXAxis,pDim)	\
    ( (This)->lpVtbl -> AddDimOrdinate(This,DefinitionPoint,LeaderEndPoint,UseXAxis,pDim) ) 

#define IAcadPaperSpace_AddDimRadial(This,Center,ChordPoint,LeaderLength,pDim)	\
    ( (This)->lpVtbl -> AddDimRadial(This,Center,ChordPoint,LeaderLength,pDim) ) 

#define IAcadPaperSpace_AddEllipse(This,Center,MajorAxis,RadiusRatio,pEllipse)	\
    ( (This)->lpVtbl -> AddEllipse(This,Center,MajorAxis,RadiusRatio,pEllipse) ) 

#define IAcadPaperSpace_AddEllipticalCone(This,Center,MajorRadius,MinorRadius,Height,pEllipCone)	\
    ( (This)->lpVtbl -> AddEllipticalCone(This,Center,MajorRadius,MinorRadius,Height,pEllipCone) ) 

#define IAcadPaperSpace_AddEllipticalCylinder(This,Center,MajorRadius,MinorRadius,Height,pEllipCyl)	\
    ( (This)->lpVtbl -> AddEllipticalCylinder(This,Center,MajorRadius,MinorRadius,Height,pEllipCyl) ) 

#define IAcadPaperSpace_AddExtrudedSolid(This,Profile,Height,TaperAngle,pExtrSolid)	\
    ( (This)->lpVtbl -> AddExtrudedSolid(This,Profile,Height,TaperAngle,pExtrSolid) ) 

#define IAcadPaperSpace_AddExtrudedSolidAlongPath(This,Profile,Path,pExtrSolid)	\
    ( (This)->lpVtbl -> AddExtrudedSolidAlongPath(This,Profile,Path,pExtrSolid) ) 

#define IAcadPaperSpace_AddLeader(This,PointsArray,Annotation,Type,pLeader)	\
    ( (This)->lpVtbl -> AddLeader(This,PointsArray,Annotation,Type,pLeader) ) 

#define IAcadPaperSpace_AddMText(This,InsertionPoint,Width,Text,pMtext)	\
    ( (This)->lpVtbl -> AddMText(This,InsertionPoint,Width,Text,pMtext) ) 

#define IAcadPaperSpace_AddPoint(This,Point,pPoint)	\
    ( (This)->lpVtbl -> AddPoint(This,Point,pPoint) ) 

#define IAcadPaperSpace_AddLightWeightPolyline(This,VerticesList,pLWPolyline)	\
    ( (This)->lpVtbl -> AddLightWeightPolyline(This,VerticesList,pLWPolyline) ) 

#define IAcadPaperSpace_AddPolyline(This,VerticesList,pPolyline)	\
    ( (This)->lpVtbl -> AddPolyline(This,VerticesList,pPolyline) ) 

#define IAcadPaperSpace_AddRay(This,Point1,Point2,pRay)	\
    ( (This)->lpVtbl -> AddRay(This,Point1,Point2,pRay) ) 

#define IAcadPaperSpace_AddRegion(This,ObjectList,pRegions)	\
    ( (This)->lpVtbl -> AddRegion(This,ObjectList,pRegions) ) 

#define IAcadPaperSpace_AddRevolvedSolid(This,Profile,AxisPoint,AxisDir,Angle,pRevolSolid)	\
    ( (This)->lpVtbl -> AddRevolvedSolid(This,Profile,AxisPoint,AxisDir,Angle,pRevolSolid) ) 

#define IAcadPaperSpace_AddShape(This,Name,InsertionPoint,scaleFactor,rotationAngle,pShape)	\
    ( (This)->lpVtbl -> AddShape(This,Name,InsertionPoint,scaleFactor,rotationAngle,pShape) ) 

#define IAcadPaperSpace_AddSolid(This,Point1,Point2,Point3,Point4,pSolid)	\
    ( (This)->lpVtbl -> AddSolid(This,Point1,Point2,Point3,Point4,pSolid) ) 

#define IAcadPaperSpace_AddSphere(This,Center,Radius,pSphere)	\
    ( (This)->lpVtbl -> AddSphere(This,Center,Radius,pSphere) ) 

#define IAcadPaperSpace_AddSpline(This,PointsArray,StartTangent,EndTangent,pSpline)	\
    ( (This)->lpVtbl -> AddSpline(This,PointsArray,StartTangent,EndTangent,pSpline) ) 

#define IAcadPaperSpace_AddText(This,TextString,InsertionPoint,Height,pText)	\
    ( (This)->lpVtbl -> AddText(This,TextString,InsertionPoint,Height,pText) ) 

#define IAcadPaperSpace_AddTolerance(This,Text,InsertionPoint,Direction,pTolerance)	\
    ( (This)->lpVtbl -> AddTolerance(This,Text,InsertionPoint,Direction,pTolerance) ) 

#define IAcadPaperSpace_AddTorus(This,Center,TorusRadius,TubeRadius,pTorus)	\
    ( (This)->lpVtbl -> AddTorus(This,Center,TorusRadius,TubeRadius,pTorus) ) 

#define IAcadPaperSpace_AddTrace(This,PointsArray,pTrace)	\
    ( (This)->lpVtbl -> AddTrace(This,PointsArray,pTrace) ) 

#define IAcadPaperSpace_AddWedge(This,Center,Length,Width,Height,pWedge)	\
    ( (This)->lpVtbl -> AddWedge(This,Center,Length,Width,Height,pWedge) ) 

#define IAcadPaperSpace_AddXline(This,Point1,Point2,pXline)	\
    ( (This)->lpVtbl -> AddXline(This,Point1,Point2,pXline) ) 

#define IAcadPaperSpace_InsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,Password,pBlkRef)	\
    ( (This)->lpVtbl -> InsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,Password,pBlkRef) ) 

#define IAcadPaperSpace_AddHatch(This,PatternType,PatternName,Associativity,HatchObjectType,pHatch)	\
    ( (This)->lpVtbl -> AddHatch(This,PatternType,PatternName,Associativity,HatchObjectType,pHatch) ) 

#define IAcadPaperSpace_AddRaster(This,ImageFileName,InsertionPoint,ScaleFactor,RotationAngle,pRaster)	\
    ( (This)->lpVtbl -> AddRaster(This,ImageFileName,InsertionPoint,ScaleFactor,RotationAngle,pRaster) ) 

#define IAcadPaperSpace_AddLine(This,StartPoint,EndPoint,pLine)	\
    ( (This)->lpVtbl -> AddLine(This,StartPoint,EndPoint,pLine) ) 

#define IAcadPaperSpace_get_IsLayout(This,bIsLayout)	\
    ( (This)->lpVtbl -> get_IsLayout(This,bIsLayout) ) 

#define IAcadPaperSpace_get_Layout(This,pLayout)	\
    ( (This)->lpVtbl -> get_Layout(This,pLayout) ) 

#define IAcadPaperSpace_get_IsXRef(This,pIsXRref)	\
    ( (This)->lpVtbl -> get_IsXRef(This,pIsXRref) ) 

#define IAcadPaperSpace_AddMInsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,NumRows,NumColumns,RowSpacing,ColumnSpacing,Password,pMInsertBlk)	\
    ( (This)->lpVtbl -> AddMInsertBlock(This,InsertionPoint,Name,Xscale,Yscale,Zscale,Rotation,NumRows,NumColumns,RowSpacing,ColumnSpacing,Password,pMInsertBlk) ) 

#define IAcadPaperSpace_AddPolyfaceMesh(This,VertexList,FaceList,pPFMesh)	\
    ( (This)->lpVtbl -> AddPolyfaceMesh(This,VertexList,FaceList,pPFMesh) ) 

#define IAcadPaperSpace_AddMLine(This,VertexList,pMLine)	\
    ( (This)->lpVtbl -> AddMLine(This,VertexList,pMLine) ) 

#define IAcadPaperSpace_AddDim3PointAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim)	\
    ( (This)->lpVtbl -> AddDim3PointAngular(This,AngleVertex,FirstEndPoint,SecondEndPoint,TextPoint,pDim) ) 

#define IAcadPaperSpace_get_XRefDatabase(This,pDatabase)	\
    ( (This)->lpVtbl -> get_XRefDatabase(This,pDatabase) ) 

#define IAcadPaperSpace_AttachExternalReference(This,PathName,Name,InsertionPoint,Xscale,Yscale,Zscale,Rotation,bOverlay,Password,pXRef)	\
    ( (This)->lpVtbl -> AttachExternalReference(This,PathName,Name,InsertionPoint,Xscale,Yscale,Zscale,Rotation,bOverlay,Password,pXRef) ) 

#define IAcadPaperSpace_Unload(This)	\
    ( (This)->lpVtbl -> Unload(This) ) 

#define IAcadPaperSpace_Reload(This)	\
    ( (This)->lpVtbl -> Reload(This) ) 

#define IAcadPaperSpace_Bind(This,bPrefixName)	\
    ( (This)->lpVtbl -> Bind(This,bPrefixName) ) 

#define IAcadPaperSpace_Detach(This)	\
    ( (This)->lpVtbl -> Detach(This) ) 

#define IAcadPaperSpace_AddTable(This,InsertionPoint,NumRows,NumColumns,RowHeight,ColWidth,pTable)	\
    ( (This)->lpVtbl -> AddTable(This,InsertionPoint,NumRows,NumColumns,RowHeight,ColWidth,pTable) ) 

#define IAcadPaperSpace_get_Path(This,bstrName)	\
    ( (This)->lpVtbl -> get_Path(This,bstrName) ) 

#define IAcadPaperSpace_put_Path(This,bstrName)	\
    ( (This)->lpVtbl -> put_Path(This,bstrName) ) 

#define IAcadPaperSpace_get_Comments(This,bstrName)	\
    ( (This)->lpVtbl -> get_Comments(This,bstrName) ) 

#define IAcadPaperSpace_put_Comments(This,bstrName)	\
    ( (This)->lpVtbl -> put_Comments(This,bstrName) ) 

#define IAcadPaperSpace_get_Units(This,pIU)	\
    ( (This)->lpVtbl -> get_Units(This,pIU) ) 

#define IAcadPaperSpace_put_Units(This,IU)	\
    ( (This)->lpVtbl -> put_Units(This,IU) ) 

#define IAcadPaperSpace_get_Explodable(This,bExplodable)	\
    ( (This)->lpVtbl -> get_Explodable(This,bExplodable) ) 

#define IAcadPaperSpace_put_Explodable(This,bExplodable)	\
    ( (This)->lpVtbl -> put_Explodable(This,bExplodable) ) 

#define IAcadPaperSpace_get_BlockScaling(This,pBS)	\
    ( (This)->lpVtbl -> get_BlockScaling(This,pBS) ) 

#define IAcadPaperSpace_put_BlockScaling(This,BS)	\
    ( (This)->lpVtbl -> put_BlockScaling(This,BS) ) 

#define IAcadPaperSpace_get_IsDynamicBlock(This,pDynamicBlock)	\
    ( (This)->lpVtbl -> get_IsDynamicBlock(This,pDynamicBlock) ) 

#define IAcadPaperSpace_AddDimArc(This,ArcCenter,FirstEndPoint,SecondEndPoint,ArcPoint,pDim)	\
    ( (This)->lpVtbl -> AddDimArc(This,ArcCenter,FirstEndPoint,SecondEndPoint,ArcPoint,pDim) ) 

#define IAcadPaperSpace_AddDimRadialLarge(This,Center,ChordPoint,OverrideCenter,JogPoint,JogAngle,pDim)	\
    ( (This)->lpVtbl -> AddDimRadialLarge(This,Center,ChordPoint,OverrideCenter,JogPoint,JogAngle,pDim) ) 

#define IAcadPaperSpace_AddSection(This,fromPoint,toPoint,planeVector,ppSecPlane)	\
    ( (This)->lpVtbl -> AddSection(This,fromPoint,toPoint,planeVector,ppSecPlane) ) 

#define IAcadPaperSpace_AddMLeader(This,pointsArray,leaderLineIndex,pMLeader)	\
    ( (This)->lpVtbl -> AddMLeader(This,pointsArray,leaderLineIndex,pMLeader) ) 


#define IAcadPaperSpace_AddPViewport(This,center,width,height,pPViewport)	\
    ( (This)->lpVtbl -> AddPViewport(This,center,width,height,pPViewport) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadPaperSpace_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadPaperSpace,0xAF65484D,0x9BC9,0x4C36,0xA4,0xE3,0x37,0xBD,0x3D,0x72,0x62,0x22);

#ifdef __cplusplus

class DECLSPEC_UUID("AF65484D-9BC9-4C36-A4E3-37BD3D726222")
AcadPaperSpace;
#endif

#ifndef __IAcadFileDependency_INTERFACE_DEFINED__
#define __IAcadFileDependency_INTERFACE_DEFINED__

/* interface IAcadFileDependency */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadFileDependency,0x87C3D049,0xDE04,0x4966,0xB7,0x94,0x52,0x30,0x99,0x99,0x2E,0x06);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("87C3D049-DE04-4966-B794-523099992E06")
    IAcadFileDependency : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_FullFileName( 
            /* [retval][out] */ BSTR *fullFileName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR *fileName) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_FoundPath( 
            /* [retval][out] */ BSTR *foundPath) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_FingerprintGuid( 
            /* [retval][out] */ BSTR *fingerprintGuid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_VersionGuid( 
            /* [retval][out] */ BSTR *versionGuid) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Feature( 
            /* [retval][out] */ BSTR *feature) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_IsModified( 
            /* [retval][out] */ VARIANT_BOOL *isModified) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_AffectsGraphics( 
            /* [retval][out] */ VARIANT_BOOL *affectsGraphics) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Index( 
            /* [retval][out] */ long *index) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_TimeStamp( 
            /* [retval][out] */ long *timeStamp) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_FileSize( 
            /* [retval][out] */ long *fileSize) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ReferenceCount( 
            /* [retval][out] */ long *refCount) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadFileDependencyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadFileDependency * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadFileDependency * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadFileDependency * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadFileDependency * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadFileDependency * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadFileDependency * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadFileDependency * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullFileName )( 
            IAcadFileDependency * This,
            /* [retval][out] */ BSTR *fullFileName);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FileName )( 
            IAcadFileDependency * This,
            /* [retval][out] */ BSTR *fileName);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FoundPath )( 
            IAcadFileDependency * This,
            /* [retval][out] */ BSTR *foundPath);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FingerprintGuid )( 
            IAcadFileDependency * This,
            /* [retval][out] */ BSTR *fingerprintGuid);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VersionGuid )( 
            IAcadFileDependency * This,
            /* [retval][out] */ BSTR *versionGuid);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Feature )( 
            IAcadFileDependency * This,
            /* [retval][out] */ BSTR *feature);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_IsModified )( 
            IAcadFileDependency * This,
            /* [retval][out] */ VARIANT_BOOL *isModified);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AffectsGraphics )( 
            IAcadFileDependency * This,
            /* [retval][out] */ VARIANT_BOOL *affectsGraphics);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Index )( 
            IAcadFileDependency * This,
            /* [retval][out] */ long *index);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TimeStamp )( 
            IAcadFileDependency * This,
            /* [retval][out] */ long *timeStamp);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FileSize )( 
            IAcadFileDependency * This,
            /* [retval][out] */ long *fileSize);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ReferenceCount )( 
            IAcadFileDependency * This,
            /* [retval][out] */ long *refCount);
        
        END_INTERFACE
    } IAcadFileDependencyVtbl;

    interface IAcadFileDependency
    {
        CONST_VTBL struct IAcadFileDependencyVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadFileDependency_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadFileDependency_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadFileDependency_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadFileDependency_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadFileDependency_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadFileDependency_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadFileDependency_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadFileDependency_get_FullFileName(This,fullFileName)	\
    ( (This)->lpVtbl -> get_FullFileName(This,fullFileName) ) 

#define IAcadFileDependency_get_FileName(This,fileName)	\
    ( (This)->lpVtbl -> get_FileName(This,fileName) ) 

#define IAcadFileDependency_get_FoundPath(This,foundPath)	\
    ( (This)->lpVtbl -> get_FoundPath(This,foundPath) ) 

#define IAcadFileDependency_get_FingerprintGuid(This,fingerprintGuid)	\
    ( (This)->lpVtbl -> get_FingerprintGuid(This,fingerprintGuid) ) 

#define IAcadFileDependency_get_VersionGuid(This,versionGuid)	\
    ( (This)->lpVtbl -> get_VersionGuid(This,versionGuid) ) 

#define IAcadFileDependency_get_Feature(This,feature)	\
    ( (This)->lpVtbl -> get_Feature(This,feature) ) 

#define IAcadFileDependency_get_IsModified(This,isModified)	\
    ( (This)->lpVtbl -> get_IsModified(This,isModified) ) 

#define IAcadFileDependency_get_AffectsGraphics(This,affectsGraphics)	\
    ( (This)->lpVtbl -> get_AffectsGraphics(This,affectsGraphics) ) 

#define IAcadFileDependency_get_Index(This,index)	\
    ( (This)->lpVtbl -> get_Index(This,index) ) 

#define IAcadFileDependency_get_TimeStamp(This,timeStamp)	\
    ( (This)->lpVtbl -> get_TimeStamp(This,timeStamp) ) 

#define IAcadFileDependency_get_FileSize(This,fileSize)	\
    ( (This)->lpVtbl -> get_FileSize(This,fileSize) ) 

#define IAcadFileDependency_get_ReferenceCount(This,refCount)	\
    ( (This)->lpVtbl -> get_ReferenceCount(This,refCount) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadFileDependency_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadFileDependency,0x490BE6CE,0xA6B5,0x4A45,0x92,0xCA,0x1D,0xA2,0x37,0x08,0x9A,0xE6);

#ifdef __cplusplus

class DECLSPEC_UUID("490BE6CE-A6B5-4A45-92CA-1DA237089AE6")
AcadFileDependency;
#endif

#ifndef __IAcadFileDependencies_INTERFACE_DEFINED__
#define __IAcadFileDependencies_INTERFACE_DEFINED__

/* interface IAcadFileDependencies */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadFileDependencies,0xD932B444,0x5E99,0x4739,0xB6,0x56,0x51,0x5A,0xA9,0xDA,0x3E,0xBE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D932B444-5E99-4739-B656-515AA9DA3EBE")
    IAcadFileDependencies : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadFileDependency **pItem) = 0;
        
        virtual /* [hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ LPUNKNOWN *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *pAppObj) = 0;
        
        virtual /* [helpcontext][helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreateEntry( 
            /* [in] */ BSTR feature,
            /* [in] */ BSTR fullFileName,
            /* [in] */ VARIANT_BOOL affectsGraphics,
            /* [in] */ VARIANT_BOOL noIncrement,
            /* [retval][out] */ long *index) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ BSTR feature,
            /* [in] */ BSTR fullFileName,
            /* [retval][out] */ long *index) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveEntry( 
            /* [in] */ long index,
            /* [in] */ VARIANT_BOOL forceRemove) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE UpdateEntry( 
            /* [in] */ long index) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadFileDependenciesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadFileDependencies * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadFileDependencies * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadFileDependencies * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadFileDependencies * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadFileDependencies * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadFileDependencies * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadFileDependencies * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpcontext][helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( 
            IAcadFileDependencies * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAcadFileDependency **pItem);
        
        /* [hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
            IAcadFileDependencies * This,
            /* [retval][out] */ LPUNKNOWN *pVal);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadFileDependencies * This,
            /* [retval][out] */ LPDISPATCH *pAppObj);
        
        /* [helpcontext][helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IAcadFileDependencies * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreateEntry )( 
            IAcadFileDependencies * This,
            /* [in] */ BSTR feature,
            /* [in] */ BSTR fullFileName,
            /* [in] */ VARIANT_BOOL affectsGraphics,
            /* [in] */ VARIANT_BOOL noIncrement,
            /* [retval][out] */ long *index);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            IAcadFileDependencies * This,
            /* [in] */ BSTR feature,
            /* [in] */ BSTR fullFileName,
            /* [retval][out] */ long *index);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveEntry )( 
            IAcadFileDependencies * This,
            /* [in] */ long index,
            /* [in] */ VARIANT_BOOL forceRemove);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateEntry )( 
            IAcadFileDependencies * This,
            /* [in] */ long index);
        
        END_INTERFACE
    } IAcadFileDependenciesVtbl;

    interface IAcadFileDependencies
    {
        CONST_VTBL struct IAcadFileDependenciesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadFileDependencies_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadFileDependencies_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadFileDependencies_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadFileDependencies_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadFileDependencies_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadFileDependencies_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadFileDependencies_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadFileDependencies_Item(This,Index,pItem)	\
    ( (This)->lpVtbl -> Item(This,Index,pItem) ) 

#define IAcadFileDependencies_get__NewEnum(This,pVal)	\
    ( (This)->lpVtbl -> get__NewEnum(This,pVal) ) 

#define IAcadFileDependencies_get_Application(This,pAppObj)	\
    ( (This)->lpVtbl -> get_Application(This,pAppObj) ) 

#define IAcadFileDependencies_get_Count(This,pVal)	\
    ( (This)->lpVtbl -> get_Count(This,pVal) ) 

#define IAcadFileDependencies_CreateEntry(This,feature,fullFileName,affectsGraphics,noIncrement,index)	\
    ( (This)->lpVtbl -> CreateEntry(This,feature,fullFileName,affectsGraphics,noIncrement,index) ) 

#define IAcadFileDependencies_IndexOf(This,feature,fullFileName,index)	\
    ( (This)->lpVtbl -> IndexOf(This,feature,fullFileName,index) ) 

#define IAcadFileDependencies_RemoveEntry(This,index,forceRemove)	\
    ( (This)->lpVtbl -> RemoveEntry(This,index,forceRemove) ) 

#define IAcadFileDependencies_UpdateEntry(This,index)	\
    ( (This)->lpVtbl -> UpdateEntry(This,index) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadFileDependencies_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadFileDependencies,0x596CEF1D,0x2D7A,0x42FE,0x8F,0xC4,0x76,0xB0,0x87,0xBC,0xEB,0xDE);

#ifdef __cplusplus

class DECLSPEC_UUID("596CEF1D-2D7A-42FE-8FC4-76B087BCEBDE")
AcadFileDependencies;
#endif

#ifndef __IAcadSummaryInfo_INTERFACE_DEFINED__
#define __IAcadSummaryInfo_INTERFACE_DEFINED__

/* interface IAcadSummaryInfo */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadSummaryInfo,0xCEB19507,0xDE94,0x4A2B,0xA1,0xF0,0x1D,0x11,0xFE,0x35,0xC3,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CEB19507-DE94-4A2B-A1F0-1D11FE35C313")
    IAcadSummaryInfo : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Author( 
            /* [retval][out] */ BSTR *pAuthor) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Author( 
            /* [in] */ BSTR author) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comments( 
            /* [retval][out] */ BSTR *pComments) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comments( 
            /* [in] */ BSTR author) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_HyperlinkBase( 
            /* [retval][out] */ BSTR *pHyperlinkBase) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_HyperlinkBase( 
            /* [in] */ BSTR hyperlinkBase) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Keywords( 
            /* [retval][out] */ BSTR *pKeywords) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Keywords( 
            /* [in] */ BSTR keywords) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastSavedBy( 
            /* [retval][out] */ BSTR *pLastSavedBy) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LastSavedBy( 
            /* [in] */ BSTR lastSavedBy) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RevisionNumber( 
            /* [retval][out] */ BSTR *pRevisionNumber) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RevisionNumber( 
            /* [in] */ BSTR revisionNumber) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Subject( 
            /* [retval][out] */ BSTR *pSubject) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Subject( 
            /* [in] */ BSTR subject) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Title( 
            /* [retval][out] */ BSTR *pTitle) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Title( 
            /* [in] */ BSTR title) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE NumCustomInfo( 
            /* [retval][out] */ int *index) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCustomByIndex( 
            /* [in] */ int index,
            /* [out] */ BSTR *pKey,
            /* [out] */ BSTR *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetCustomByKey( 
            /* [in] */ BSTR key,
            /* [out] */ BSTR *pValue) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCustomByIndex( 
            /* [in] */ int index,
            /* [in] */ BSTR key,
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetCustomByKey( 
            /* [in] */ BSTR key,
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AddCustomInfo( 
            /* [in] */ BSTR key,
            /* [in] */ BSTR value) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveCustomByIndex( 
            /* [in] */ int index) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RemoveCustomByKey( 
            /* [in] */ BSTR key) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSummaryInfoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSummaryInfo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSummaryInfo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSummaryInfo * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSummaryInfo * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSummaryInfo * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSummaryInfo * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSummaryInfo * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Author )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pAuthor);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Author )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR author);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Comments )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pComments);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Comments )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR author);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HyperlinkBase )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pHyperlinkBase);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HyperlinkBase )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR hyperlinkBase);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Keywords )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pKeywords);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Keywords )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR keywords);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastSavedBy )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pLastSavedBy);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LastSavedBy )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR lastSavedBy);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RevisionNumber )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pRevisionNumber);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RevisionNumber )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR revisionNumber);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Subject )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pSubject);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Subject )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR subject);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Title )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ BSTR *pTitle);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Title )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR title);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *NumCustomInfo )( 
            IAcadSummaryInfo * This,
            /* [retval][out] */ int *index);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCustomByIndex )( 
            IAcadSummaryInfo * This,
            /* [in] */ int index,
            /* [out] */ BSTR *pKey,
            /* [out] */ BSTR *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetCustomByKey )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR key,
            /* [out] */ BSTR *pValue);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCustomByIndex )( 
            IAcadSummaryInfo * This,
            /* [in] */ int index,
            /* [in] */ BSTR key,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SetCustomByKey )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR key,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AddCustomInfo )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR key,
            /* [in] */ BSTR value);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveCustomByIndex )( 
            IAcadSummaryInfo * This,
            /* [in] */ int index);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveCustomByKey )( 
            IAcadSummaryInfo * This,
            /* [in] */ BSTR key);
        
        END_INTERFACE
    } IAcadSummaryInfoVtbl;

    interface IAcadSummaryInfo
    {
        CONST_VTBL struct IAcadSummaryInfoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSummaryInfo_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSummaryInfo_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSummaryInfo_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSummaryInfo_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSummaryInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSummaryInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSummaryInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSummaryInfo_get_Author(This,pAuthor)	\
    ( (This)->lpVtbl -> get_Author(This,pAuthor) ) 

#define IAcadSummaryInfo_put_Author(This,author)	\
    ( (This)->lpVtbl -> put_Author(This,author) ) 

#define IAcadSummaryInfo_get_Comments(This,pComments)	\
    ( (This)->lpVtbl -> get_Comments(This,pComments) ) 

#define IAcadSummaryInfo_put_Comments(This,author)	\
    ( (This)->lpVtbl -> put_Comments(This,author) ) 

#define IAcadSummaryInfo_get_HyperlinkBase(This,pHyperlinkBase)	\
    ( (This)->lpVtbl -> get_HyperlinkBase(This,pHyperlinkBase) ) 

#define IAcadSummaryInfo_put_HyperlinkBase(This,hyperlinkBase)	\
    ( (This)->lpVtbl -> put_HyperlinkBase(This,hyperlinkBase) ) 

#define IAcadSummaryInfo_get_Keywords(This,pKeywords)	\
    ( (This)->lpVtbl -> get_Keywords(This,pKeywords) ) 

#define IAcadSummaryInfo_put_Keywords(This,keywords)	\
    ( (This)->lpVtbl -> put_Keywords(This,keywords) ) 

#define IAcadSummaryInfo_get_LastSavedBy(This,pLastSavedBy)	\
    ( (This)->lpVtbl -> get_LastSavedBy(This,pLastSavedBy) ) 

#define IAcadSummaryInfo_put_LastSavedBy(This,lastSavedBy)	\
    ( (This)->lpVtbl -> put_LastSavedBy(This,lastSavedBy) ) 

#define IAcadSummaryInfo_get_RevisionNumber(This,pRevisionNumber)	\
    ( (This)->lpVtbl -> get_RevisionNumber(This,pRevisionNumber) ) 

#define IAcadSummaryInfo_put_RevisionNumber(This,revisionNumber)	\
    ( (This)->lpVtbl -> put_RevisionNumber(This,revisionNumber) ) 

#define IAcadSummaryInfo_get_Subject(This,pSubject)	\
    ( (This)->lpVtbl -> get_Subject(This,pSubject) ) 

#define IAcadSummaryInfo_put_Subject(This,subject)	\
    ( (This)->lpVtbl -> put_Subject(This,subject) ) 

#define IAcadSummaryInfo_get_Title(This,pTitle)	\
    ( (This)->lpVtbl -> get_Title(This,pTitle) ) 

#define IAcadSummaryInfo_put_Title(This,title)	\
    ( (This)->lpVtbl -> put_Title(This,title) ) 

#define IAcadSummaryInfo_NumCustomInfo(This,index)	\
    ( (This)->lpVtbl -> NumCustomInfo(This,index) ) 

#define IAcadSummaryInfo_GetCustomByIndex(This,index,pKey,pValue)	\
    ( (This)->lpVtbl -> GetCustomByIndex(This,index,pKey,pValue) ) 

#define IAcadSummaryInfo_GetCustomByKey(This,key,pValue)	\
    ( (This)->lpVtbl -> GetCustomByKey(This,key,pValue) ) 

#define IAcadSummaryInfo_SetCustomByIndex(This,index,key,value)	\
    ( (This)->lpVtbl -> SetCustomByIndex(This,index,key,value) ) 

#define IAcadSummaryInfo_SetCustomByKey(This,key,value)	\
    ( (This)->lpVtbl -> SetCustomByKey(This,key,value) ) 

#define IAcadSummaryInfo_AddCustomInfo(This,key,value)	\
    ( (This)->lpVtbl -> AddCustomInfo(This,key,value) ) 

#define IAcadSummaryInfo_RemoveCustomByIndex(This,index)	\
    ( (This)->lpVtbl -> RemoveCustomByIndex(This,index) ) 

#define IAcadSummaryInfo_RemoveCustomByKey(This,key)	\
    ( (This)->lpVtbl -> RemoveCustomByKey(This,key) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSummaryInfo_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSummaryInfo,0xEE7164EF,0x162A,0x4E90,0xBC,0x38,0x5E,0xA0,0x12,0x00,0xCF,0xF3);

#ifdef __cplusplus

class DECLSPEC_UUID("EE7164EF-162A-4E90-BC38-5EA01200CFF3")
AcadSummaryInfo;
#endif

#ifndef __IAcadDatabasePreferences_INTERFACE_DEFINED__
#define __IAcadDatabasePreferences_INTERFACE_DEFINED__

/* interface IAcadDatabasePreferences */
/* [unique][helpcontext][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadDatabasePreferences,0x2BF537C1,0x34DB,0x4840,0xA0,0x05,0xDE,0xFF,0x3D,0x44,0xFF,0xF9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2BF537C1-34DB-4840-A005-DEFF3D44FFF9")
    IAcadDatabasePreferences : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *pAppObj) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SolidFill( 
            /* [retval][out] */ VARIANT_BOOL *Fill) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SolidFill( 
            /* [in] */ VARIANT_BOOL Fill) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_XRefEdit( 
            /* [retval][out] */ VARIANT_BOOL *Edit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_XRefEdit( 
            /* [in] */ VARIANT_BOOL Edit) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_XRefLayerVisibility( 
            /* [retval][out] */ VARIANT_BOOL *XRefLayerVis) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_XRefLayerVisibility( 
            /* [in] */ VARIANT_BOOL XRefLayerVis) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_OLELaunch( 
            /* [retval][out] */ VARIANT_BOOL *Launch) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_OLELaunch( 
            /* [in] */ VARIANT_BOOL Launch) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_AllowLongSymbolNames( 
            /* [retval][out] */ VARIANT_BOOL *LongNames) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_AllowLongSymbolNames( 
            /* [in] */ VARIANT_BOOL LongNames) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectSortBySelection( 
            /* [retval][out] */ VARIANT_BOOL *Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectSortBySelection( 
            /* [in] */ VARIANT_BOOL Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectSortBySnap( 
            /* [retval][out] */ VARIANT_BOOL *Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectSortBySnap( 
            /* [in] */ VARIANT_BOOL Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectSortByRedraws( 
            /* [retval][out] */ VARIANT_BOOL *Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectSortByRedraws( 
            /* [in] */ VARIANT_BOOL Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectSortByRegens( 
            /* [retval][out] */ VARIANT_BOOL *Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectSortByRegens( 
            /* [in] */ VARIANT_BOOL Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectSortByPlotting( 
            /* [retval][out] */ VARIANT_BOOL *Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectSortByPlotting( 
            /* [in] */ VARIANT_BOOL Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectSortByPSOutput( 
            /* [retval][out] */ VARIANT_BOOL *Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectSortByPSOutput( 
            /* [in] */ VARIANT_BOOL Sort) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ContourLinesPerSurface( 
            /* [in] */ long path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ContourLinesPerSurface( 
            /* [retval][out] */ long *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisplaySilhouette( 
            /* [in] */ VARIANT_BOOL path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisplaySilhouette( 
            /* [retval][out] */ VARIANT_BOOL *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_MaxActiveViewports( 
            /* [in] */ long path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxActiveViewports( 
            /* [retval][out] */ long *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RenderSmoothness( 
            /* [in] */ double path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RenderSmoothness( 
            /* [retval][out] */ double *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_SegmentPerPolyline( 
            /* [in] */ long path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SegmentPerPolyline( 
            /* [retval][out] */ long *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextFrameDisplay( 
            /* [in] */ VARIANT_BOOL path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextFrameDisplay( 
            /* [retval][out] */ VARIANT_BOOL *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineWeight( 
            /* [in] */ AcLineWeight path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineWeight( 
            /* [retval][out] */ AcLineWeight *path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineWeightDisplay( 
            /* [in] */ VARIANT_BOOL path) = 0;
        
        virtual /* [helpstringcontext][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineWeightDisplay( 
            /* [retval][out] */ VARIANT_BOOL *path) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadDatabasePreferencesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadDatabasePreferences * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadDatabasePreferences * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadDatabasePreferences * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadDatabasePreferences * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadDatabasePreferences * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadDatabasePreferences * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadDatabasePreferences * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ LPDISPATCH *pAppObj);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SolidFill )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Fill);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SolidFill )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Fill);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XRefEdit )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Edit);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XRefEdit )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Edit);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XRefLayerVisibility )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *XRefLayerVis);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XRefLayerVisibility )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL XRefLayerVis);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OLELaunch )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Launch);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OLELaunch )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Launch);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowLongSymbolNames )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *LongNames);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowLongSymbolNames )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL LongNames);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectSortBySelection )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObjectSortBySelection )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Sort);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectSortBySnap )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObjectSortBySnap )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Sort);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectSortByRedraws )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObjectSortByRedraws )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Sort);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectSortByRegens )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObjectSortByRegens )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Sort);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectSortByPlotting )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObjectSortByPlotting )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Sort);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ObjectSortByPSOutput )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ObjectSortByPSOutput )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL Sort);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ContourLinesPerSurface )( 
            IAcadDatabasePreferences * This,
            /* [in] */ long path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ContourLinesPerSurface )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ long *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DisplaySilhouette )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DisplaySilhouette )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaxActiveViewports )( 
            IAcadDatabasePreferences * This,
            /* [in] */ long path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxActiveViewports )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ long *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RenderSmoothness )( 
            IAcadDatabasePreferences * This,
            /* [in] */ double path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RenderSmoothness )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ double *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SegmentPerPolyline )( 
            IAcadDatabasePreferences * This,
            /* [in] */ long path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SegmentPerPolyline )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ long *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TextFrameDisplay )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TextFrameDisplay )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineWeight )( 
            IAcadDatabasePreferences * This,
            /* [in] */ AcLineWeight path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineWeight )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ AcLineWeight *path);
        
        /* [helpstringcontext][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineWeightDisplay )( 
            IAcadDatabasePreferences * This,
            /* [in] */ VARIANT_BOOL path);
        
        /* [helpstringcontext][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineWeightDisplay )( 
            IAcadDatabasePreferences * This,
            /* [retval][out] */ VARIANT_BOOL *path);
        
        END_INTERFACE
    } IAcadDatabasePreferencesVtbl;

    interface IAcadDatabasePreferences
    {
        CONST_VTBL struct IAcadDatabasePreferencesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadDatabasePreferences_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadDatabasePreferences_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadDatabasePreferences_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadDatabasePreferences_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadDatabasePreferences_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadDatabasePreferences_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadDatabasePreferences_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadDatabasePreferences_get_Application(This,pAppObj)	\
    ( (This)->lpVtbl -> get_Application(This,pAppObj) ) 

#define IAcadDatabasePreferences_get_SolidFill(This,Fill)	\
    ( (This)->lpVtbl -> get_SolidFill(This,Fill) ) 

#define IAcadDatabasePreferences_put_SolidFill(This,Fill)	\
    ( (This)->lpVtbl -> put_SolidFill(This,Fill) ) 

#define IAcadDatabasePreferences_get_XRefEdit(This,Edit)	\
    ( (This)->lpVtbl -> get_XRefEdit(This,Edit) ) 

#define IAcadDatabasePreferences_put_XRefEdit(This,Edit)	\
    ( (This)->lpVtbl -> put_XRefEdit(This,Edit) ) 

#define IAcadDatabasePreferences_get_XRefLayerVisibility(This,XRefLayerVis)	\
    ( (This)->lpVtbl -> get_XRefLayerVisibility(This,XRefLayerVis) ) 

#define IAcadDatabasePreferences_put_XRefLayerVisibility(This,XRefLayerVis)	\
    ( (This)->lpVtbl -> put_XRefLayerVisibility(This,XRefLayerVis) ) 

#define IAcadDatabasePreferences_get_OLELaunch(This,Launch)	\
    ( (This)->lpVtbl -> get_OLELaunch(This,Launch) ) 

#define IAcadDatabasePreferences_put_OLELaunch(This,Launch)	\
    ( (This)->lpVtbl -> put_OLELaunch(This,Launch) ) 

#define IAcadDatabasePreferences_get_AllowLongSymbolNames(This,LongNames)	\
    ( (This)->lpVtbl -> get_AllowLongSymbolNames(This,LongNames) ) 

#define IAcadDatabasePreferences_put_AllowLongSymbolNames(This,LongNames)	\
    ( (This)->lpVtbl -> put_AllowLongSymbolNames(This,LongNames) ) 

#define IAcadDatabasePreferences_get_ObjectSortBySelection(This,Sort)	\
    ( (This)->lpVtbl -> get_ObjectSortBySelection(This,Sort) ) 

#define IAcadDatabasePreferences_put_ObjectSortBySelection(This,Sort)	\
    ( (This)->lpVtbl -> put_ObjectSortBySelection(This,Sort) ) 

#define IAcadDatabasePreferences_get_ObjectSortBySnap(This,Sort)	\
    ( (This)->lpVtbl -> get_ObjectSortBySnap(This,Sort) ) 

#define IAcadDatabasePreferences_put_ObjectSortBySnap(This,Sort)	\
    ( (This)->lpVtbl -> put_ObjectSortBySnap(This,Sort) ) 

#define IAcadDatabasePreferences_get_ObjectSortByRedraws(This,Sort)	\
    ( (This)->lpVtbl -> get_ObjectSortByRedraws(This,Sort) ) 

#define IAcadDatabasePreferences_put_ObjectSortByRedraws(This,Sort)	\
    ( (This)->lpVtbl -> put_ObjectSortByRedraws(This,Sort) ) 

#define IAcadDatabasePreferences_get_ObjectSortByRegens(This,Sort)	\
    ( (This)->lpVtbl -> get_ObjectSortByRegens(This,Sort) ) 

#define IAcadDatabasePreferences_put_ObjectSortByRegens(This,Sort)	\
    ( (This)->lpVtbl -> put_ObjectSortByRegens(This,Sort) ) 

#define IAcadDatabasePreferences_get_ObjectSortByPlotting(This,Sort)	\
    ( (This)->lpVtbl -> get_ObjectSortByPlotting(This,Sort) ) 

#define IAcadDatabasePreferences_put_ObjectSortByPlotting(This,Sort)	\
    ( (This)->lpVtbl -> put_ObjectSortByPlotting(This,Sort) ) 

#define IAcadDatabasePreferences_get_ObjectSortByPSOutput(This,Sort)	\
    ( (This)->lpVtbl -> get_ObjectSortByPSOutput(This,Sort) ) 

#define IAcadDatabasePreferences_put_ObjectSortByPSOutput(This,Sort)	\
    ( (This)->lpVtbl -> put_ObjectSortByPSOutput(This,Sort) ) 

#define IAcadDatabasePreferences_put_ContourLinesPerSurface(This,path)	\
    ( (This)->lpVtbl -> put_ContourLinesPerSurface(This,path) ) 

#define IAcadDatabasePreferences_get_ContourLinesPerSurface(This,path)	\
    ( (This)->lpVtbl -> get_ContourLinesPerSurface(This,path) ) 

#define IAcadDatabasePreferences_put_DisplaySilhouette(This,path)	\
    ( (This)->lpVtbl -> put_DisplaySilhouette(This,path) ) 

#define IAcadDatabasePreferences_get_DisplaySilhouette(This,path)	\
    ( (This)->lpVtbl -> get_DisplaySilhouette(This,path) ) 

#define IAcadDatabasePreferences_put_MaxActiveViewports(This,path)	\
    ( (This)->lpVtbl -> put_MaxActiveViewports(This,path) ) 

#define IAcadDatabasePreferences_get_MaxActiveViewports(This,path)	\
    ( (This)->lpVtbl -> get_MaxActiveViewports(This,path) ) 

#define IAcadDatabasePreferences_put_RenderSmoothness(This,path)	\
    ( (This)->lpVtbl -> put_RenderSmoothness(This,path) ) 

#define IAcadDatabasePreferences_get_RenderSmoothness(This,path)	\
    ( (This)->lpVtbl -> get_RenderSmoothness(This,path) ) 

#define IAcadDatabasePreferences_put_SegmentPerPolyline(This,path)	\
    ( (This)->lpVtbl -> put_SegmentPerPolyline(This,path) ) 

#define IAcadDatabasePreferences_get_SegmentPerPolyline(This,path)	\
    ( (This)->lpVtbl -> get_SegmentPerPolyline(This,path) ) 

#define IAcadDatabasePreferences_put_TextFrameDisplay(This,path)	\
    ( (This)->lpVtbl -> put_TextFrameDisplay(This,path) ) 

#define IAcadDatabasePreferences_get_TextFrameDisplay(This,path)	\
    ( (This)->lpVtbl -> get_TextFrameDisplay(This,path) ) 

#define IAcadDatabasePreferences_put_LineWeight(This,path)	\
    ( (This)->lpVtbl -> put_LineWeight(This,path) ) 

#define IAcadDatabasePreferences_get_LineWeight(This,path)	\
    ( (This)->lpVtbl -> get_LineWeight(This,path) ) 

#define IAcadDatabasePreferences_put_LineWeightDisplay(This,path)	\
    ( (This)->lpVtbl -> put_LineWeightDisplay(This,path) ) 

#define IAcadDatabasePreferences_get_LineWeightDisplay(This,path)	\
    ( (This)->lpVtbl -> get_LineWeightDisplay(This,path) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadDatabasePreferences_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadDatabasePreferences,0xDF0B47FD,0xEF47,0x42A5,0x8A,0xF0,0xF6,0x1B,0x04,0xB0,0xA9,0xD8);

#ifdef __cplusplus

class DECLSPEC_UUID("DF0B47FD-EF47-42A5-8AF0-F61B04B0A9D8")
AcadDatabasePreferences;
#endif

DEFINE_GUID(CLSID_AcadDatabase,0x41D36B39,0xB3AE,0x468D,0x8A,0xB8,0x04,0xCC,0x10,0x07,0xE0,0xF6);

#ifdef __cplusplus

class DECLSPEC_UUID("41D36B39-B3AE-468D-8AB8-04CC1007E0F6")
AcadDatabase;
#endif

#ifndef __IAcadSecurityParams_INTERFACE_DEFINED__
#define __IAcadSecurityParams_INTERFACE_DEFINED__

/* interface IAcadSecurityParams */
/* [unique][dual][helpcontext][helpstringcontext][uuid][object] */ 


DEFINE_GUID(IID_IAcadSecurityParams,0xE9385F39,0x80AB,0x4DA9,0x8E,0x6D,0x78,0x84,0x2B,0x8B,0xED,0x79);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E9385F39-80AB-4DA9-8E6D-78842B8BED79")
    IAcadSecurityParams : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Action( 
            /* [in] */ long Operations) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Action( 
            /* [retval][out] */ long *pOperations) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Password( 
            /* [in] */ BSTR Secret) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Password( 
            /* [retval][out] */ BSTR *pSecret) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_ProviderType( 
            /* [in] */ long ProvType) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ProviderType( 
            /* [retval][out] */ long *pProvType) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_ProviderName( 
            /* [in] */ BSTR ProvName) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ProviderName( 
            /* [retval][out] */ BSTR *pProvName) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Algorithm( 
            /* [in] */ long AlgId) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Algorithm( 
            /* [retval][out] */ long *pAlgId) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyLength( 
            /* [in] */ long KeyLen) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyLength( 
            /* [retval][out] */ long *pKeyLen) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Subject( 
            /* [in] */ BSTR CertSubject) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Subject( 
            /* [retval][out] */ BSTR *pCertSubject) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Issuer( 
            /* [in] */ BSTR CertIssuer) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Issuer( 
            /* [retval][out] */ BSTR *pCertIssuer) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_SerialNumber( 
            /* [in] */ BSTR SerialNum) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_SerialNumber( 
            /* [retval][out] */ BSTR *pSerialNum) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR Text) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR *pText) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_TimeServer( 
            /* [in] */ BSTR TimeServerName) = 0;
        
        virtual /* [helpcontext][helpstringcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_TimeServer( 
            /* [retval][out] */ BSTR *pTimeServerName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadSecurityParamsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadSecurityParams * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadSecurityParams * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadSecurityParams * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadSecurityParams * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadSecurityParams * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadSecurityParams * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadSecurityParams * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Action )( 
            IAcadSecurityParams * This,
            /* [in] */ long Operations);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Action )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ long *pOperations);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Password )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR Secret);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Password )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pSecret);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ProviderType )( 
            IAcadSecurityParams * This,
            /* [in] */ long ProvType);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ProviderType )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ long *pProvType);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ProviderName )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR ProvName);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ProviderName )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pProvName);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Algorithm )( 
            IAcadSecurityParams * This,
            /* [in] */ long AlgId);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Algorithm )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ long *pAlgId);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyLength )( 
            IAcadSecurityParams * This,
            /* [in] */ long KeyLen);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyLength )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ long *pKeyLen);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Subject )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR CertSubject);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Subject )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pCertSubject);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Issuer )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR CertIssuer);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Issuer )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pCertIssuer);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SerialNumber )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR SerialNum);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SerialNumber )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pSerialNum);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Comment )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR Text);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Comment )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pText);
        
        /* [helpcontext][helpstringcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TimeServer )( 
            IAcadSecurityParams * This,
            /* [in] */ BSTR TimeServerName);
        
        /* [helpcontext][helpstringcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TimeServer )( 
            IAcadSecurityParams * This,
            /* [retval][out] */ BSTR *pTimeServerName);
        
        END_INTERFACE
    } IAcadSecurityParamsVtbl;

    interface IAcadSecurityParams
    {
        CONST_VTBL struct IAcadSecurityParamsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadSecurityParams_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadSecurityParams_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadSecurityParams_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadSecurityParams_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadSecurityParams_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadSecurityParams_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadSecurityParams_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadSecurityParams_put_Action(This,Operations)	\
    ( (This)->lpVtbl -> put_Action(This,Operations) ) 

#define IAcadSecurityParams_get_Action(This,pOperations)	\
    ( (This)->lpVtbl -> get_Action(This,pOperations) ) 

#define IAcadSecurityParams_put_Password(This,Secret)	\
    ( (This)->lpVtbl -> put_Password(This,Secret) ) 

#define IAcadSecurityParams_get_Password(This,pSecret)	\
    ( (This)->lpVtbl -> get_Password(This,pSecret) ) 

#define IAcadSecurityParams_put_ProviderType(This,ProvType)	\
    ( (This)->lpVtbl -> put_ProviderType(This,ProvType) ) 

#define IAcadSecurityParams_get_ProviderType(This,pProvType)	\
    ( (This)->lpVtbl -> get_ProviderType(This,pProvType) ) 

#define IAcadSecurityParams_put_ProviderName(This,ProvName)	\
    ( (This)->lpVtbl -> put_ProviderName(This,ProvName) ) 

#define IAcadSecurityParams_get_ProviderName(This,pProvName)	\
    ( (This)->lpVtbl -> get_ProviderName(This,pProvName) ) 

#define IAcadSecurityParams_put_Algorithm(This,AlgId)	\
    ( (This)->lpVtbl -> put_Algorithm(This,AlgId) ) 

#define IAcadSecurityParams_get_Algorithm(This,pAlgId)	\
    ( (This)->lpVtbl -> get_Algorithm(This,pAlgId) ) 

#define IAcadSecurityParams_put_KeyLength(This,KeyLen)	\
    ( (This)->lpVtbl -> put_KeyLength(This,KeyLen) ) 

#define IAcadSecurityParams_get_KeyLength(This,pKeyLen)	\
    ( (This)->lpVtbl -> get_KeyLength(This,pKeyLen) ) 

#define IAcadSecurityParams_put_Subject(This,CertSubject)	\
    ( (This)->lpVtbl -> put_Subject(This,CertSubject) ) 

#define IAcadSecurityParams_get_Subject(This,pCertSubject)	\
    ( (This)->lpVtbl -> get_Subject(This,pCertSubject) ) 

#define IAcadSecurityParams_put_Issuer(This,CertIssuer)	\
    ( (This)->lpVtbl -> put_Issuer(This,CertIssuer) ) 

#define IAcadSecurityParams_get_Issuer(This,pCertIssuer)	\
    ( (This)->lpVtbl -> get_Issuer(This,pCertIssuer) ) 

#define IAcadSecurityParams_put_SerialNumber(This,SerialNum)	\
    ( (This)->lpVtbl -> put_SerialNumber(This,SerialNum) ) 

#define IAcadSecurityParams_get_SerialNumber(This,pSerialNum)	\
    ( (This)->lpVtbl -> get_SerialNumber(This,pSerialNum) ) 

#define IAcadSecurityParams_put_Comment(This,Text)	\
    ( (This)->lpVtbl -> put_Comment(This,Text) ) 

#define IAcadSecurityParams_get_Comment(This,pText)	\
    ( (This)->lpVtbl -> get_Comment(This,pText) ) 

#define IAcadSecurityParams_put_TimeServer(This,TimeServerName)	\
    ( (This)->lpVtbl -> put_TimeServer(This,TimeServerName) ) 

#define IAcadSecurityParams_get_TimeServer(This,pTimeServerName)	\
    ( (This)->lpVtbl -> get_TimeServer(This,pTimeServerName) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadSecurityParams_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadSecurityParams,0xD572547B,0x8F57,0x45CB,0x87,0x54,0x72,0xB1,0x60,0x6C,0x5D,0xAF);

#ifdef __cplusplus

class DECLSPEC_UUID("D572547B-8F57-45CB-8754-72B1606C5DAF")
AcadSecurityParams;
#endif

#ifndef __IAcadLayerStateManager_INTERFACE_DEFINED__
#define __IAcadLayerStateManager_INTERFACE_DEFINED__

/* interface IAcadLayerStateManager */
/* [unique][helpstringcontext][helpcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAcadLayerStateManager,0x4648C336,0x6A3B,0x4C87,0x93,0xF4,0x3F,0x2A,0xCD,0x65,0xE9,0x5E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4648C336-6A3B-4C87-93F4-3F2ACD65E95E")
    IAcadLayerStateManager : public IDispatch
    {
    public:
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE SetDatabase( 
            /* [in] */ IAcadDatabase *iHostDb) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Mask( 
            /* [in] */ BSTR bsName,
            /* [in] */ AcLayerStateMask eMask) = 0;
        
        virtual /* [helpstringcontext][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Mask( 
            /* [in] */ BSTR bsName,
            /* [retval][out] */ AcLayerStateMask *eMask) = 0;
        
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE Save( 
            /* [in] */ BSTR bsName,
            /* [in] */ AcLayerStateMask eMask) = 0;
        
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE Restore( 
            /* [in] */ BSTR bsName) = 0;
        
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ BSTR bsName) = 0;
        
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE Rename( 
            /* [in] */ BSTR bsName,
            /* [in] */ BSTR bsNewName) = 0;
        
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE Import( 
            /* [in] */ BSTR bsFilename) = 0;
        
        virtual /* [helpstringcontext][helpcontext] */ HRESULT STDMETHODCALLTYPE Export( 
            /* [in] */ BSTR bsName,
            /* [in] */ BSTR bsFilename) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAcadLayerStateManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAcadLayerStateManager * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAcadLayerStateManager * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAcadLayerStateManager * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAcadLayerStateManager * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAcadLayerStateManager * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAcadLayerStateManager * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAcadLayerStateManager * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *SetDatabase )( 
            IAcadLayerStateManager * This,
            /* [in] */ IAcadDatabase *iHostDb);
        
        /* [helpstringcontext][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Mask )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName,
            /* [in] */ AcLayerStateMask eMask);
        
        /* [helpstringcontext][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Mask )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName,
            /* [retval][out] */ AcLayerStateMask *eMask);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Save )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName,
            /* [in] */ AcLayerStateMask eMask);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Restore )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Rename )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName,
            /* [in] */ BSTR bsNewName);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Import )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsFilename);
        
        /* [helpstringcontext][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Export )( 
            IAcadLayerStateManager * This,
            /* [in] */ BSTR bsName,
            /* [in] */ BSTR bsFilename);
        
        END_INTERFACE
    } IAcadLayerStateManagerVtbl;

    interface IAcadLayerStateManager
    {
        CONST_VTBL struct IAcadLayerStateManagerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAcadLayerStateManager_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAcadLayerStateManager_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAcadLayerStateManager_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAcadLayerStateManager_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAcadLayerStateManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAcadLayerStateManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAcadLayerStateManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAcadLayerStateManager_SetDatabase(This,iHostDb)	\
    ( (This)->lpVtbl -> SetDatabase(This,iHostDb) ) 

#define IAcadLayerStateManager_put_Mask(This,bsName,eMask)	\
    ( (This)->lpVtbl -> put_Mask(This,bsName,eMask) ) 

#define IAcadLayerStateManager_get_Mask(This,bsName,eMask)	\
    ( (This)->lpVtbl -> get_Mask(This,bsName,eMask) ) 

#define IAcadLayerStateManager_Save(This,bsName,eMask)	\
    ( (This)->lpVtbl -> Save(This,bsName,eMask) ) 

#define IAcadLayerStateManager_Restore(This,bsName)	\
    ( (This)->lpVtbl -> Restore(This,bsName) ) 

#define IAcadLayerStateManager_Delete(This,bsName)	\
    ( (This)->lpVtbl -> Delete(This,bsName) ) 

#define IAcadLayerStateManager_Rename(This,bsName,bsNewName)	\
    ( (This)->lpVtbl -> Rename(This,bsName,bsNewName) ) 

#define IAcadLayerStateManager_Import(This,bsFilename)	\
    ( (This)->lpVtbl -> Import(This,bsFilename) ) 

#define IAcadLayerStateManager_Export(This,bsName,bsFilename)	\
    ( (This)->lpVtbl -> Export(This,bsName,bsFilename) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAcadLayerStateManager_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AcadLayerStateManager,0xC287AE4D,0xE7AC,0x49D0,0xAC,0x33,0x3E,0x76,0xB1,0x8F,0xAA,0x89);

#ifdef __cplusplus

class DECLSPEC_UUID("C287AE4D-E7AC-49D0-AC33-3E76B18FAA89")
AcadLayerStateManager;
#endif

#ifndef __IAxDbDocumentEvents_INTERFACE_DEFINED__
#define __IAxDbDocumentEvents_INTERFACE_DEFINED__

/* interface IAxDbDocumentEvents */
/* [oleautomation][unique][helpstringcontext][uuid][object] */ 


DEFINE_GUID(IID_IAxDbDocumentEvents,0xB7E8F26C,0xEFF1,0x4DC9,0xAA,0x3D,0x5A,0x17,0xA0,0xA0,0xF7,0xA4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B7E8F26C-EFF1-4DC9-AA3D-5A17A0A0F7A4")
    IAxDbDocumentEvents : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAxDbDocumentEventsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAxDbDocumentEvents * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAxDbDocumentEvents * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAxDbDocumentEvents * This);
        
        END_INTERFACE
    } IAxDbDocumentEventsVtbl;

    interface IAxDbDocumentEvents
    {
        CONST_VTBL struct IAxDbDocumentEventsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAxDbDocumentEvents_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAxDbDocumentEvents_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAxDbDocumentEvents_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAxDbDocumentEvents_INTERFACE_DEFINED__ */


#ifndef __IAxDbDocument_INTERFACE_DEFINED__
#define __IAxDbDocument_INTERFACE_DEFINED__

/* interface IAxDbDocument */
/* [unique][helpstringcontext][dual][uuid][object] */ 


DEFINE_GUID(IID_IAxDbDocument,0x13D9FE78,0x5155,0x483F,0x92,0x83,0xC9,0x41,0x03,0x4E,0x81,0x06);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("13D9FE78-5155-483F-9283-C941034E8106")
    IAxDbDocument : public IAcadDatabase
    {
    public:
        virtual /* [helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstringcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Open( 
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT Password) = 0;
        
        virtual /* [helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE Save( void) = 0;
        
        virtual /* [helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE SaveAs( 
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT vSecurityParams) = 0;
        
        virtual /* [helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE DxfIn( 
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT LogFileName) = 0;
        
        virtual /* [helpstringcontext][id] */ HRESULT STDMETHODCALLTYPE DxfOut( 
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT Precision,
            /* [optional][in] */ VARIANT SaveThumbnailImage) = 0;
        
        virtual /* [helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ LPDISPATCH *pAppObj) = 0;
        
        virtual /* [helpstringcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Database( 
            /* [retval][out] */ IAcadDatabase **pDatabase) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAxDbDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAxDbDocument * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAxDbDocument * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAxDbDocument * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAxDbDocument * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAxDbDocument * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAxDbDocument * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAxDbDocument * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ModelSpace )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadModelSpace **pMSpace);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PaperSpace )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadPaperSpace **pPSpace);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Blocks )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadBlocks **pBlocks);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CopyObjects )( 
            IAxDbDocument * This,
            /* [in] */ VARIANT Objects,
            /* [optional][in] */ VARIANT Owner,
            /* [optional][out][in] */ VARIANT *IdPairs,
            /* [retval][out] */ VARIANT *pNewObjects);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Groups )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadGroups **pGroups);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DimStyles )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadDimStyles **pDimStyles);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Layers )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadLayers **pLayers);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Linetypes )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadLineTypes **pLinetypes);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Dictionaries )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadDictionaries **pDictionaries);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RegisteredApplications )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadRegisteredApplications **pRegApps);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TextStyles )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadTextStyles **pTextStyles);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserCoordinateSystems )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadUCSs **pUCSs);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Views )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadViews **pViews);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Viewports )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadViewports **pViewports);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ElevationModelSpace )( 
            IAxDbDocument * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ElevationModelSpace )( 
            IAxDbDocument * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ElevationPaperSpace )( 
            IAxDbDocument * This,
            /* [retval][out] */ double *elevation);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ElevationPaperSpace )( 
            IAxDbDocument * This,
            /* [in] */ double elevation);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Limits )( 
            IAxDbDocument * This,
            /* [retval][out] */ VARIANT *limits);
        
        /* [helpstringcontext][helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Limits )( 
            IAxDbDocument * This,
            /* [in] */ VARIANT limits);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *HandleToObject )( 
            IAxDbDocument * This,
            /* [in] */ BSTR Handle,
            /* [retval][out] */ IDispatch **pObj);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ObjectIdToObject )( 
            IAxDbDocument * This,
            /* [in] */ LONG_PTR ObjectID,
            /* [retval][out] */ IDispatch **pObj);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Layouts )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadLayouts **pLayouts);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PlotConfigurations )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadPlotConfigurations **pPlotConfigs);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Preferences )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadDatabasePreferences **pPref);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FileDependencies )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadFileDependencies **pFDM);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SummaryInfo )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadSummaryInfo **pSummaryInfo);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SectionManager )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadSectionManager **pSecMgr);
        
        /* [helpstringcontext][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Materials )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadMaterials **pMaterials);
        
        /* [helpstringcontext][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *ObjectIdToObject32 )( 
            IAxDbDocument * This,
            /* [in] */ LONG ObjectID,
            /* [retval][out] */ IDispatch **pObj);
        
        /* [helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAxDbDocument * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstringcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IAxDbDocument * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Open )( 
            IAxDbDocument * This,
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT Password);
        
        /* [helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Save )( 
            IAxDbDocument * This);
        
        /* [helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *SaveAs )( 
            IAxDbDocument * This,
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT vSecurityParams);
        
        /* [helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DxfIn )( 
            IAxDbDocument * This,
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT LogFileName);
        
        /* [helpstringcontext][id] */ HRESULT ( STDMETHODCALLTYPE *DxfOut )( 
            IAxDbDocument * This,
            /* [in] */ BSTR FileName,
            /* [optional][in] */ VARIANT Precision,
            /* [optional][in] */ VARIANT SaveThumbnailImage);
        
        /* [helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Application )( 
            IAxDbDocument * This,
            /* [retval][out] */ LPDISPATCH *pAppObj);
        
        /* [helpstringcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Database )( 
            IAxDbDocument * This,
            /* [retval][out] */ IAcadDatabase **pDatabase);
        
        END_INTERFACE
    } IAxDbDocumentVtbl;

    interface IAxDbDocument
    {
        CONST_VTBL struct IAxDbDocumentVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAxDbDocument_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IAxDbDocument_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IAxDbDocument_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IAxDbDocument_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IAxDbDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IAxDbDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IAxDbDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IAxDbDocument_get_ModelSpace(This,pMSpace)	\
    ( (This)->lpVtbl -> get_ModelSpace(This,pMSpace) ) 

#define IAxDbDocument_get_PaperSpace(This,pPSpace)	\
    ( (This)->lpVtbl -> get_PaperSpace(This,pPSpace) ) 

#define IAxDbDocument_get_Blocks(This,pBlocks)	\
    ( (This)->lpVtbl -> get_Blocks(This,pBlocks) ) 

#define IAxDbDocument_CopyObjects(This,Objects,Owner,IdPairs,pNewObjects)	\
    ( (This)->lpVtbl -> CopyObjects(This,Objects,Owner,IdPairs,pNewObjects) ) 

#define IAxDbDocument_get_Groups(This,pGroups)	\
    ( (This)->lpVtbl -> get_Groups(This,pGroups) ) 

#define IAxDbDocument_get_DimStyles(This,pDimStyles)	\
    ( (This)->lpVtbl -> get_DimStyles(This,pDimStyles) ) 

#define IAxDbDocument_get_Layers(This,pLayers)	\
    ( (This)->lpVtbl -> get_Layers(This,pLayers) ) 

#define IAxDbDocument_get_Linetypes(This,pLinetypes)	\
    ( (This)->lpVtbl -> get_Linetypes(This,pLinetypes) ) 

#define IAxDbDocument_get_Dictionaries(This,pDictionaries)	\
    ( (This)->lpVtbl -> get_Dictionaries(This,pDictionaries) ) 

#define IAxDbDocument_get_RegisteredApplications(This,pRegApps)	\
    ( (This)->lpVtbl -> get_RegisteredApplications(This,pRegApps) ) 

#define IAxDbDocument_get_TextStyles(This,pTextStyles)	\
    ( (This)->lpVtbl -> get_TextStyles(This,pTextStyles) ) 

#define IAxDbDocument_get_UserCoordinateSystems(This,pUCSs)	\
    ( (This)->lpVtbl -> get_UserCoordinateSystems(This,pUCSs) ) 

#define IAxDbDocument_get_Views(This,pViews)	\
    ( (This)->lpVtbl -> get_Views(This,pViews) ) 

#define IAxDbDocument_get_Viewports(This,pViewports)	\
    ( (This)->lpVtbl -> get_Viewports(This,pViewports) ) 

#define IAxDbDocument_get_ElevationModelSpace(This,elevation)	\
    ( (This)->lpVtbl -> get_ElevationModelSpace(This,elevation) ) 

#define IAxDbDocument_put_ElevationModelSpace(This,elevation)	\
    ( (This)->lpVtbl -> put_ElevationModelSpace(This,elevation) ) 

#define IAxDbDocument_get_ElevationPaperSpace(This,elevation)	\
    ( (This)->lpVtbl -> get_ElevationPaperSpace(This,elevation) ) 

#define IAxDbDocument_put_ElevationPaperSpace(This,elevation)	\
    ( (This)->lpVtbl -> put_ElevationPaperSpace(This,elevation) ) 

#define IAxDbDocument_get_Limits(This,limits)	\
    ( (This)->lpVtbl -> get_Limits(This,limits) ) 

#define IAxDbDocument_put_Limits(This,limits)	\
    ( (This)->lpVtbl -> put_Limits(This,limits) ) 

#define IAxDbDocument_HandleToObject(This,Handle,pObj)	\
    ( (This)->lpVtbl -> HandleToObject(This,Handle,pObj) ) 

#define IAxDbDocument_ObjectIdToObject(This,ObjectID,pObj)	\
    ( (This)->lpVtbl -> ObjectIdToObject(This,ObjectID,pObj) ) 

#define IAxDbDocument_get_Layouts(This,pLayouts)	\
    ( (This)->lpVtbl -> get_Layouts(This,pLayouts) ) 

#define IAxDbDocument_get_PlotConfigurations(This,pPlotConfigs)	\
    ( (This)->lpVtbl -> get_PlotConfigurations(This,pPlotConfigs) ) 

#define IAxDbDocument_get_Preferences(This,pPref)	\
    ( (This)->lpVtbl -> get_Preferences(This,pPref) ) 

#define IAxDbDocument_get_FileDependencies(This,pFDM)	\
    ( (This)->lpVtbl -> get_FileDependencies(This,pFDM) ) 

#define IAxDbDocument_get_SummaryInfo(This,pSummaryInfo)	\
    ( (This)->lpVtbl -> get_SummaryInfo(This,pSummaryInfo) ) 

#define IAxDbDocument_get_SectionManager(This,pSecMgr)	\
    ( (This)->lpVtbl -> get_SectionManager(This,pSecMgr) ) 

#define IAxDbDocument_get_Materials(This,pMaterials)	\
    ( (This)->lpVtbl -> get_Materials(This,pMaterials) ) 

#define IAxDbDocument_ObjectIdToObject32(This,ObjectID,pObj)	\
    ( (This)->lpVtbl -> ObjectIdToObject32(This,ObjectID,pObj) ) 


#define IAxDbDocument_get_Name(This,pVal)	\
    ( (This)->lpVtbl -> get_Name(This,pVal) ) 

#define IAxDbDocument_put_Name(This,newVal)	\
    ( (This)->lpVtbl -> put_Name(This,newVal) ) 

#define IAxDbDocument_Open(This,FileName,Password)	\
    ( (This)->lpVtbl -> Open(This,FileName,Password) ) 

#define IAxDbDocument_Save(This)	\
    ( (This)->lpVtbl -> Save(This) ) 

#define IAxDbDocument_SaveAs(This,FileName,vSecurityParams)	\
    ( (This)->lpVtbl -> SaveAs(This,FileName,vSecurityParams) ) 

#define IAxDbDocument_DxfIn(This,FileName,LogFileName)	\
    ( (This)->lpVtbl -> DxfIn(This,FileName,LogFileName) ) 

#define IAxDbDocument_DxfOut(This,FileName,Precision,SaveThumbnailImage)	\
    ( (This)->lpVtbl -> DxfOut(This,FileName,Precision,SaveThumbnailImage) ) 

#define IAxDbDocument_get_Application(This,pAppObj)	\
    ( (This)->lpVtbl -> get_Application(This,pAppObj) ) 

#define IAxDbDocument_get_Database(This,pDatabase)	\
    ( (This)->lpVtbl -> get_Database(This,pDatabase) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAxDbDocument_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_AxDbDocument,0xEBF0F8FD,0x632A,0x4AB8,0x8D,0x71,0xE7,0x72,0x17,0x89,0x87,0x47);

#ifdef __cplusplus

class DECLSPEC_UUID("EBF0F8FD-632A-4AB8-8D71-E77217898747")
AxDbDocument;
#endif
#endif /* __AXDBLib_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


